libfirm
18 years agochanged output for loops
Michael Beck [Thu, 18 May 2006 11:49:47 +0000 (11:49 +0000)]
changed output for loops

[r7751]

18 years agoLet %+F print node number and index for ir-nodes
Michael Beck [Thu, 18 May 2006 11:48:56 +0000 (11:48 +0000)]
Let %+F print node number and index for ir-nodes

[r7750]

18 years agoAdded macros to use a pdeq as a wait queue
Michael Beck [Thu, 18 May 2006 11:47:43 +0000 (11:47 +0000)]
Added macros to use a pdeq as a wait queue
typos fixed

[r7749]

18 years agoopt_osr.h added
Michael Beck [Thu, 18 May 2006 11:37:07 +0000 (11:37 +0000)]
opt_osr.h added

[r7748]

18 years agoBugfixes:
Michael Beck [Wed, 17 May 2006 11:34:17 +0000 (11:34 +0000)]
Bugfixes:
 - search/add must used op2, op2 instead of op1, op2
 - location must use strict dominance
 - Postorder must be calculated from the Start block towards End block

Doxygen docu added

[r7744]

18 years agoadded extra shift lowering
Christian Würdig [Wed, 17 May 2006 09:21:56 +0000 (09:21 +0000)]
added extra shift lowering

[r7743]

18 years agoexact_copy() added
Michael Beck [Tue, 16 May 2006 16:38:38 +0000 (16:38 +0000)]
exact_copy() added

[r7742]

18 years ago*** empty log message ***
Sebastian Hack [Tue, 16 May 2006 15:16:25 +0000 (15:16 +0000)]
*** empty log message ***

[r7741]

18 years agoAdded verifying for irn idx map
Sebastian Hack [Tue, 16 May 2006 15:15:56 +0000 (15:15 +0000)]
Added verifying for irn idx map

[r7740]

18 years agoAdded CMP macro for qsort(3) and so on.
Sebastian Hack [Tue, 16 May 2006 15:14:52 +0000 (15:14 +0000)]
Added CMP macro for qsort(3) and so on.

[r7739]

18 years agofixed include path
Christian Würdig [Tue, 16 May 2006 14:04:21 +0000 (14:04 +0000)]
fixed include path

[r7737]

18 years agodisable deprecated warning
Christian Würdig [Tue, 16 May 2006 14:04:05 +0000 (14:04 +0000)]
disable deprecated warning

[r7736]

18 years agoinitial checkin of Visual Studio 2005 project files
Christian Würdig [Tue, 16 May 2006 12:46:23 +0000 (12:46 +0000)]
initial checkin of Visual Studio 2005 project files

[r7735]

18 years agoAdded opt_osr
Michael Beck [Tue, 16 May 2006 09:46:15 +0000 (09:46 +0000)]
Added opt_osr

[r7734]

18 years agoFirst full implementation with LFTR
Michael Beck [Mon, 15 May 2006 17:37:21 +0000 (17:37 +0000)]
First full implementation with LFTR

[r7733]

18 years ago.setlvl command added
Michael Beck [Mon, 15 May 2006 13:59:38 +0000 (13:59 +0000)]
.setlvl command added

[r7732]

18 years agoremoved debug setmask
Christian Würdig [Mon, 15 May 2006 11:19:31 +0000 (11:19 +0000)]
removed debug setmask

[r7730]

18 years agoBugFix:
Michael Beck [Mon, 15 May 2006 11:02:14 +0000 (11:02 +0000)]
BugFix:
 - creation of higher part of a constant
 - lowering of method types

[r7729]

18 years agoFixed really slow overflow handling ;-)
Michael Beck [Mon, 15 May 2006 10:53:24 +0000 (10:53 +0000)]
Fixed really slow overflow handling ;-)

[r7728]

18 years agofirst part of the new Operator Strength Reduction implementation
Michael Beck [Fri, 12 May 2006 17:34:41 +0000 (17:34 +0000)]
first part of the new Operator Strength Reduction implementation

[r7727]

18 years agoinstall ir\lower\lower_dw.h and ir\be\be.h
Michael Beck [Thu, 11 May 2006 16:19:26 +0000 (16:19 +0000)]
install ir\lower\lower_dw.h and ir\be\be.h

[r7724]

