FIRM Projekt Account [Fri, 24 Mar 2006 09:37:11 +0000 (09:37 +0000)]
Fixed include directory
[r7520]
Michael Beck [Thu, 23 Mar 2006 13:02:04 +0000 (13:02 +0000)]
docu updated
[r7513]
Michael Beck [Thu, 23 Mar 2006 12:58:06 +0000 (12:58 +0000)]
Color Mux and Psi nodes gold
[r7512]
Michael Beck [Thu, 23 Mar 2006 12:56:51 +0000 (12:56 +0000)]
BugFix:
- use CopyB proj
- do NOT remove memory edges of Div/Mod/DivMod nodes that are proved
not to trow an exception (but only by a Confirm), so the memory
edge is still a dependency
- add templates for Psi nodes
[r7511]
Michael Beck [Thu, 23 Mar 2006 12:36:51 +0000 (12:36 +0000)]
get_Psi_n_conds() added
[r7510]
Michael Beck [Thu, 23 Mar 2006 12:19:22 +0000 (12:19 +0000)]
Added support for Psi nodes
[r7509]
Michael Beck [Thu, 23 Mar 2006 12:18:40 +0000 (12:18 +0000)]
Added constructors for Psi nodes
[r7508]
Michael Beck [Thu, 23 Mar 2006 12:17:52 +0000 (12:17 +0000)]
Psi op added
[r7507]
Michael Beck [Wed, 22 Mar 2006 16:53:49 +0000 (16:53 +0000)]
normalize_one_return() now did not create Bad control flow predecessors
[r7505]
Sebastian Hack [Wed, 22 Mar 2006 14:20:12 +0000 (14:20 +0000)]
Fixed a bug
[r7503]
Michael Beck [Wed, 22 Mar 2006 13:35:05 +0000 (13:35 +0000)]
The ir_op's are stored inside the irp, so don't kill the irp()
before all ir_op's
[r7502]
Christoph Mallon [Wed, 22 Mar 2006 13:12:08 +0000 (13:12 +0000)]
Bugged a fix
[r7501]
Michael Beck [Wed, 22 Mar 2006 10:13:33 +0000 (10:13 +0000)]
BugFix: used tp instead of frame_type
[r7500]
Michael Beck [Wed, 22 Mar 2006 10:04:50 +0000 (10:04 +0000)]
frame_alloc_area() added
[r7499]
Christian Würdig [Mon, 20 Mar 2006 16:58:50 +0000 (16:58 +0000)]
removed c99 style
[r7496]
Michael Beck [Mon, 20 Mar 2006 16:45:45 +0000 (16:45 +0000)]
ExtBlk walker now always visits start block first/last
[r7495]
Michael Beck [Mon, 20 Mar 2006 16:36:39 +0000 (16:36 +0000)]
BugFix: set_irn_n() should now work for the block input (-1)
[r7494]
Michael Beck [Mon, 20 Mar 2006 13:36:51 +0000 (13:36 +0000)]
removed flag from remove_critical_cf_edges()
invalidate extended block info if control flow has changed
[r7491]
Michael Beck [Mon, 20 Mar 2006 13:35:01 +0000 (13:35 +0000)]
removed critical_edges flag. Other code depends on remove_critical_edges() doing always it's work.
[r7490]
Michael Beck [Mon, 20 Mar 2006 13:33:31 +0000 (13:33 +0000)]
added some missing changed flags
invalidate extended block info and dominance info if exceptions have changed
[r7489]
Michael Beck [Mon, 20 Mar 2006 13:31:35 +0000 (13:31 +0000)]
invalidate extended block info
removed useless if
[r7488]
Michael Beck [Mon, 20 Mar 2006 13:30:56 +0000 (13:30 +0000)]
invalidate extended block info
[r7487]
Michael Beck [Mon, 20 Mar 2006 13:30:08 +0000 (13:30 +0000)]
invalidate extended block info after tail recursion optimization
[r7486]
Michael Beck [Mon, 20 Mar 2006 07:17:53 +0000 (07:17 +0000)]
get_irg_extblk_state() and set_irg_extblk_inconsistant() added
[r7485]
Michael Beck [Mon, 20 Mar 2006 07:16:37 +0000 (07:16 +0000)]
Fixed extblock dumper (did not work outside debugger Bug)
[r7484]
Michael Beck [Mon, 20 Mar 2006 07:13:29 +0000 (07:13 +0000)]
add code to dump extended basic blocks
[r7483]
Michael Beck [Mon, 20 Mar 2006 07:12:30 +0000 (07:12 +0000)]
Fixed irg_extblock_walk_graph()
[r7482]
Michael Beck [Mon, 20 Mar 2006 07:11:04 +0000 (07:11 +0000)]
get_irg_extblk_state() and set_irg_extblk_inconsistant() added
[r7481]
Michael Beck [Mon, 20 Mar 2006 00:43:27 +0000 (00:43 +0000)]
is_singlebit_tarval() added, needed for Cmp optimization
[r7480]
Michael Beck [Mon, 20 Mar 2006 00:41:41 +0000 (00:41 +0000)]
is_ir_extbb() added
extended basic block now contains no internal jump (as expected) and is equivalent to TriMedia tree
extblk walker fixed
[r7479]
Michael Beck [Mon, 20 Mar 2006 00:40:00 +0000 (00:40 +0000)]
is_ir_extbb() added
[r7478]
Michael Beck [Mon, 20 Mar 2006 00:38:32 +0000 (00:38 +0000)]
cosmetic fixes
[r7477]
Michael Beck [Mon, 20 Mar 2006 00:37:14 +0000 (00:37 +0000)]
the extended blocks now uses the block visited flag, so increase this for marking
[r7476]
Michael Beck [Sun, 19 Mar 2006 11:57:50 +0000 (11:57 +0000)]
remove dependency of irnode.h
[r7475]
Michael Beck [Sun, 19 Mar 2006 11:56:56 +0000 (11:56 +0000)]
Add optmitizations for the following cases:
And(x, C) == C ==> And(x, C) != 0
And(x, C) != C ==> And(X, C) == 0
This helps the ia32 backend to create test instructions and might be useful for other backends
as well
[r7474]
Michael Beck [Sat, 18 Mar 2006 21:27:01 +0000 (21:27 +0000)]
Fixed extbb construction (why it was damaged ?)
Add walker for extbb's
[r7473]
Michael Beck [Sat, 18 Mar 2006 12:13:52 +0000 (12:13 +0000)]
added computed_value for Carry and Borrow
added equivalent_node_Syn()
[r7472]
Michael Beck [Sat, 18 Mar 2006 12:12:12 +0000 (12:12 +0000)]
added Carry and Borrow opcodes
[r7471]
Michael Beck [Sat, 18 Mar 2006 12:10:48 +0000 (12:10 +0000)]
added constructors for Carry and Borrow nodes, use macros to shorten the implementation
[r7470]
Michael Beck [Sat, 18 Mar 2006 12:06:15 +0000 (12:06 +0000)]
DBG_OPT_SYNC added
[r7469]
Michael Beck [Sat, 18 Mar 2006 12:05:11 +0000 (12:05 +0000)]
HOOK_OPT_SYNC added
[r7468]
Michael Beck [Sat, 18 Mar 2006 12:03:03 +0000 (12:03 +0000)]
tarval_init_1() expects now the null_value. Bad things might happen if this is not 0l yet, so we did not allow
it to be changed for the moment ...
[r7467]
Michael Beck [Sat, 18 Mar 2006 12:01:59 +0000 (12:01 +0000)]
tarval_P_void is removed now, map old functions and values
[r7466]
Michael Beck [Sat, 18 Mar 2006 12:01:12 +0000 (12:01 +0000)]
removed tarval_P_void, every reference mode now has it's own NULL tarval
which is created from the null_value given at initialization.
This also solves the problem the new_tarval_from_str() and new_tarval_from_long() returned different
tarvals for the same values.
Reference modes are handled like integer modes, however, convert is only supported for NULL pointer (which might be wrong if null_value != 0)
[r7465]
Michael Beck [Fri, 17 Mar 2006 13:36:19 +0000 (13:36 +0000)]
handle a call of an absolute address
[r7464]
Sebastian Hack [Fri, 17 Mar 2006 10:44:49 +0000 (10:44 +0000)]
Fixed a subtle bug
[r7462]
Michael Beck [Wed, 15 Mar 2006 18:29:51 +0000 (18:29 +0000)]
added some macros for easier decoding of ptr_access
[r7461]
Michael Beck [Wed, 15 Mar 2006 17:34:08 +0000 (17:34 +0000)]
Improved doxygen docu
fixed memory leak
removed useless transport of Call links
[r7459]
Michael Beck [Wed, 15 Mar 2006 17:32:25 +0000 (17:32 +0000)]
Improved doxygen documentation.
Added a default value.
[r7458]
FIRM Projekt Account [Wed, 15 Mar 2006 16:44:51 +0000 (16:44 +0000)]
ir/lower include dir added
[r7456]
Rubino Geiß [Wed, 15 Mar 2006 13:49:40 +0000 (13:49 +0000)]
fixed const mismatch
[r7454]
Michael Beck [Wed, 15 Mar 2006 13:31:39 +0000 (13:31 +0000)]
added missing const
[r7452]
Michael Beck [Wed, 15 Mar 2006 12:55:47 +0000 (12:55 +0000)]
opt_frame.h added
[r7449]
Michael Beck [Wed, 15 Mar 2006 12:53:46 +0000 (12:53 +0000)]
opt_frame.[ch] added
[r7448]
Sebastian Hack [Wed, 15 Mar 2006 12:50:17 +0000 (12:50 +0000)]
Moved survive dce stuff here.
[r7447]
Sebastian Hack [Wed, 15 Mar 2006 12:49:57 +0000 (12:49 +0000)]
Moved the survive dce stuff to irgopt.[ch]
[r7446]
Michael Beck [Wed, 15 Mar 2006 12:23:39 +0000 (12:23 +0000)]
removed dependency of irnode.h
[r7445]
Sebastian Hack [Tue, 14 Mar 2006 17:51:53 +0000 (17:51 +0000)]
Back to the old version. Perhaps bitset_next() works now
[r7443]
Michael Beck [Tue, 14 Mar 2006 17:23:09 +0000 (17:23 +0000)]
added missing include, removed warning
[r7442]
Sebastian Hack [Tue, 14 Mar 2006 17:21:26 +0000 (17:21 +0000)]
Fixed some typos
[r7441]
Daniel Grund [Tue, 14 Mar 2006 17:18:51 +0000 (17:18 +0000)]
*** empty log message ***
[r7440]
Sebastian Hack [Tue, 14 Mar 2006 17:15:52 +0000 (17:15 +0000)]
Backported from libcore
[r7439]
Michael Beck [Tue, 14 Mar 2006 15:24:37 +0000 (15:24 +0000)]
more that one entry can map the same op (needed for different modes)
run local_optimize() to remove tuple
[r7438]
Michael Beck [Tue, 14 Mar 2006 14:34:05 +0000 (14:34 +0000)]
BugFix
[r7437]
Michael Beck [Fri, 10 Mar 2006 23:50:39 +0000 (23:50 +0000)]
instruction mapper implemented
[r7434]
Sebastian Hack [Fri, 10 Mar 2006 17:10:23 +0000 (17:10 +0000)]
Added survive dce
[r7433]
Sebastian Hack [Fri, 10 Mar 2006 15:54:58 +0000 (15:54 +0000)]
Added small helper function
[r7432]
Michael Beck [Fri, 10 Mar 2006 12:06:17 +0000 (12:06 +0000)]
missing break added
[r7431]
Christian Würdig [Thu, 9 Mar 2006 09:57:13 +0000 (09:57 +0000)]
added function to reset the generic function pointer for all opcodes
[r7429]
Beyhan [Tue, 7 Mar 2006 18:01:36 +0000 (18:01 +0000)]
Implementation completed. The documentation must be completed and the code must be structured.
[r7428]
Michael Beck [Tue, 7 Mar 2006 16:27:31 +0000 (16:27 +0000)]
all available opcodes are now stored in an irp list
[r7427]
Sebastian Hack [Tue, 7 Mar 2006 15:21:06 +0000 (15:21 +0000)]
Added subst hook in dead node elimination
[r7426]
Michael Beck [Tue, 7 Mar 2006 15:17:16 +0000 (15:17 +0000)]
WITH_ILP switch added
[r7425]
Christian Würdig [Tue, 7 Mar 2006 15:02:13 +0000 (15:02 +0000)]
added new optimization cases
[r7424]
Christian Würdig [Tue, 7 Mar 2006 14:57:09 +0000 (14:57 +0000)]
added WITH_ILP switch
[r7423]
Michael Beck [Tue, 7 Mar 2006 14:27:54 +0000 (14:27 +0000)]
Hidden parameters can be returned instead of the compound
Add flags for handling compound arguments (NYI)
[r7421]
Michael Beck [Tue, 7 Mar 2006 10:09:41 +0000 (10:09 +0000)]
recurse into ir/lower
[r7420]
Michael Beck [Mon, 6 Mar 2006 17:29:03 +0000 (17:29 +0000)]
missing include directory added
[r7419]
Michael Beck [Mon, 6 Mar 2006 16:37:01 +0000 (16:37 +0000)]
ir\lower\lower_calls.h added
[r7418]
Sebastian Hack [Mon, 6 Mar 2006 15:16:38 +0000 (15:16 +0000)]
Added dead code elimination survival facility
[r7417]
Sebastian Hack [Mon, 6 Mar 2006 15:16:13 +0000 (15:16 +0000)]
Added hook fir node substitution during dead node elimination
[r7416]
Michael Beck [Sun, 5 Mar 2006 01:19:41 +0000 (01:19 +0000)]
used xmalloc instead of malloc
[r7415]
Michael Beck [Sun, 5 Mar 2006 01:18:58 +0000 (01:18 +0000)]
use xmalloc instead of malloc, safe one allocation
[r7414]
Michael Beck [Sun, 5 Mar 2006 01:17:21 +0000 (01:17 +0000)]
clean up a bit
[r7413]
Michael Beck [Sun, 5 Mar 2006 01:08:48 +0000 (01:08 +0000)]
clean up code
[r7412]
Michael Beck [Sun, 5 Mar 2006 01:06:42 +0000 (01:06 +0000)]
CopyB projs are now independent of Call projs
[r7411]
Michael Beck [Sun, 5 Mar 2006 01:05:27 +0000 (01:05 +0000)]
new edge type detection: can handle unknown nodes gracefully and simplefies code
[r7410]
Michael Beck [Sun, 5 Mar 2006 01:03:52 +0000 (01:03 +0000)]
Fully implemented call lowering for methods with compound return values
[r7409]
Michael Beck [Fri, 3 Mar 2006 17:14:55 +0000 (17:14 +0000)]
used new is_*() functions
[r7405]
Michael Beck [Fri, 3 Mar 2006 17:14:30 +0000 (17:14 +0000)]
renamed variable new to nn
used new is_*() functions
[r7404]
Michael Beck [Fri, 3 Mar 2006 16:59:01 +0000 (16:59 +0000)]
used new is_Sel()
[r7401]
Michael Beck [Fri, 3 Mar 2006 16:58:34 +0000 (16:58 +0000)]
used new is_return
[r7400]
Michael Beck [Fri, 3 Mar 2006 16:57:30 +0000 (16:57 +0000)]
newest implementation
[r7399]
Michael Beck [Fri, 3 Mar 2006 16:56:57 +0000 (16:56 +0000)]
used new is_Call()
[r7398]
Michael Beck [Fri, 3 Mar 2006 16:56:39 +0000 (16:56 +0000)]
lower_calls added
[r7397]
Michael Beck [Fri, 3 Mar 2006 16:56:22 +0000 (16:56 +0000)]
used new is_Return()
[r7396]
Michael Beck [Fri, 3 Mar 2006 16:55:16 +0000 (16:55 +0000)]
used new is_call()
[r7395]
Michael Beck [Fri, 3 Mar 2006 16:54:28 +0000 (16:54 +0000)]
included lowerering files
[r7394]
Michael Beck [Fri, 3 Mar 2006 16:54:07 +0000 (16:54 +0000)]
some doxygen comments added
[r7393]
Michael Beck [Fri, 3 Mar 2006 16:52:39 +0000 (16:52 +0000)]
used new is_Call() and is_Sel()
[r7392]