libfirm
18 years agoBugFix: set_irn_n() should now work for the block input (-1)
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]

18 years agoremoved flag from remove_critical_cf_edges()
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]

18 years agoremoved critical_edges flag. Other code depends on remove_critical_edges() doing...
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]

18 years agoadded some missing changed flags
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]

18 years agoinvalidate extended block info
Michael Beck [Mon, 20 Mar 2006 13:31:35 +0000 (13:31 +0000)]
invalidate extended block info
removed useless if

[r7488]

18 years agoinvalidate extended block info
Michael Beck [Mon, 20 Mar 2006 13:30:56 +0000 (13:30 +0000)]
invalidate extended block info

[r7487]

18 years agoinvalidate extended block info after tail recursion optimization
Michael Beck [Mon, 20 Mar 2006 13:30:08 +0000 (13:30 +0000)]
invalidate extended block info after tail recursion optimization

[r7486]

18 years agoget_irg_extblk_state() and set_irg_extblk_inconsistant() added
Michael Beck [Mon, 20 Mar 2006 07:17:53 +0000 (07:17 +0000)]
get_irg_extblk_state() and set_irg_extblk_inconsistant() added

[r7485]

18 years agoFixed extblock dumper (did not work outside debugger Bug)
Michael Beck [Mon, 20 Mar 2006 07:16:37 +0000 (07:16 +0000)]
Fixed extblock dumper (did not work outside debugger Bug)

[r7484]

18 years agoadd code to dump extended basic blocks
Michael Beck [Mon, 20 Mar 2006 07:13:29 +0000 (07:13 +0000)]
add code to dump extended basic blocks

[r7483]

18 years agoFixed irg_extblock_walk_graph()
Michael Beck [Mon, 20 Mar 2006 07:12:30 +0000 (07:12 +0000)]
Fixed irg_extblock_walk_graph()

[r7482]

18 years agoget_irg_extblk_state() and set_irg_extblk_inconsistant() added
Michael Beck [Mon, 20 Mar 2006 07:11:04 +0000 (07:11 +0000)]
get_irg_extblk_state() and set_irg_extblk_inconsistant() added

[r7481]

18 years agois_singlebit_tarval() added, needed for Cmp optimization
Michael Beck [Mon, 20 Mar 2006 00:43:27 +0000 (00:43 +0000)]
is_singlebit_tarval() added, needed for Cmp optimization

[r7480]

18 years agois_ir_extbb() added
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]

18 years agois_ir_extbb() added
Michael Beck [Mon, 20 Mar 2006 00:40:00 +0000 (00:40 +0000)]
is_ir_extbb() added

[r7478]

18 years agocosmetic fixes
Michael Beck [Mon, 20 Mar 2006 00:38:32 +0000 (00:38 +0000)]
cosmetic fixes

[r7477]

18 years agothe extended blocks now uses the block visited flag, so increase this for marking
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]

18 years agoremove dependency of irnode.h
Michael Beck [Sun, 19 Mar 2006 11:57:50 +0000 (11:57 +0000)]
remove dependency of irnode.h

[r7475]

18 years agoAdd optmitizations for the following cases:
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]

18 years agoFixed extbb construction (why it was damaged ?)
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]

18 years agoadded computed_value for Carry and Borrow
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]

18 years agoadded Carry and Borrow opcodes
Michael Beck [Sat, 18 Mar 2006 12:12:12 +0000 (12:12 +0000)]
added Carry and Borrow opcodes

[r7471]

18 years agoadded constructors for Carry and Borrow nodes, use macros to shorten the implementation
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]

18 years agoDBG_OPT_SYNC added
Michael Beck [Sat, 18 Mar 2006 12:06:15 +0000 (12:06 +0000)]
DBG_OPT_SYNC added

[r7469]

18 years agoHOOK_OPT_SYNC added
Michael Beck [Sat, 18 Mar 2006 12:05:11 +0000 (12:05 +0000)]
HOOK_OPT_SYNC added

[r7468]

18 years agotarval_init_1() expects now the null_value. Bad things might happen if this is not...
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]

18 years agotarval_P_void is removed now, map old functions and values
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]

18 years agoremoved tarval_P_void, every reference mode now has it's own NULL tarval
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]

18 years agohandle a call of an absolute address
Michael Beck [Fri, 17 Mar 2006 13:36:19 +0000 (13:36 +0000)]
handle a call of an absolute address