18 years agobugfix: remove redundant gert nodes block
Christian Würdig [Thu, 11 May 2006 13:11:56 +0000 (13:11 +0000)]
bugfix: remove redundant gert nodes block

[r7721]

18 years agoConvenience macros for node bitmaps
Sebastian Hack [Wed, 10 May 2006 16:34:59 +0000 (16:34 +0000)]
Convenience macros for node bitmaps

[r7720]

18 years agoAdded index -> node map to irgs
Sebastian Hack [Wed, 10 May 2006 16:34:43 +0000 (16:34 +0000)]
Added index -> node map to irgs

[r7719]

18 years agoAdded idx number dumping
Sebastian Hack [Wed, 10 May 2006 16:33:16 +0000 (16:33 +0000)]
Added idx number dumping

[r7718]

18 years agohonor the get_opt_if_conversion() flag
Michael Beck [Wed, 10 May 2006 15:03:55 +0000 (15:03 +0000)]
honor the get_opt_if_conversion() flag

[r7717]

18 years agoadded two functions:
Christian Würdig [Wed, 10 May 2006 14:57:35 +0000 (14:57 +0000)]
added two functions:
- get the first block dominating two nodes a and b
- get the first block dominating all users of a node

[r7716]

18 years agoadded new function to determine the predecessor position of node for a given predecessor
Christian Würdig [Wed, 10 May 2006 14:56:21 +0000 (14:56 +0000)]
added new function to determine the predecessor position of node for a given predecessor

[r7715]

18 years ago-If both data inputs of a new Psi are equal don't generate it in the first place
Christoph Mallon [Wed, 10 May 2006 14:20:55 +0000 (14:20 +0000)]
-If both data inputs of a new Psi are equal don't generate it in the first place
-Remove the special case for PhiMs, it's now covered by the magic above
-Implement naive splitting of Psis with multiple conditions to multiple Psis with one condition each

[r7714]

18 years agoFixed memory leaks
Michael Beck [Wed, 10 May 2006 13:57:17 +0000 (13:57 +0000)]
Fixed memory leaks
used DB() instead of ir_printf
changed detection of unmovable nodes

[r7712]

18 years agoBugFix: Do not build edges for not yet live anchors
Michael Beck [Wed, 10 May 2006 12:08:54 +0000 (12:08 +0000)]
BugFix: Do not build edges for not yet live anchors

[r7711]

18 years agofixed memory leak
Michael Beck [Tue, 9 May 2006 14:06:08 +0000 (14:06 +0000)]
fixed memory leak

[r7708]

18 years agoBugFix: edges_activate() must handle the whole root set of nodes
Michael Beck [Tue, 9 May 2006 12:49:22 +0000 (12:49 +0000)]
BugFix: edges_activate() must handle the whole root set of nodes
this includes all anchors and the value table set

doxygen comments added

[r7707]

18 years agolittle cleanup
Michael Beck [Tue, 9 May 2006 12:45:00 +0000 (12:45 +0000)]
little cleanup

[r7706]

18 years agoirg_walk_anchors() added. Needed for iredges.
Michael Beck [Tue, 9 May 2006 12:43:07 +0000 (12:43 +0000)]
irg_walk_anchors() added. Needed for iredges.

[r7705]

18 years agohandle Psi() nodes if they are Muxes
Michael Beck [Tue, 9 May 2006 12:42:07 +0000 (12:42 +0000)]
handle Psi() nodes if they are Muxes
visit_all_identities() added, needed for iredges

[r7704]

18 years agooptimize_graph_df():
Michael Beck [Tue, 9 May 2006 12:39:35 +0000 (12:39 +0000)]
optimize_graph_df():
 - sets the current_ir_graph
 - pushes the uses to the wait queue BEFORE the node is exchanged,
   otherwise old users of the optimized node are evaluated again

more doxygen docu
removed identities declarations, added right header

[r7703]

18 years agoremoved the INPLACE_EDGES option. They are now always available
Michael Beck [Mon, 8 May 2006 15:28:50 +0000 (15:28 +0000)]
removed the INPLACE_EDGES option.  They are now always available

[r7702]

18 years agoimplemented Conv operations
Michael Beck [Mon, 8 May 2006 15:27:58 +0000 (15:27 +0000)]
implemented Conv operations

[r7701]

