libfirm
18 years agoAdded MIN und MAX
Sebastian Hack [Tue, 11 Apr 2006 15:46:19 +0000 (15:46 +0000)]
Added MIN und MAX

[r7625]

18 years agoextended permutation statistics
Christian Würdig [Tue, 11 Apr 2006 12:28:48 +0000 (12:28 +0000)]
extended permutation statistics

[r7624]

18 years agostat_be_block_regpressure() and stat_be_block_ready() are now directly called from...
Michael Beck [Tue, 11 Apr 2006 11:19:55 +0000 (11:19 +0000)]
stat_be_block_regpressure() and stat_be_block_ready() are now directly called from the be_stat module

[r7623]

18 years agoremoved hook_be_block_regpressure and hook_be_sched_ready. These was only be used...
Michael Beck [Tue, 11 Apr 2006 11:18:48 +0000 (11:18 +0000)]
removed hook_be_block_regpressure and hook_be_sched_ready. These was only be used for statistic
purpose

[r7622]

18 years agofixed foreach macro
Michael Beck [Tue, 11 Apr 2006 09:50:37 +0000 (09:50 +0000)]
fixed foreach macro

[r7621]

18 years agorenamed cnt_to_int() into cnt_to_uint()
Michael Beck [Tue, 11 Apr 2006 09:50:22 +0000 (09:50 +0000)]
renamed cnt_to_int() into cnt_to_uint()
cleaned up by using foreach_pset()

[r7620]

18 years agoforeach_pset macro added
Michael Beck [Tue, 11 Apr 2006 09:13:02 +0000 (09:13 +0000)]
foreach_pset macro added

[r7619]

18 years agomade cnt_to_int unsigned
Christian Würdig [Tue, 11 Apr 2006 09:05:28 +0000 (09:05 +0000)]
made cnt_to_int unsigned

[r7618]

18 years agoadded cnt_to_int function for counter
Christian Würdig [Tue, 11 Apr 2006 09:03:27 +0000 (09:03 +0000)]
added cnt_to_int function for counter

[r7617]

18 years agoadded get_count function for distribution tables
Christian Würdig [Tue, 11 Apr 2006 09:03:04 +0000 (09:03 +0000)]
added get_count function for distribution tables

[r7616]

18 years agoadded inc and insert functions for distribution tables
Christian Würdig [Tue, 11 Apr 2006 08:36:53 +0000 (08:36 +0000)]
added inc and insert functions for distribution tables
removed cnt_1 and cnt_0 from counter.h

[r7615]

18 years agochanged class name type from ident to const char*
Christian Würdig [Tue, 11 Apr 2006 08:15:53 +0000 (08:15 +0000)]
changed class name type from ident to const char*

[r7614]

18 years agoadded hooks for permutation statistics
Christian Würdig [Mon, 10 Apr 2006 15:22:53 +0000 (15:22 +0000)]
added hooks for permutation statistics

[r7613]

18 years agoadded permutations statistics
Christian Würdig [Mon, 10 Apr 2006 15:22:31 +0000 (15:22 +0000)]
added permutations statistics

[r7612]

18 years agoadded 0 and 1 counter
Christian Würdig [Mon, 10 Apr 2006 15:21:35 +0000 (15:21 +0000)]
added 0 and 1 counter

[r7611]

18 years agofixed indents
Christian Würdig [Mon, 10 Apr 2006 09:23:35 +0000 (09:23 +0000)]
fixed indents

[r7610]

18 years agoadded average calculation of distribution table
Christian Würdig [Mon, 10 Apr 2006 09:23:02 +0000 (09:23 +0000)]
added average calculation of distribution table

[r7609]

18 years agoadded be statitics hook (sched_ready)
Christian Würdig [Mon, 10 Apr 2006 08:32:26 +0000 (08:32 +0000)]
added be statitics hook (sched_ready)

[r7608]

18 years agofixed scheduling statistics
Christian Würdig [Sat, 8 Apr 2006 21:31:13 +0000 (21:31 +0000)]
fixed scheduling statistics
removed comment

[r7607]

18 years agoadded statistics for scheduling
Christian Würdig [Sat, 8 Apr 2006 21:06:20 +0000 (21:06 +0000)]
added statistics for scheduling

[r7606]

18 years agoadded environment pointer for distribution table iteration
Christian Würdig [Sat, 8 Apr 2006 21:05:55 +0000 (21:05 +0000)]
added environment pointer for distribution table iteration
fixed compare function for int distrib tables
changed order of typedefs

[r7605]