[r7464]

18 years agoFixed a subtle bug
Sebastian Hack [Fri, 17 Mar 2006 10:44:49 +0000 (10:44 +0000)]
Fixed a subtle bug

[r7462]

18 years agoadded some macros for easier decoding of ptr_access
Michael Beck [Wed, 15 Mar 2006 18:29:51 +0000 (18:29 +0000)]
added some macros for easier decoding of ptr_access

[r7461]

18 years agoImproved doxygen docu
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]

18 years agoImproved doxygen documentation.
Michael Beck [Wed, 15 Mar 2006 17:32:25 +0000 (17:32 +0000)]
Improved doxygen documentation.
Added a default value.

[r7458]

18 years agoir/lower include dir added
FIRM Projekt Account [Wed, 15 Mar 2006 16:44:51 +0000 (16:44 +0000)]
ir/lower include dir added

[r7456]

18 years agofixed const mismatch
Rubino Geiß [Wed, 15 Mar 2006 13:49:40 +0000 (13:49 +0000)]
fixed const mismatch

[r7454]

18 years agoadded missing const
Michael Beck [Wed, 15 Mar 2006 13:31:39 +0000 (13:31 +0000)]
added missing const

[r7452]

18 years agoopt_frame.h added
Michael Beck [Wed, 15 Mar 2006 12:55:47 +0000 (12:55 +0000)]
opt_frame.h added

[r7449]

18 years agoopt_frame.[ch] added
Michael Beck [Wed, 15 Mar 2006 12:53:46 +0000 (12:53 +0000)]
opt_frame.[ch] added

[r7448]

18 years agoMoved survive dce stuff here.
Sebastian Hack [Wed, 15 Mar 2006 12:50:17 +0000 (12:50 +0000)]
Moved survive dce stuff here.

[r7447]

18 years agoMoved the survive dce stuff to irgopt.[ch]
Sebastian Hack [Wed, 15 Mar 2006 12:49:57 +0000 (12:49 +0000)]
Moved the survive dce stuff to irgopt.[ch]

[r7446]

18 years agoremoved dependency of irnode.h
Michael Beck [Wed, 15 Mar 2006 12:23:39 +0000 (12:23 +0000)]
removed dependency of irnode.h

[r7445]

18 years agoBack to the old version. Perhaps bitset_next() works now
Sebastian Hack [Tue, 14 Mar 2006 17:51:53 +0000 (17:51 +0000)]
Back to the old version. Perhaps bitset_next() works now

[r7443]

18 years agoadded missing include, removed warning
Michael Beck [Tue, 14 Mar 2006 17:23:09 +0000 (17:23 +0000)]
added missing include, removed warning

[r7442]

18 years agoFixed some typos
Sebastian Hack [Tue, 14 Mar 2006 17:21:26 +0000 (17:21 +0000)]
Fixed some typos

[r7441]

18 years ago*** empty log message ***
Daniel Grund [Tue, 14 Mar 2006 17:18:51 +0000 (17:18 +0000)]
*** empty log message ***

[r7440]

18 years agoBackported from libcore
Sebastian Hack [Tue, 14 Mar 2006 17:15:52 +0000 (17:15 +0000)]
Backported from libcore

[r7439]

18 years agomore that one entry can map the same op (needed for different modes)
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]

18 years agoBugFix
Michael Beck [Tue, 14 Mar 2006 14:34:05 +0000 (14:34 +0000)]
BugFix

[r7437]

18 years agoinstruction mapper implemented
Michael Beck [Fri, 10 Mar 2006 23:50:39 +0000 (23:50 +0000)]
instruction mapper implemented

[r7434]

18 years agoAdded survive dce
Sebastian Hack [Fri, 10 Mar 2006 17:10:23 +0000 (17:10 +0000)]
Added survive dce

[r7433]

18 years agoAdded small helper function
Sebastian Hack [Fri, 10 Mar 2006 15:54:58 +0000 (15:54 +0000)]
Added small helper function

[r7432]

18 years agomissing break added
Michael Beck [Fri, 10 Mar 2006 12:06:17 +0000 (12:06 +0000)]
missing break added

[r7431]

18 years agoadded function to reset the generic function pointer for all opcodes
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]

18 years agoImplementation completed. The documentation must be completed and the code must be...
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]

18 years agoall available opcodes are now stored in an irp list
Michael Beck [Tue, 7 Mar 2006 16:27:31 +0000 (16:27 +0000)]
all available opcodes are now stored in an irp list