18 years agoDo not create Confirm nodes for Cmp(Const, Const) constructs.
Michael Beck [Mon, 8 May 2006 12:07:45 +0000 (12:07 +0000)]
Do not create Confirm nodes for Cmp(Const, Const) constructs.
These are useless (and rather strange).

[r7700]

18 years agor_op now defined in firm_types.h
Michael Beck [Fri, 5 May 2006 15:31:10 +0000 (15:31 +0000)]
r_op now defined in firm_types.h

[r7699]

18 years agoir_op added
Michael Beck [Fri, 5 May 2006 15:30:48 +0000 (15:30 +0000)]
ir_op added

[r7698]

18 years agoadded () to supress warnings
Michael Beck [Fri, 5 May 2006 15:23:44 +0000 (15:23 +0000)]
added () to supress warnings
fixed typos

[r7697]

18 years agoBugFix: create new parameter Proj's in the right block
Michael Beck [Fri, 5 May 2006 15:12:55 +0000 (15:12 +0000)]
BugFix: create new parameter Proj's in the right block
make safe iterations more safe

[r7696]

18 years ago- Remove a pointless check for unique control dependencies and fix an incorrect assertion
Christoph Mallon [Fri, 5 May 2006 12:12:44 +0000 (12:12 +0000)]
- Remove a pointless check for unique control dependencies and fix an incorrect assertion
- Factor out common code to rewire Phis and blocks into a function
- Don't generate a Psi if both data inputs are equal

[r7695]

18 years agoadded missing include
Christian Würdig [Fri, 5 May 2006 08:38:53 +0000 (08:38 +0000)]
added missing include

[r7694]

18 years agonode data constructors can allocate the memory by themselves now.
Sebastian Hack [Thu, 4 May 2006 16:14:51 +0000 (16:14 +0000)]
node data constructors can allocate the memory by themselves now.

[r7693]

18 years agoAdapted to changes in irphase
Sebastian Hack [Thu, 4 May 2006 16:14:26 +0000 (16:14 +0000)]
Adapted to changes in irphase

[r7692]

18 years agoused new assure_*() functions
Michael Beck [Wed, 3 May 2006 16:12:14 +0000 (16:12 +0000)]
used new assure_*() functions

[r7691]

18 years agoused xmalloc()
Michael Beck [Wed, 3 May 2006 16:09:37 +0000 (16:09 +0000)]
used xmalloc()
used a macro to hide ugly casts

[r7690]

18 years agoused new assure_doms()
Michael Beck [Wed, 3 May 2006 16:07:50 +0000 (16:07 +0000)]
used new assure_doms()

[r7689]

18 years agoBugFix: turn_into_tuple() now works if edges are activated
Michael Beck [Wed, 3 May 2006 10:38:32 +0000 (10:38 +0000)]
BugFix: turn_into_tuple() now works if edges are activated

[r7688]

18 years agoassure_irg_outs() added
Michael Beck [Wed, 3 May 2006 08:54:20 +0000 (08:54 +0000)]
assure_irg_outs() added

[r7687]

18 years agoassure_doms() and assure_postdoms() added
Michael Beck [Wed, 3 May 2006 08:53:32 +0000 (08:53 +0000)]
assure_doms() and assure_postdoms() added

[r7686]

18 years agoAdd if conversion, use with -fif-conversion
Christoph Mallon [Wed, 3 May 2006 08:29:19 +0000 (08:29 +0000)]
Add if conversion, use with -fif-conversion

[r7685]

18 years agoAdd control dependency analysis
Christoph Mallon [Wed, 3 May 2006 08:27:11 +0000 (08:27 +0000)]
Add control dependency analysis

[r7684]

18 years agoAllow mode_b for and and or
Christoph Mallon [Wed, 3 May 2006 08:23:47 +0000 (08:23 +0000)]
Allow mode_b for and and or

[r7683]

18 years agoUse [gs]et_irn_n() instead of direct access to the in array
Christoph Mallon [Wed, 3 May 2006 08:23:24 +0000 (08:23 +0000)]
Use [gs]et_irn_n() instead of direct access to the in array

[r7682]

18 years agoAdd an edge callback hook for blocks
Christoph Mallon [Wed, 3 May 2006 08:22:44 +0000 (08:22 +0000)]
Add an edge callback hook for blocks

[r7681]

