Moritz Kroll [Thu, 2 Apr 2009 20:53:59 +0000 (20:53 +0000)]
Renamed attr.divmod.res_mode to attr.divmod.resmode
[r25767]
Moritz Kroll [Thu, 2 Apr 2009 17:24:33 +0000 (17:24 +0000)]
Renamed attr.cast.totype to attr.cast.type. Added Cast node to ir_spec.py
[r25766]
Moritz Kroll [Thu, 2 Apr 2009 16:03:27 +0000 (16:03 +0000)]
Updated VC2005 project. Sorted ir_spec.py entries
[r25765]
Michael Beck [Thu, 2 Apr 2009 14:56:36 +0000 (14:56 +0000)]
- BugFix: do not crash when dumping all-types graph with new style initializers
- new style initializers are not yet dumped ...
[r25764]
Moritz Kroll [Wed, 1 Apr 2009 16:43:24 +0000 (16:43 +0000)]
Use setdefault in several cases to simplify code
[r25763]
Moritz Kroll [Wed, 1 Apr 2009 15:12:32 +0000 (15:12 +0000)]
Prepare for 'production'
[r25761]
Moritz Kroll [Wed, 1 Apr 2009 14:58:27 +0000 (14:58 +0000)]
gen_ir.py:
- Also generate new_<nodename> functions
- Fixed new_d_Block
ir_cons.c
- Switched to gen_ir.py
[r25759]
Michael Beck [Wed, 1 Apr 2009 00:31:07 +0000 (00:31 +0000)]
- use regparam for private functions, instead of fastcall
[r25757]
Michael Beck [Tue, 31 Mar 2009 22:59:32 +0000 (22:59 +0000)]
- reserve used resources
- remove double analysis info drop (dominance might be still ok!)
[r25756]
Matthias Braun [Tue, 31 Mar 2009 01:19:39 +0000 (01:19 +0000)]
remove pointless sc_argument class, cleanup
[r25755]
Michael Beck [Mon, 30 Mar 2009 16:31:57 +0000 (16:31 +0000)]
- BugFix: arguments AND globals are not automatically alias free
- add aa_opt_no_alias_args and aa_opt_no_alias_args_global flags
[r25754]
Moritz Kroll [Mon, 30 Mar 2009 11:13:30 +0000 (11:13 +0000)]
Started Python implementation of gen_ir.pl
[r25753]
Moritz Kroll [Mon, 30 Mar 2009 10:06:45 +0000 (10:06 +0000)]
Fixed obviously unused InstOf constructor
[r25751]
Moritz Kroll [Mon, 30 Mar 2009 10:05:01 +0000 (10:05 +0000)]
Renamed attr.load.load_mode to attr.load.mode
[r25750]
Moritz Kroll [Mon, 30 Mar 2009 08:29:28 +0000 (08:29 +0000)]
Renamed attr.sel.ent to attr.sel.entity
[r25749]
Moritz Kroll [Mon, 30 Mar 2009 08:16:21 +0000 (08:16 +0000)]
Some minor changes
[r25748]
Michael Beck [Sat, 21 Mar 2009 15:10:28 +0000 (15:10 +0000)]
- BugFix: wrong end index fixed
- BugFix: cache the newly created memop, not the old one
- BugFix: must search for the Phi-translated load in the predecessors avail set
- BugFix: size of bitset is now equal to the address size (was it before too :-)
[r25720]
Michael Beck [Sat, 21 Mar 2009 11:46:34 +0000 (11:46 +0000)]
- register ALL possible addresses yet
- phi-translate the antic sets
[r25719]
Michael Beck [Sat, 21 Mar 2009 10:36:45 +0000 (10:36 +0000)]
- get_Block_cfgpred_arr() IS supported, but should not be in the official
interface
- get_Block_cfgpred_pos() added and used
- more doxygen docu
[r25718]
Michael Beck [Fri, 20 Mar 2009 13:00:49 +0000 (13:00 +0000)]
- added Phi-translation for addresses
- update addesses of nodes due to Lod replacements
- remove unused (and wrong) code
- BugFix: used right condition to stop search of partly redundand Loads
- use Phi-translated addresses for cleanup check
- BugFix: correctly link in newly created memops into the memop chain of the previous blocks
- BugFix: always update the value map
[r25714]
Michael Beck [Fri, 20 Mar 2009 11:16:00 +0000 (11:16 +0000)]
- let %+F print entities of SymConst and Sel instructions
[r25713]
Michael Beck [Thu, 19 Mar 2009 16:23:06 +0000 (16:23 +0000)]
- simplified memop flags: we NEVER must kill solely Loads or Stores
- remove block flags for now, use block marks for marking blocks
- BugFix: fix analysis for IGNORE Stores
- BugFix: fixed creation of partly reduntant Loads: must be done BEFORE gen/kill
- removed now unused code
- kill unreachable blocks before analysis helps greatly and is simple, as we have
to collect these data anyway
[r25703]
Michael Beck [Thu, 19 Mar 2009 14:00:05 +0000 (14:00 +0000)]
- add rbitset_set_all()
[r25702]
Michael Beck [Wed, 18 Mar 2009 14:09:26 +0000 (14:09 +0000)]
fixed comment
[r25701]
Michael Beck [Tue, 17 Mar 2009 15:44:17 +0000 (15:44 +0000)]
- BugFix: the end block might be unreachable, check this first
[r25700]
Michael Beck [Tue, 17 Mar 2009 15:37:07 +0000 (15:37 +0000)]
- BugFix: use env.rbs_size everywhere
[r25699]
Michael Beck [Tue, 17 Mar 2009 15:32:37 +0000 (15:32 +0000)]
- BugFix: initialize blocks using teh normal block walker, as unreachable blocks might
exist
[r25698]
Michael Beck [Fri, 13 Mar 2009 15:40:41 +0000 (15:40 +0000)]
- BugFix: initialize memop->mem
- BugFix: correctly handle different modes when creating a Phi (CopyB lowerer always uses unsigned modes :-()
- Handle loads from constant entities
[r25675]
Michael Beck [Tue, 10 Mar 2009 15:12:18 +0000 (15:12 +0000)]
- BugFix: new Loads might be removed later, but we have no out info for them:
use local out edges (like old implementation)
- BugFix: always build Phi nodes on merge points: the lazy techniques did not
work that simple ...
- in rare cases Loads and Stores might have NO memory
[r25663]
Michael Beck [Tue, 10 Mar 2009 15:00:37 +0000 (15:00 +0000)]
- Do not produce Loads WITHOUT memory
[r25662]
Michael Beck [Tue, 10 Mar 2009 10:01:19 +0000 (10:01 +0000)]
New still buggy version:
- only calculate avail_out for the blocks in first step (like GVN-PRE)
- correctly update avail_out during load_insert
- do NOT WAW same stores
[r25660]
Matthias Braun [Tue, 10 Mar 2009 01:31:11 +0000 (01:31 +0000)]
PIC fixes for global vars
[r25655]
Moritz Kroll [Mon, 9 Mar 2009 20:39:12 +0000 (20:39 +0000)]
Updated Makefile.am
[r25653]
Michael Beck [Mon, 9 Mar 2009 15:13:26 +0000 (15:13 +0000)]
- C99 feature removed
[r25647]
Michael Beck [Mon, 9 Mar 2009 14:54:35 +0000 (14:54 +0000)]
- C99 feature removed
[r25646]
Michael Beck [Mon, 9 Mar 2009 14:07:53 +0000 (14:07 +0000)]
- deleted old (and imcomplete) implementation: the code is covered by the normal SR
and the now (yet incomplete) LD/ST optimization
[r25645]
Matthias Braun [Mon, 9 Mar 2009 02:04:11 +0000 (02:04 +0000)]
new register allocator
[r25643]
Matthias Braun [Sun, 8 Mar 2009 17:09:41 +0000 (17:09 +0000)]
fix
[r25641]
Matthias Braun [Sun, 8 Mar 2009 17:09:11 +0000 (17:09 +0000)]
analysis of address_tkane for union types is not that easy - be conservative
[r25640]
Moritz Kroll [Tue, 3 Mar 2009 00:54:27 +0000 (00:54 +0000)]
- walk_const_code now walks all segments, not just global.
- Renamed type_walk_plus_frames to type_walk_prog.
- irio: Added support for the other segments
[r25598]
Moritz Kroll [Mon, 2 Mar 2009 23:53:51 +0000 (23:53 +0000)]
Fix .ctors and .dtors section declaration in MinGW mode
[r25596]
Moritz Kroll [Mon, 2 Mar 2009 20:56:48 +0000 (20:56 +0000)]
Fixed Makefile.am due to r25581
[r25595]
Moritz Kroll [Mon, 2 Mar 2009 16:05:56 +0000 (16:05 +0000)]
- Fixed masking of upper nibble of bitfield constants for tarval string output.
- Report an error if reading a tarval string with unappropriate characters
for the base indicated by the base prefix
- Use "0x" prefix, when writing irms_int_number native (hex) values.
[r25594]
Moritz Kroll [Mon, 2 Mar 2009 14:34:58 +0000 (14:34 +0000)]
irio: Added support for DivRL
[r25593]
Moritz Kroll [Mon, 2 Mar 2009 14:33:44 +0000 (14:33 +0000)]
Renamed is_Div_remainderless to get_Div_no_remainder
[r25592]
Moritz Kroll [Mon, 2 Mar 2009 14:15:21 +0000 (14:15 +0000)]
irio: Readded support for strictConv
[r25591]
Matthias Braun [Mon, 2 Mar 2009 11:51:07 +0000 (11:51 +0000)]
add missing non-inline implementation of get/set_entity_alignment
[r25590]
Matthias Braun [Mon, 2 Mar 2009 11:29:31 +0000 (11:29 +0000)]
add alignment to entities
[r25588]
Matthias Braun [Mon, 2 Mar 2009 11:28:11 +0000 (11:28 +0000)]
partially revert alignment changes, ELF/GAS seem to take alignment in bytes, MACHO in log2
[r25587]
Moritz Kroll [Mon, 2 Mar 2009 00:34:34 +0000 (00:34 +0000)]
Reverted changes from 25529
[r25585]
Matthias Braun [Mon, 2 Mar 2009 00:16:45 +0000 (00:16 +0000)]
fix some cases of PIC emitting
[r25583]
Matthias Braun [Mon, 2 Mar 2009 00:14:50 +0000 (00:14 +0000)]
fix alignment for .comm variables
[r25582]
Matthias Braun [Mon, 2 Mar 2009 00:13:43 +0000 (00:13 +0000)]
remove old files
[r25581]
Matthias Braun [Mon, 2 Mar 2009 00:13:11 +0000 (00:13 +0000)]
use DB instead of DBG
[r25580]
Matthias Braun [Mon, 2 Mar 2009 00:12:32 +0000 (00:12 +0000)]
simplify hungarian interface
[r25579]
Matthias Braun [Sat, 28 Feb 2009 02:15:10 +0000 (02:15 +0000)]
fix some warnings
[r25578]
Michael Beck [Fri, 27 Feb 2009 13:51:37 +0000 (13:51 +0000)]
- renamed Resource.h into resource.h
[r25574]
Michael Beck [Fri, 27 Feb 2009 13:49:36 +0000 (13:49 +0000)]
- BugFix: value_param_tp must always exist
[r25573]
Michael Beck [Fri, 27 Feb 2009 12:55:06 +0000 (12:55 +0000)]
- IR nodes now have node numbers in RELEASE mode, this fixes problems in backend
and seems generally to be a good idea
[r25572]
Michael Beck [Fri, 27 Feb 2009 12:53:04 +0000 (12:53 +0000)]
- fixed warnings
- reformatted to "firm" style
[r25571]
Michael Beck [Fri, 27 Feb 2009 12:29:36 +0000 (12:29 +0000)]
- add doxygen comment
[r25570]
Michael Beck [Fri, 27 Feb 2009 12:28:11 +0000 (12:28 +0000)]
- fixed comments
[r25569]
Christoph Mallon [Sun, 22 Feb 2009 12:18:55 +0000 (12:18 +0000)]
LINTify: s/fall through/FALLTHROUGH/.
[r25557]
Christoph Mallon [Sun, 22 Feb 2009 12:18:26 +0000 (12:18 +0000)]
Ask env where python is.
[r25556]
Christoph Mallon [Sun, 22 Feb 2009 12:16:42 +0000 (12:16 +0000)]
When sorting calls enforce a total order, because qsort() needs one.
Revoke PhD from: shack
Revoke diploma from: chriswue
[r25555]
Moritz Kroll [Sat, 21 Feb 2009 22:21:40 +0000 (22:21 +0000)]
Make Visual Studio happy
[r25554]
Moritz Kroll [Sat, 21 Feb 2009 21:38:17 +0000 (21:38 +0000)]
irio: Ex/Import non-internal modes
[r25553]
Moritz Kroll [Sat, 21 Feb 2009 21:35:55 +0000 (21:35 +0000)]
typo
[r25552]
Michael Beck [Sat, 21 Feb 2009 20:10:58 +0000 (20:10 +0000)]
- BugFix: the block of a Confirm can (and is in most cases) different of the block of its value
[r25551]
Michael Beck [Sat, 21 Feb 2009 19:56:55 +0000 (19:56 +0000)]
updated for rename
[r25550]
Moritz Kroll [Sat, 21 Feb 2009 18:53:03 +0000 (18:53 +0000)]
irio: Save all attributes of Cond
[r25548]
Moritz Kroll [Sat, 21 Feb 2009 18:50:43 +0000 (18:50 +0000)]
Renamed get_Cond_defaultProj() to get_Cond_default_proj() for consistency. Added set_Cond_default_proj() and get_cond_kind_name(). Made get_cond_jmp_predicate_name() consistent with other enum name functions.
[r25545]
Moritz Kroll [Sat, 21 Feb 2009 18:07:53 +0000 (18:07 +0000)]
Name cond.pred attribute consistent to getter/setters (-> cond.jmp_pred)
[r25544]
Moritz Kroll [Sat, 21 Feb 2009 16:32:12 +0000 (16:32 +0000)]
irio: Map id of body block of const irg to new const irg
[r25543]
Moritz Kroll [Sat, 21 Feb 2009 15:53:20 +0000 (15:53 +0000)]
irio: Improved dump order to allow self-referencing structs
[r25542]
Moritz Kroll [Sat, 21 Feb 2009 15:22:44 +0000 (15:22 +0000)]
irio: Save method variadicity
[r25541]
Moritz Kroll [Sat, 21 Feb 2009 15:22:15 +0000 (15:22 +0000)]
Fixed set_method_value_param_type()
[r25540]
Moritz Kroll [Sat, 21 Feb 2009 14:49:38 +0000 (14:49 +0000)]
irio: Fixed handling of frame types and value types
[r25539]
Moritz Kroll [Fri, 20 Feb 2009 21:55:51 +0000 (21:55 +0000)]
irio: Added union support. Save calling_convention and additional_properties attributes of methods
[r25538]
Moritz Kroll [Fri, 20 Feb 2009 20:30:20 +0000 (20:30 +0000)]
irio: Fixed symbols with same string but different type tag
[r25537]
Moritz Kroll [Fri, 20 Feb 2009 20:20:31 +0000 (20:20 +0000)]
Fixed new_tarval_from_str() for boolean and reference modes (it hurts!!!)
[r25536]
Moritz Kroll [Thu, 19 Feb 2009 14:23:47 +0000 (14:23 +0000)]
Added strict_flag to new_r/rd_Conv(). Fixed strict Convs for irio.
[r25529]
Moritz Kroll [Thu, 19 Feb 2009 14:22:33 +0000 (14:22 +0000)]
Fixed reading infinity floats from strings
[r25528]
Moritz Kroll [Wed, 18 Feb 2009 22:18:31 +0000 (22:18 +0000)]
irio: Added CopyB support
[r25526]
Moritz Kroll [Wed, 18 Feb 2009 22:00:28 +0000 (22:00 +0000)]
irio: Fixed wrong line numbers
[r25525]
Moritz Kroll [Wed, 18 Feb 2009 21:24:27 +0000 (21:24 +0000)]
irio: Added support for Builtin nodes
[r25524]
Matthias Braun [Wed, 18 Feb 2009 16:05:13 +0000 (16:05 +0000)]
small changes to make unionfind a tiny bit more efficient and easier to use
[r25523]
Moritz Kroll [Wed, 18 Feb 2009 01:00:12 +0000 (01:00 +0000)]
irio: Fixed importing entities with atomic values
[r25522]
Moritz Kroll [Wed, 18 Feb 2009 00:58:29 +0000 (00:58 +0000)]
irio: Added support for Quot and Mod nodes
[r25521]
Moritz Kroll [Wed, 18 Feb 2009 00:26:48 +0000 (00:26 +0000)]
irio: Also dump the frame types of irgs
[r25520]
Moritz Kroll [Wed, 18 Feb 2009 00:04:05 +0000 (00:04 +0000)]
irio: Implemented importing entity initializers
[r25519]
Moritz Kroll [Tue, 17 Feb 2009 22:59:46 +0000 (22:59 +0000)]
irio: Started adding support for entity initializers
[r25518]
Moritz Kroll [Tue, 17 Feb 2009 22:33:29 +0000 (22:33 +0000)]
Added has_entity_initializer() and get_initializer_kind_name()
[r25517]
Sebastian Buchwald [Wed, 11 Feb 2009 13:47:03 +0000 (13:47 +0000)]
PBQP transformer doesn't support Mux nodes with constant values (see r25205).
[r25479]
Moritz Kroll [Wed, 11 Feb 2009 00:19:39 +0000 (00:19 +0000)]
irio: Fixed ir_cons_flags import for Load and Store. Added support for Div and DivMod
[r25473]
Michael Beck [Tue, 10 Feb 2009 23:58:05 +0000 (23:58 +0000)]
- ensure that the end block is always last/first
- find_definition() can fail if memory is accessed using different modes
[r25472]
Michael Beck [Tue, 10 Feb 2009 17:23:07 +0000 (17:23 +0000)]
- skip Confirm and Cast for address calculation
- skip keep-alive edges
- fixed: do not insert of fully redundand loads (already handled earlier)
- partly fixed: End block is not reached using out-edges ...
[r25465]
Michael Beck [Tue, 10 Feb 2009 13:30:18 +0000 (13:30 +0000)]
- BugFixes: WAW can inly be done immediately if both stores
are in the same block
- find_definition() must check real dominance for values, not only for blocks
[r25464]
Moritz Kroll [Fri, 6 Feb 2009 00:43:50 +0000 (00:43 +0000)]
- Added ir_export which is supposed to export the whole irp
- Implemented exporting entity initializers
- get_compound_ent_value now also uses skip_Id... currently this is needed,
because of the way entity initializers are imported using Dummy nodes
- Fixed import of End node
- Added import/export support for pointer types
[r25440]
Michael Beck [Thu, 5 Feb 2009 15:50:34 +0000 (15:50 +0000)]
- don't call it Schn... it's a symbol table
- place some panic()'s instead of assert(0)
[r25439]