18 years agoused new node index for normalization (instead of the non-determnistic node address)
Michael Beck [Sat, 8 Apr 2006 01:01:26 +0000 (01:01 +0000)]
used new node index for normalization (instead of the non-determnistic node address)

[r7604]

18 years agomoved reg pressure statistics into sepearete be_block_hash
Christian Würdig [Fri, 7 Apr 2006 15:02:56 +0000 (15:02 +0000)]
moved reg pressure statistics into sepearete be_block_hash
added be_data obstack
free be_data on finish

[r7603]

18 years agoadded reg pressure statistic hook
Christian Würdig [Fri, 7 Apr 2006 14:34:00 +0000 (14:34 +0000)]
added reg pressure statistic hook

[r7602]

18 years agoadded register pressure statistics
Christian Würdig [Fri, 7 Apr 2006 14:03:11 +0000 (14:03 +0000)]
added register pressure statistics

[r7601]

18 years agoreset node index on dead node elimination
Michael Beck [Fri, 7 Apr 2006 12:42:26 +0000 (12:42 +0000)]
reset node index on dead node elimination

[r7598]

18 years agodump the node index and estimated node count
Michael Beck [Fri, 7 Apr 2006 12:38:47 +0000 (12:38 +0000)]
dump the node index and estimated node count

[r7597]

18 years agointroduced node index: a small unique per graph node number
Michael Beck [Fri, 7 Apr 2006 12:24:58 +0000 (12:24 +0000)]
introduced node index: a small unique per graph node number

[r7596]

18 years agoadded addtitional ia32 backend statistics
Christian Würdig [Fri, 7 Apr 2006 09:06:32 +0000 (09:06 +0000)]
added addtitional ia32 backend statistics

[r7595]

18 years agoremoved cstore
Michael Beck [Thu, 6 Apr 2006 15:44:47 +0000 (15:44 +0000)]
removed cstore

[r7594]

18 years agoremoved unused cstore
Michael Beck [Thu, 6 Apr 2006 15:38:50 +0000 (15:38 +0000)]
removed unused cstore

[r7593]

18 years agodead node elimination now handles all anchors equaly
Michael Beck [Thu, 6 Apr 2006 15:32:46 +0000 (15:32 +0000)]
dead node elimination now handles all anchors equaly
Especially anchors can now consist of DAG's which are copied as well ...

[r7592]

18 years agoanchors can be dumped yet always
Michael Beck [Thu, 6 Apr 2006 15:29:09 +0000 (15:29 +0000)]
anchors can be dumped yet always

[r7591]

18 years agoadd irgraph.h include
Michael Beck [Thu, 6 Apr 2006 12:58:04 +0000 (12:58 +0000)]
add irgraph.h include

[r7590]

18 years agoincrease Firm version number
Michael Beck [Thu, 6 Apr 2006 12:38:34 +0000 (12:38 +0000)]
increase Firm version number

[r7588]

18 years agoinitialize the phase state
Michael Beck [Thu, 6 Apr 2006 12:36:53 +0000 (12:36 +0000)]
initialize the phase state

[r7587]

18 years agodon't access irg anchor nodes directly
Michael Beck [Thu, 6 Apr 2006 12:35:18 +0000 (12:35 +0000)]
don't access irg anchor nodes directly

[r7586]

18 years agodont access members of irg directly
Michael Beck [Thu, 6 Apr 2006 12:18:31 +0000 (12:18 +0000)]
dont access members of irg directly
handle graph state more generic

[r7585]

18 years agoPut all anchor nodes into an array: This makes the implementation of
Michael Beck [Thu, 6 Apr 2006 12:09:25 +0000 (12:09 +0000)]
Put all anchor nodes into an array: This makes the implementation of
dead node elimination much simplier ...
make irg state more generic

[r7584]

18 years agodon't access irg anchor nodes directly
Michael Beck [Thu, 6 Apr 2006 12:07:11 +0000 (12:07 +0000)]
don't access irg anchor nodes directly

[r7583]

18 years agodon't access members of the irg directly
Michael Beck [Thu, 6 Apr 2006 12:04:46 +0000 (12:04 +0000)]
don't access members of the irg directly

[r7582]

18 years agoHandle endless loops (so a assert was wrong here)
Michael Beck [Wed, 5 Apr 2006 16:42:38 +0000 (16:42 +0000)]
Handle endless loops (so a assert was wrong here)

[r7578]

18 years agoadded ia32 backend statistics
Christian Würdig [Wed, 5 Apr 2006 16:08:28 +0000 (16:08 +0000)]
added ia32 backend statistics