18 years agoAdapted to changes in irphase.c
Sebastian Hack [Tue, 2 May 2006 14:43:42 +0000 (14:43 +0000)]
Adapted to changes in irphase.c

[r7680]

18 years agoSmall modifications
Sebastian Hack [Tue, 2 May 2006 14:43:24 +0000 (14:43 +0000)]
Small modifications

[r7679]

18 years agooptimize_graph_df() added, a fixed point version of local_optimize_graph()
Michael Beck [Tue, 2 May 2006 12:38:02 +0000 (12:38 +0000)]
optimize_graph_df() added, a fixed point version of local_optimize_graph()

[r7677]

18 years agoAdded add_saturated
Sebastian Hack [Tue, 2 May 2006 12:23:16 +0000 (12:23 +0000)]
Added add_saturated

[r7675]

18 years agoremoved const from first parameter for phase init data function as some init functions
Christian Würdig [Mon, 1 May 2006 14:28:44 +0000 (14:28 +0000)]
removed const from first parameter for phase init data function as some init functions
change the object, so it's obviously not const

[r7674]

18 years agoadded missing include
Christian Würdig [Mon, 1 May 2006 14:17:27 +0000 (14:17 +0000)]
added missing include

[r7673]

18 years agocopy_irn_to_irg was buggy. It handed the whole in array of a node, including
Adam Szalkowski [Sat, 29 Apr 2006 18:59:00 +0000 (18:59 +0000)]
copy_irn_to_irg was buggy. It handed the whole in array of a node, including
the block, to new_ir_node. As a result after copying position 0 of the
new node contained the block.

[r7672]

18 years agoinvalidate more analyse info
Michael Beck [Fri, 28 Apr 2006 15:59:00 +0000 (15:59 +0000)]
invalidate more analyse info

[r7671]

18 years agoinvalidate more analyse info
Michael Beck [Fri, 28 Apr 2006 15:53:52 +0000 (15:53 +0000)]
invalidate more analyse info

[r7670]

18 years agoBugFix: do return -1 if no bit is found
Michael Beck [Fri, 28 Apr 2006 15:52:15 +0000 (15:52 +0000)]
BugFix: do return -1 if no bit is found

[r7669]

18 years agodon't create extended block info for const code irg
Michael Beck [Fri, 28 Apr 2006 15:48:18 +0000 (15:48 +0000)]
don't create extended block info for const code irg

[r7668]

18 years agoBugFix: == missed
Michael Beck [Fri, 28 Apr 2006 13:38:53 +0000 (13:38 +0000)]
BugFix: == missed

[r7667]

18 years agoMoved N to >
Sebastian Hack [Fri, 28 Apr 2006 09:31:26 +0000 (09:31 +0000)]
Moved N to >

[r7666]

18 years agodon't crash if a Const node has no tarval set yet
Michael Beck [Thu, 27 Apr 2006 13:41:26 +0000 (13:41 +0000)]
don't crash if a Const node has no tarval set yet

[r7665]

18 years agoinitial implementation of DOUBLE-WORD lowering, cannot handle conversions from/to
Michael Beck [Thu, 27 Apr 2006 13:31:08 +0000 (13:31 +0000)]
initial implementation of DOUBLE-WORD lowering, cannot handle conversions from/to
floating point yet.

[r7664]

18 years agoChanged indent modifier to %N.
Sebastian Hack [Thu, 27 Apr 2006 12:57:58 +0000 (12:57 +0000)]
Changed indent modifier to %N.
%N can now be equipped with a width giving a multiplier

[r7663]

18 years agoadded function to determine if statistics are active
Christian Würdig [Thu, 27 Apr 2006 11:36:08 +0000 (11:36 +0000)]
added function to determine if statistics are active

[r7661]

18 years agoBugFix: need a place for the block :-)
Michael Beck [Mon, 24 Apr 2006 15:56:59 +0000 (15:56 +0000)]
BugFix: need a place for the block :-)

[r7659]

18 years agodo not use set_irn_in to change End's keep-alives, this changes the in array from...
Michael Beck [Mon, 24 Apr 2006 15:45:46 +0000 (15:45 +0000)]
do not use set_irn_in to change End's keep-alives, this changes the in array from a flexible one to a dynamic ...
use new set_end_keepalives() function

[r7658]