[r7427]

18 years agoAdded subst hook in dead node elimination
Sebastian Hack [Tue, 7 Mar 2006 15:21:06 +0000 (15:21 +0000)]
Added subst hook in dead node elimination

[r7426]

18 years agoWITH_ILP switch added
Michael Beck [Tue, 7 Mar 2006 15:17:16 +0000 (15:17 +0000)]
WITH_ILP switch added

[r7425]

18 years agoadded new optimization cases
Christian Würdig [Tue, 7 Mar 2006 15:02:13 +0000 (15:02 +0000)]
added new optimization cases

[r7424]

18 years agoadded WITH_ILP switch
Christian Würdig [Tue, 7 Mar 2006 14:57:09 +0000 (14:57 +0000)]
added WITH_ILP switch

[r7423]

18 years agoHidden parameters can be returned instead of the compound
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]

18 years agorecurse into ir/lower
Michael Beck [Tue, 7 Mar 2006 10:09:41 +0000 (10:09 +0000)]
recurse into ir/lower

[r7420]

18 years agomissing include directory added
Michael Beck [Mon, 6 Mar 2006 17:29:03 +0000 (17:29 +0000)]
missing include directory added

[r7419]

18 years agoir\lower\lower_calls.h added
Michael Beck [Mon, 6 Mar 2006 16:37:01 +0000 (16:37 +0000)]
ir\lower\lower_calls.h added

[r7418]

18 years agoAdded dead code elimination survival facility
Sebastian Hack [Mon, 6 Mar 2006 15:16:38 +0000 (15:16 +0000)]
Added dead code elimination survival facility

[r7417]

18 years agoAdded hook fir node substitution during dead node elimination
Sebastian Hack [Mon, 6 Mar 2006 15:16:13 +0000 (15:16 +0000)]
Added hook fir node substitution during dead node elimination

[r7416]

18 years agoused xmalloc instead of malloc
Michael Beck [Sun, 5 Mar 2006 01:19:41 +0000 (01:19 +0000)]
used xmalloc instead of malloc

[r7415]

18 years agouse xmalloc instead of malloc, safe one allocation
Michael Beck [Sun, 5 Mar 2006 01:18:58 +0000 (01:18 +0000)]
use xmalloc instead of malloc, safe one allocation

[r7414]

18 years agoclean up a bit
Michael Beck [Sun, 5 Mar 2006 01:17:21 +0000 (01:17 +0000)]
clean up a bit

[r7413]

18 years agoclean up code
Michael Beck [Sun, 5 Mar 2006 01:08:48 +0000 (01:08 +0000)]
clean up code

[r7412]

18 years agoCopyB projs are now independent of Call projs
Michael Beck [Sun, 5 Mar 2006 01:06:42 +0000 (01:06 +0000)]
CopyB projs are now independent of Call projs

[r7411]

18 years agonew edge type detection: can handle unknown nodes gracefully and simplefies code
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]

18 years agoFully implemented call lowering for methods with compound return values
Michael Beck [Sun, 5 Mar 2006 01:03:52 +0000 (01:03 +0000)]
Fully implemented call lowering for methods with compound return values

[r7409]

18 years agoused new is_*() functions
Michael Beck [Fri, 3 Mar 2006 17:14:55 +0000 (17:14 +0000)]
used new is_*() functions

[r7405]

18 years agorenamed variable new to nn
Michael Beck [Fri, 3 Mar 2006 17:14:30 +0000 (17:14 +0000)]
renamed variable new to nn
used new is_*() functions

[r7404]

18 years agoused new is_Sel()
Michael Beck [Fri, 3 Mar 2006 16:59:01 +0000 (16:59 +0000)]
used new is_Sel()

[r7401]

18 years agoused new is_return
Michael Beck [Fri, 3 Mar 2006 16:58:34 +0000 (16:58 +0000)]
used new is_return

[r7400]

18 years agonewest implementation
Michael Beck [Fri, 3 Mar 2006 16:57:30 +0000 (16:57 +0000)]
newest implementation

[r7399]

18 years agoused new is_Call()
Michael Beck [Fri, 3 Mar 2006 16:56:57 +0000 (16:56 +0000)]
used new is_Call()

[r7398]

18 years agolower_calls added
Michael Beck [Fri, 3 Mar 2006 16:56:39 +0000 (16:56 +0000)]
lower_calls added

