Christian Würdig [Mon, 10 Apr 2006 15:22:31 +0000 (15:22 +0000)]
added permutations statistics
[r7612]
Christian Würdig [Mon, 10 Apr 2006 15:21:35 +0000 (15:21 +0000)]
added 0 and 1 counter
[r7611]
Christian Würdig [Mon, 10 Apr 2006 09:23:35 +0000 (09:23 +0000)]
fixed indents
[r7610]
Christian Würdig [Mon, 10 Apr 2006 09:23:02 +0000 (09:23 +0000)]
added average calculation of distribution table
[r7609]
Christian Würdig [Mon, 10 Apr 2006 08:32:26 +0000 (08:32 +0000)]
added be statitics hook (sched_ready)
[r7608]
Christian Würdig [Sat, 8 Apr 2006 21:31:13 +0000 (21:31 +0000)]
fixed scheduling statistics
removed comment
[r7607]
Christian Würdig [Sat, 8 Apr 2006 21:06:20 +0000 (21:06 +0000)]
added statistics for scheduling
[r7606]
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]
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]
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]
Christian Würdig [Fri, 7 Apr 2006 14:34:00 +0000 (14:34 +0000)]
added reg pressure statistic hook
[r7602]
Christian Würdig [Fri, 7 Apr 2006 14:03:11 +0000 (14:03 +0000)]
added register pressure statistics
[r7601]
Michael Beck [Fri, 7 Apr 2006 12:42:26 +0000 (12:42 +0000)]
reset node index on dead node elimination
[r7598]
Michael Beck [Fri, 7 Apr 2006 12:38:47 +0000 (12:38 +0000)]
dump the node index and estimated node count
[r7597]
Michael Beck [Fri, 7 Apr 2006 12:24:58 +0000 (12:24 +0000)]
introduced node index: a small unique per graph node number
[r7596]
Christian Würdig [Fri, 7 Apr 2006 09:06:32 +0000 (09:06 +0000)]
added addtitional ia32 backend statistics
[r7595]
Michael Beck [Thu, 6 Apr 2006 15:44:47 +0000 (15:44 +0000)]
removed cstore
[r7594]
Michael Beck [Thu, 6 Apr 2006 15:38:50 +0000 (15:38 +0000)]
removed unused cstore
[r7593]
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]
Michael Beck [Thu, 6 Apr 2006 15:29:09 +0000 (15:29 +0000)]
anchors can be dumped yet always
[r7591]
Michael Beck [Thu, 6 Apr 2006 12:58:04 +0000 (12:58 +0000)]
add irgraph.h include
[r7590]
Michael Beck [Thu, 6 Apr 2006 12:38:34 +0000 (12:38 +0000)]
increase Firm version number
[r7588]
Michael Beck [Thu, 6 Apr 2006 12:36:53 +0000 (12:36 +0000)]
initialize the phase state
[r7587]
Michael Beck [Thu, 6 Apr 2006 12:35:18 +0000 (12:35 +0000)]
don't access irg anchor nodes directly
[r7586]
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]
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]
Michael Beck [Thu, 6 Apr 2006 12:07:11 +0000 (12:07 +0000)]
don't access irg anchor nodes directly
[r7583]
Michael Beck [Thu, 6 Apr 2006 12:04:46 +0000 (12:04 +0000)]
don't access members of the irg directly
[r7582]
Michael Beck [Wed, 5 Apr 2006 16:42:38 +0000 (16:42 +0000)]
Handle endless loops (so a assert was wrong here)
[r7578]
Christian Würdig [Wed, 5 Apr 2006 16:08:28 +0000 (16:08 +0000)]
added ia32 backend statistics
[r7577]
Christian Würdig [Tue, 4 Apr 2006 14:25:08 +0000 (14:25 +0000)]
added IA32 backend dbg statistics
[r7573]
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]
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]
Michael Beck [Mon, 3 Apr 2006 13:41:54 +0000 (13:41 +0000)]
renamed init_hooks() and init_stat() into firm_*()
[r7570]
Michael Beck [Mon, 3 Apr 2006 13:41:38 +0000 (13:41 +0000)]
HOOK_BACKEND added
renamed init_hooks() into firm_init_hooks()
[r7569]
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]
Michael Beck [Mon, 3 Apr 2006 13:17:48 +0000 (13:17 +0000)]
dbg_backend added
[r7566]
Michael Beck [Fri, 31 Mar 2006 11:49:37 +0000 (11:49 +0000)]
BugFix: NEW_D_UNOP() macro always craeted Minus nodes :-(
[r7551]
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]
Michael Beck [Fri, 31 Mar 2006 07:09:17 +0000 (07:09 +0000)]
moved #ifdef DEBUG_libfirm commented members last in the structure
[r7549]
Michael Beck [Thu, 30 Mar 2006 16:15:10 +0000 (16:15 +0000)]
cleaned up the order of ifdef's
[r7548]
Christian Würdig [Thu, 30 Mar 2006 15:39:19 +0000 (15:39 +0000)]
wrapped debugging modules with DEBUG_ONLY
[r7547]
Christian Würdig [Thu, 30 Mar 2006 13:56:37 +0000 (13:56 +0000)]
fixed defines for release mode
[r7546]
Michael Beck [Thu, 30 Mar 2006 13:12:43 +0000 (13:12 +0000)]
make inline version of set_irn_op()
[r7544]
Michael Beck [Thu, 30 Mar 2006 08:56:17 +0000 (08:56 +0000)]
removed beasm_asm_gnu and beasm_dump_globals
[r7539]
Michael Beck [Wed, 29 Mar 2006 09:39:15 +0000 (09:39 +0000)]
add DEBUG_ONLY and RELEASE_ONLY
[r7536]
Beyhan [Tue, 28 Mar 2006 16:10:53 +0000 (16:10 +0000)]
Code structured and some bug fixed, but not tested enough!
[r7535]
Michael Beck [Tue, 28 Mar 2006 12:58:16 +0000 (12:58 +0000)]
used new FIRM_DBG_REGISTER macro
[r7534]
Michael Beck [Tue, 28 Mar 2006 12:40:22 +0000 (12:40 +0000)]
used new FIRM_DBG_REGISTER macro
[r7533]
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]
Michael Beck [Mon, 27 Mar 2006 16:07:09 +0000 (16:07 +0000)]
including backends from the BE praktikum
[r7531]
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]
Sebastian Hack [Fri, 24 Mar 2006 16:51:31 +0000 (16:51 +0000)]
Fixed a subtle bug
[r7529]
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]
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]
Michael Beck [Fri, 24 Mar 2006 10:01:41 +0000 (10:01 +0000)]
is_Mux() added
[r7522]
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]