[r7577]

18 years agoadded IA32 backend dbg statistics
Christian Würdig [Tue, 4 Apr 2006 14:25:08 +0000 (14:25 +0000)]
added IA32 backend dbg statistics

[r7573]

18 years agoAdd test functions for machine, machine_operand and machine_user bits
Michael Beck [Tue, 4 Apr 2006 13:00:53 +0000 (13:00 +0000)]
Add test functions for machine, machine_operand and machine_user bits

[r7572]

18 years agoadd irop_flag_machine, irop_flag_machine_op and irop_flag_user flags and check functions
Michael Beck [Tue, 4 Apr 2006 12:20:09 +0000 (12:20 +0000)]
add irop_flag_machine, irop_flag_machine_op and irop_flag_user flags and check functions

[r7571]

18 years agorenamed init_hooks() and init_stat() into firm_*()
Michael Beck [Mon, 3 Apr 2006 13:41:54 +0000 (13:41 +0000)]
renamed init_hooks() and init_stat() into firm_*()

[r7570]

18 years agoHOOK_BACKEND added
Michael Beck [Mon, 3 Apr 2006 13:41:38 +0000 (13:41 +0000)]
HOOK_BACKEND added
renamed init_hooks() into firm_init_hooks()

[r7569]

18 years agoopt reasons updated
Michael Beck [Mon, 3 Apr 2006 13:19:03 +0000 (13:19 +0000)]
opt reasons updated
fixed iro-numbers for pseuso-ops: must not interfere with numbers used in irp

[r7567]

18 years agodbg_backend added
Michael Beck [Mon, 3 Apr 2006 13:17:48 +0000 (13:17 +0000)]
dbg_backend added

[r7566]