[r7397]

18 years agoused new is_Return()
Michael Beck [Fri, 3 Mar 2006 16:56:22 +0000 (16:56 +0000)]
used new is_Return()

[r7396]

18 years agoused new is_call()
Michael Beck [Fri, 3 Mar 2006 16:55:16 +0000 (16:55 +0000)]
used new is_call()

[r7395]

18 years agoincluded lowerering files
Michael Beck [Fri, 3 Mar 2006 16:54:28 +0000 (16:54 +0000)]
included lowerering files

[r7394]

18 years agosome doxygen comments added
Michael Beck [Fri, 3 Mar 2006 16:54:07 +0000 (16:54 +0000)]
some doxygen comments added

[r7393]

18 years agoused new is_Call() and is_Sel()
Michael Beck [Fri, 3 Mar 2006 16:52:39 +0000 (16:52 +0000)]
used new is_Call() and is_Sel()

[r7392]

18 years agoused new is_Sel(), is_Call()
Michael Beck [Fri, 3 Mar 2006 16:51:59 +0000 (16:51 +0000)]
used new is_Sel(), is_Call()

[r7391]

18 years agonew is_call() used
Michael Beck [Fri, 3 Mar 2006 16:51:28 +0000 (16:51 +0000)]
new is_call() used

[r7390]

18 years agois_Return, is_Call and is_Sel implemented
Michael Beck [Fri, 3 Mar 2006 16:50:07 +0000 (16:50 +0000)]
is_Return, is_Call and is_Sel implemented

[r7389]

18 years agoFirst implementation of lowering for calls with compound return values
Michael Beck [Fri, 3 Mar 2006 16:48:48 +0000 (16:48 +0000)]
First implementation of lowering for calls with compound return values

[r7388]

18 years agoreplaced old panic module by newer error module
Michael Beck [Fri, 3 Mar 2006 12:55:21 +0000 (12:55 +0000)]
replaced old panic module by newer error module

[r7387]

18 years agoreplaced old panic module by newer error module
Michael Beck [Fri, 3 Mar 2006 12:53:59 +0000 (12:53 +0000)]
replaced old panic module by newer error module
add necessary include

[r7386]

18 years agoreplaced old panic module by newer error handling module
Michael Beck [Fri, 3 Mar 2006 12:53:22 +0000 (12:53 +0000)]
replaced old panic module by newer error handling module

[r7385]

18 years agoBugFix: = was erronously used instead of ==
Michael Beck [Fri, 3 Mar 2006 12:10:07 +0000 (12:10 +0000)]
BugFix: = was erronously used instead of ==

[r7384]

18 years agobitset dumping
Sebastian Hack [Sat, 25 Feb 2006 16:58:43 +0000 (16:58 +0000)]
bitset dumping

[r7381]

18 years agoAdded dumper for bipartite graphs
Sebastian Hack [Sat, 25 Feb 2006 16:57:47 +0000 (16:57 +0000)]
Added dumper for bipartite graphs

[r7380]

18 years agoBugFix: in newer Firm, keep-alives may be other than Block & Phi
Michael Beck [Fri, 24 Feb 2006 17:17:49 +0000 (17:17 +0000)]
BugFix: in newer Firm, keep-alives may be other than Block & Phi
restructured for easier debugging

[r7379]

18 years agoadded firm version number
Michael Beck [Wed, 22 Feb 2006 15:58:24 +0000 (15:58 +0000)]
added firm version number

[r7373]

18 years agoA new alternative of scalar_replacement. The implementation isn't completed."
Beyhan [Wed, 22 Feb 2006 15:31:47 +0000 (15:31 +0000)]
A new alternative of scalar_replacement. The implementation isn't completed."
nnnnn----------------------------------------------------------------------

[r7372]

18 years agoAdded a work around for reassociations that are "translated" back
Michael Beck [Wed, 22 Feb 2006 14:41:49 +0000 (14:41 +0000)]
Added a work around for reassociations that are "translated" back
by normal optimizations

[r7370]

18 years ago*** empty log message ***
Daniel Grund [Wed, 22 Feb 2006 14:17:57 +0000 (14:17 +0000)]
*** empty log message ***

[r7369]

18 years agofixed the type of the entity number
Michael Beck [Tue, 21 Feb 2006 14:02:11 +0000 (14:02 +0000)]
fixed the type of the entity number

[r7368]