18 years agofixed post-dominance construction for endless loops (hopefully).
Michael Beck [Mon, 24 Apr 2006 13:38:42 +0000 (13:38 +0000)]
fixed post-dominance construction for endless loops (hopefully).

[r7657]

18 years agodec_irg_block_visited() added
Michael Beck [Mon, 24 Apr 2006 13:10:57 +0000 (13:10 +0000)]
dec_irg_block_visited() added

[r7656]

18 years agoUse keep-alives to handle dominance info for graphs with endless loops right.
Michael Beck [Mon, 24 Apr 2006 13:10:32 +0000 (13:10 +0000)]
Use keep-alives to handle dominance info for graphs with endless loops right.
Post-dominance is not yet updated !!!

[r7655]

18 years agoadded functions to include the keep-alives for cfg edges
Michael Beck [Mon, 24 Apr 2006 13:09:17 +0000 (13:09 +0000)]
added functions to include the keep-alives for cfg edges

[r7654]

18 years agoFixed keep-alive visiting for extbb walker
Michael Beck [Mon, 24 Apr 2006 13:01:09 +0000 (13:01 +0000)]
Fixed keep-alive visiting for extbb walker

[r7652]

18 years agoAdd a new dumper
Michael Beck [Fri, 21 Apr 2006 11:31:02 +0000 (11:31 +0000)]
Add a new dumper
made allocation simplier

[r7649]

18 years agoadded header comment
Christian Würdig [Fri, 21 Apr 2006 08:18:05 +0000 (08:18 +0000)]
added header comment

[r7648]

18 years agoremoved pedantic-errors switch :)
Christian Würdig [Thu, 20 Apr 2006 16:07:14 +0000 (16:07 +0000)]
removed pedantic-errors switch :)

[r7647]

18 years agoUsed hooks to implement dump_add_node_info_callback()
Michael Beck [Thu, 20 Apr 2006 08:52:30 +0000 (08:52 +0000)]
Used hooks to implement dump_add_node_info_callback()
add prototypes to header file

[r7646]

18 years agohook_node_info added
Michael Beck [Thu, 20 Apr 2006 08:50:38 +0000 (08:50 +0000)]
hook_node_info added

[r7645]

18 years agoAdded height computation
Sebastian Hack [Wed, 19 Apr 2006 15:44:51 +0000 (15:44 +0000)]
Added height computation

[r7644]

18 years agoAdded node info dump callbacks
Sebastian Hack [Wed, 19 Apr 2006 15:44:12 +0000 (15:44 +0000)]
Added node info dump callbacks

[r7643]

18 years agoremoved backend statistics hooks, statistic functions are now called directly by...
Christian Würdig [Wed, 19 Apr 2006 11:43:36 +0000 (11:43 +0000)]
removed backend statistics hooks, statistic functions are now called directly by bestat

[r7639]

18 years agoremoved backend statistics hooks, functions are called now from bestat
Christian Würdig [Wed, 19 Apr 2006 11:43:00 +0000 (11:43 +0000)]
removed backend statistics hooks, functions are called now from bestat

[r7638]

18 years agoPhase objects can now be embedded
Sebastian Hack [Wed, 19 Apr 2006 11:13:16 +0000 (11:13 +0000)]
Phase objects can now be embedded

[r7637]

18 years agoadded comment
Christian Würdig [Tue, 18 Apr 2006 17:03:07 +0000 (17:03 +0000)]
added comment

[r7633]

18 years agofixed chain/cycle distribution statistic output
Christian Würdig [Tue, 18 Apr 2006 17:02:50 +0000 (17:02 +0000)]
fixed chain/cycle distribution statistic output

[r7632]

18 years agoadded conv to keep gcc happy
Christian Würdig [Thu, 13 Apr 2006 15:36:47 +0000 (15:36 +0000)]
added conv to keep gcc happy

[r7631]

18 years agoadded missing parameter and initializer
Christian Würdig [Wed, 12 Apr 2006 14:08:55 +0000 (14:08 +0000)]
added missing parameter and initializer

[r7630]

18 years agoAdded phases
Sebastian Hack [Wed, 12 Apr 2006 13:05:54 +0000 (13:05 +0000)]
Added phases

[r7629]

18 years agoAdded phases using node indexes
Sebastian Hack [Wed, 12 Apr 2006 13:05:12 +0000 (13:05 +0000)]
Added phases using node indexes

[r7628]

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

[r7625]