18 years agoBugFix: NEW_D_UNOP() macro always craeted Minus nodes :-(
Michael Beck [Fri, 31 Mar 2006 11:49:37 +0000 (11:49 +0000)]
BugFix: NEW_D_UNOP() macro always craeted Minus nodes :-(

[r7551]

18 years agoBugFix: out_cnt was wrong:
Michael Beck [Fri, 31 Mar 2006 07:12:57 +0000 (07:12 +0000)]
BugFix: out_cnt was wrong:
 - was not updated if an edge was deleted (minor, happens only if the whole node
  was deleted but dead nodes might resurvice due to CSE)
- was not cleared after a recompute (really bad)

[r7550]

18 years agomoved #ifdef DEBUG_libfirm commented members last in the structure
Michael Beck [Fri, 31 Mar 2006 07:09:17 +0000 (07:09 +0000)]
moved #ifdef DEBUG_libfirm commented members last in the structure

[r7549]

18 years agocleaned up the order of ifdef's
Michael Beck [Thu, 30 Mar 2006 16:15:10 +0000 (16:15 +0000)]
cleaned up the order of ifdef's

[r7548]

18 years agowrapped debugging modules with DEBUG_ONLY
Christian Würdig [Thu, 30 Mar 2006 15:39:19 +0000 (15:39 +0000)]
wrapped debugging modules with DEBUG_ONLY

[r7547]

18 years agofixed defines for release mode
Christian Würdig [Thu, 30 Mar 2006 13:56:37 +0000 (13:56 +0000)]
fixed defines for release mode

[r7546]

18 years agomake inline version of set_irn_op()
Michael Beck [Thu, 30 Mar 2006 13:12:43 +0000 (13:12 +0000)]
make inline version of set_irn_op()

[r7544]

18 years agoremoved beasm_asm_gnu and beasm_dump_globals
Michael Beck [Thu, 30 Mar 2006 08:56:17 +0000 (08:56 +0000)]
removed beasm_asm_gnu and beasm_dump_globals

[r7539]

18 years agoadd DEBUG_ONLY and RELEASE_ONLY
Michael Beck [Wed, 29 Mar 2006 09:39:15 +0000 (09:39 +0000)]
add DEBUG_ONLY and RELEASE_ONLY

[r7536]

18 years agoCode structured and some bug fixed, but not tested enough!
Beyhan [Tue, 28 Mar 2006 16:10:53 +0000 (16:10 +0000)]
Code structured and some bug fixed, but not tested enough!

[r7535]

18 years agoused new FIRM_DBG_REGISTER macro
Michael Beck [Tue, 28 Mar 2006 12:58:16 +0000 (12:58 +0000)]
used new FIRM_DBG_REGISTER macro

[r7534]

18 years agoused new FIRM_DBG_REGISTER macro
Michael Beck [Tue, 28 Mar 2006 12:40:22 +0000 (12:40 +0000)]
used new FIRM_DBG_REGISTER macro

[r7533]

18 years agointroduced FIRM_DBG_REGISTER() macro to remove debug module registration
Michael Beck [Tue, 28 Mar 2006 11:59:54 +0000 (11:59 +0000)]
introduced FIRM_DBG_REGISTER() macro to remove debug module registration
in releae builds

[r7532]

18 years agoincluding backends from the BE praktikum
Michael Beck [Mon, 27 Mar 2006 16:07:09 +0000 (16:07 +0000)]
including backends from the BE praktikum

[r7531]

18 years agoadd irop_flag_machine to mark "machine operations". This flag should be set for all...
Michael Beck [Sun, 26 Mar 2006 14:12:43 +0000 (14:12 +0000)]
add irop_flag_machine to mark "machine operations". This flag should be set for all machine opcodes.

[r7530]

18 years agoFixed a subtle bug
Sebastian Hack [Fri, 24 Mar 2006 16:51:31 +0000 (16:51 +0000)]
Fixed a subtle bug

[r7529]

18 years agooptimize_one_return() now did not build Phi(a,...,a) if a is an Unknown.
Michael Beck [Fri, 24 Mar 2006 10:41:48 +0000 (10:41 +0000)]
optimize_one_return() now did not build Phi(a,...,a) if a is an Unknown.

[r7525]

18 years agoremove propagation of Unknown. This causes problems in backends in in
Michael Beck [Fri, 24 Mar 2006 10:17:45 +0000 (10:17 +0000)]
remove propagation of Unknown. This causes problems in backends in in
Firm "hand" construction

[r7523]

18 years agois_Mux() added
Michael Beck [Fri, 24 Mar 2006 10:01:41 +0000 (10:01 +0000)]
is_Mux() added

[r7522]

18 years agoFixed include directory
FIRM Projekt Account [Fri, 24 Mar 2006 09:37:11 +0000 (09:37 +0000)]
Fixed include directory

[r7520]

18 years agodocu updated
Michael Beck [Thu, 23 Mar 2006 13:02:04 +0000 (13:02 +0000)]
docu updated

[r7513]

18 years agoColor Mux and Psi nodes gold
Michael Beck [Thu, 23 Mar 2006 12:58:06 +0000 (12:58 +0000)]
Color Mux and Psi nodes gold

[r7512]

18 years agoBugFix:
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]

18 years agoget_Psi_n_conds() added
Michael Beck [Thu, 23 Mar 2006 12:36:51 +0000 (12:36 +0000)]
get_Psi_n_conds() added

[r7510]

18 years agoAdded support for Psi nodes
Michael Beck [Thu, 23 Mar 2006 12:19:22 +0000 (12:19 +0000)]
Added support for Psi nodes

[r7509]

18 years agoAdded constructors for Psi nodes
Michael Beck [Thu, 23 Mar 2006 12:18:40 +0000 (12:18 +0000)]
Added constructors for Psi nodes

[r7508]

18 years agoPsi op added
Michael Beck [Thu, 23 Mar 2006 12:17:52 +0000 (12:17 +0000)]
Psi op added

[r7507]

18 years agonormalize_one_return() now did not create Bad control flow predecessors
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]

18 years agoFixed a bug
Sebastian Hack [Wed, 22 Mar 2006 14:20:12 +0000 (14:20 +0000)]
Fixed a bug

[r7503]

18 years agoThe ir_op's are stored inside the irp, so don't kill the irp()
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]

18 years agoBugged a fix
Christoph Mallon [Wed, 22 Mar 2006 13:12:08 +0000 (13:12 +0000)]
Bugged a fix

[r7501]

18 years agoBugFix: used tp instead of frame_type
Michael Beck [Wed, 22 Mar 2006 10:13:33 +0000 (10:13 +0000)]
BugFix: used tp instead of frame_type

[r7500]

18 years agoframe_alloc_area() added
Michael Beck [Wed, 22 Mar 2006 10:04:50 +0000 (10:04 +0000)]
frame_alloc_area() added

[r7499]

18 years agoremoved c99 style
Christian Würdig [Mon, 20 Mar 2006 16:58:50 +0000 (16:58 +0000)]
removed c99 style

[r7496]

18 years agoExtBlk walker now always visits start block first/last
Michael Beck [Mon, 20 Mar 2006 16:45:45 +0000 (16:45 +0000)]
ExtBlk walker now always visits start block first/last

[r7495]

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]