libfirm
15 years ago- clear action obstack after each application on a graph
Sebastian Buchwald [Sun, 20 Jul 2008 11:44:41 +0000 (11:44 +0000)]
- clear action obstack after each application on a graph
- call finalize-method on deactivation of the ext/grs plugin

[r20564]

15 years agotypo
Sebastian Buchwald [Fri, 18 Jul 2008 16:28:40 +0000 (16:28 +0000)]
typo

[r20536]

15 years agodocument mode_b stuff
Matthias Braun [Fri, 18 Jul 2008 09:24:12 +0000 (09:24 +0000)]
document mode_b stuff

[r20519]

15 years agodocument mode_b stuff
Matthias Braun [Fri, 18 Jul 2008 09:22:56 +0000 (09:22 +0000)]
document mode_b stuff

[r20518]

15 years agoFixed and simplified rot matcher
Moritz Kroll [Thu, 17 Jul 2008 11:57:44 +0000 (11:57 +0000)]
Fixed and simplified rot matcher

[r20511]

15 years agoprint FAILED if reference compiler fails, we don't use the gcc testsuite anymore
Moritz Kroll [Thu, 17 Jul 2008 11:29:01 +0000 (11:29 +0000)]
print FAILED if reference compiler fails, we don't use the gcc testsuite anymore

[r20509]

15 years agorot matcher incorrect
Moritz Kroll [Thu, 17 Jul 2008 11:16:20 +0000 (11:16 +0000)]
rot matcher incorrect

[r20508]

15 years agofixed crop list handling
Michael Beck [Wed, 16 Jul 2008 16:02:15 +0000 (16:02 +0000)]
fixed crop list handling

[r20491]

15 years agoConvert const node to symconst node with the value as entity. That allow us to use...
Sebastian Buchwald [Tue, 15 Jul 2008 16:59:11 +0000 (16:59 +0000)]
Convert const node to symconst node with the value as entity. That allow us to use existing GrGen features also for floats.

[r20483]

15 years ago- add compute for Sub and Cmp
Michael Beck [Tue, 15 Jul 2008 15:43:34 +0000 (15:43 +0000)]
- add compute for Sub and Cmp
- let the lambda function map to pointer, not unsigned (sovinf the need for partition and
  tarval numbering)
- some debug added

[r20481]

15 years ago'fix' comment
Matthias Braun [Tue, 15 Jul 2008 13:10:02 +0000 (13:10 +0000)]
'fix' comment

[r20478]

15 years agobitop,shift,constant test
Matthias Braun [Tue, 15 Jul 2008 13:07:08 +0000 (13:07 +0000)]
bitop,shift,constant test

[r20477]

15 years agolocalopts for bitoperations in combinations with shifts and constants
Matthias Braun [Tue, 15 Jul 2008 13:06:38 +0000 (13:06 +0000)]
localopts for bitoperations in combinations with shifts and constants

[r20476]

15 years agotypo
Sebastian Buchwald [Tue, 15 Jul 2008 09:26:42 +0000 (09:26 +0000)]
typo

[r20468]

15 years agomostly finished version of combo
Michael Beck [Mon, 14 Jul 2008 21:22:22 +0000 (21:22 +0000)]
mostly finished version of combo

[r20463]

15 years agovalue_of() is now a simple wrapper around a function pointer. This allows phases...
Michael Beck [Mon, 14 Jul 2008 21:21:38 +0000 (21:21 +0000)]
value_of() is now a simple wrapper around a function pointer. This allows phases to have its own value_of semantic (needed for the combo algorithm for instance).

set_value_of_func() can be used to set a new semantic or restore the default behavior.

[r20462]

15 years ago- when printing tarvals, differentiate between tarval_bad and tarval_undefined
Michael Beck [Mon, 14 Jul 2008 21:18:01 +0000 (21:18 +0000)]
- when printing tarvals, differentiate between tarval_bad and tarval_undefined

[r20461]

15 years ago- ia32_assign_exc_label() cannot take a const node: this fixes some warning
Michael Beck [Mon, 14 Jul 2008 21:16:49 +0000 (21:16 +0000)]
- ia32_assign_exc_label() cannot take a const node: this fixes some warning

[r20460]

15 years ago- add tarval_top and tarval_bottom as alias for tarval_undefined and tarval_bad
Michael Beck [Mon, 14 Jul 2008 21:14:43 +0000 (21:14 +0000)]
- add tarval_top and tarval_bottom as alias for tarval_undefined and tarval_bad

[r20459]

15 years agoirdump_grgen is moved
Matthias Braun [Mon, 14 Jul 2008 14:47:41 +0000 (14:47 +0000)]
irdump_grgen is moved

[r20458]

15 years agoinclude our own header file
Matthias Braun [Mon, 14 Jul 2008 14:47:32 +0000 (14:47 +0000)]
include our own header file

[r20457]

15 years agoremove unnecessary include
Matthias Braun [Mon, 14 Jul 2008 14:46:37 +0000 (14:46 +0000)]
remove unnecessary include

[r20456]

15 years agoresize should be declared INLINE
Matthias Braun [Mon, 14 Jul 2008 14:30:15 +0000 (14:30 +0000)]
resize should be declared INLINE

[r20455]

15 years agodon't emit debug messages
Matthias Braun [Mon, 14 Jul 2008 14:29:57 +0000 (14:29 +0000)]
don't emit debug messages

[r20454]

15 years agodon't emit N_EINCL/N_BINCL as it has to be a proper stack of header filenames apparen...
Matthias Braun [Mon, 14 Jul 2008 13:36:34 +0000 (13:36 +0000)]
don't emit N_EINCL/N_BINCL as it has to be a proper stack of header filenames apparently, we don't have that info anymore in firm. Instead use N_SOL which is good enough

[r20440]

15 years agoinitial version of Cliff Click's Combo Optimization
Michael Beck [Thu, 10 Jul 2008 13:46:32 +0000 (13:46 +0000)]
initial version of Cliff Click's Combo Optimization

[r20410]

15 years agofix some situations where too few spills were placed
Matthias Braun [Wed, 9 Jul 2008 21:13:03 +0000 (21:13 +0000)]
fix some situations where too few spills were placed

[r20402]

15 years agorevert accidental commit
Matthias Braun [Wed, 9 Jul 2008 18:00:24 +0000 (18:00 +0000)]
revert accidental commit

[r20400]

15 years agorevive belady late spilling
Matthias Braun [Wed, 9 Jul 2008 17:59:58 +0000 (17:59 +0000)]
revive belady late spilling

[r20399]

15 years agosome rot/shift by constant optimisations
Matthias Braun [Wed, 9 Jul 2008 17:04:41 +0000 (17:04 +0000)]
some rot/shift by constant optimisations

[r20397]

15 years agosmall reformating/cleanups
Matthias Braun [Wed, 9 Jul 2008 13:02:05 +0000 (13:02 +0000)]
small reformating/cleanups

[r20394]

15 years agofix warning
Matthias Braun [Wed, 9 Jul 2008 13:01:35 +0000 (13:01 +0000)]
fix warning

[r20393]

15 years agofix warnings
Matthias Braun [Wed, 9 Jul 2008 12:58:56 +0000 (12:58 +0000)]
fix warnings

[r20392]

15 years ago- fixed warnings
Michael Beck [Wed, 9 Jul 2008 02:11:36 +0000 (02:11 +0000)]
- fixed warnings

[r20383]

15 years ago -BugFix: exp_gen sets must be cleaned
Michael Beck [Wed, 9 Jul 2008 02:08:04 +0000 (02:08 +0000)]
 -BugFix: exp_gen sets must be cleaned

[r20382]

15 years ago- BugFix: Antic_in computation must always add exp_gen
Michael Beck [Wed, 9 Jul 2008 01:47:06 +0000 (01:47 +0000)]
- BugFix: Antic_in computation must always add exp_gen
- can handle Div/Mod/DivMod yet
- remove fully redundant expression from Antic_in (else iteration did not stop ???)

[r20381]

15 years ago- BugFix: *__remove_iterator(): after _next(), the iterator already points to the...
Michael Beck [Wed, 9 Jul 2008 01:27:44 +0000 (01:27 +0000)]
- BugFix: *__remove_iterator(): after _next(), the iterator already points to the next element

[r20380]

15 years ago- add a doxygen comment
Michael Beck [Tue, 8 Jul 2008 23:37:34 +0000 (23:37 +0000)]
- add a doxygen comment
- small improvement

[r20379]

15 years ago- small indentation changes
Michael Beck [Tue, 8 Jul 2008 23:04:20 +0000 (23:04 +0000)]
- small indentation changes

[r20377]

15 years ago- small cleanup
Michael Beck [Tue, 8 Jul 2008 23:03:26 +0000 (23:03 +0000)]
- small cleanup

[r20376]

15 years agofixed warnings
Michael Beck [Tue, 8 Jul 2008 16:50:25 +0000 (16:50 +0000)]
fixed warnings

[r20374]

15 years agoremoved unused (and buggy) trans_set, thios is NOT needed
Michael Beck [Tue, 8 Jul 2008 16:45:45 +0000 (16:45 +0000)]
removed unused (and buggy) trans_set, thios is NOT needed

[r20373]

15 years agofor now, deactivate edges, they will crash with this implementation
Michael Beck [Tue, 8 Jul 2008 16:30:02 +0000 (16:30 +0000)]
for now, deactivate edges, they will crash with this implementation

[r20371]

15 years agonew GVN-PRE implementation
Michael Beck [Tue, 8 Jul 2008 16:09:37 +0000 (16:09 +0000)]
new GVN-PRE implementation

[r20369]

15 years ago- ir_node_hash() now takes a const ir_node *
Michael Beck [Tue, 8 Jul 2008 13:01:14 +0000 (13:01 +0000)]
- ir_node_hash() now takes a const ir_node *
- removed identify(): this is really the same function as identify_remember() nowadays

[r20364]

16 years agolinked versions of irnodeset and irnodemap
Michael Beck [Thu, 3 Jul 2008 16:09:59 +0000 (16:09 +0000)]
linked versions of irnodeset and irnodemap

[r20331]

16 years agoallow derived hashsets to have an own resize
Michael Beck [Thu, 3 Jul 2008 16:09:08 +0000 (16:09 +0000)]
allow derived hashsets to have an own resize

[r20330]

16 years agofixed doxygen comment
Michael Beck [Thu, 3 Jul 2008 16:08:25 +0000 (16:08 +0000)]
fixed doxygen comment

[r20329]

16 years agofix warning
Matthias Braun [Tue, 1 Jul 2008 10:25:58 +0000 (10:25 +0000)]
fix warning

[r20296]

16 years ago- can build without iterator
Michael Beck [Mon, 30 Jun 2008 12:12:49 +0000 (12:12 +0000)]
- can build without iterator
- added ADDITIONAL_INIT and ADDITIONAL_TERM for initializing/terminating ADDITIONAL_DATA
- typos fixed

[r20290]

16 years agochange the costs for multiplication in the size case to reflect the 70% rule
Michael Beck [Fri, 27 Jun 2008 16:07:27 +0000 (16:07 +0000)]
change the costs for multiplication in the size case to reflect the 70% rule

[r20280]

16 years agodo a correct rounding when calculating 70%, or small cases did not get optimized...
Michael Beck [Fri, 27 Jun 2008 16:06:43 +0000 (16:06 +0000)]
do a correct rounding when calculating 70%, or small cases did not get optimized well

[r20279]

16 years agoadded be_peephole_before_exchange_and_kill() to fix the IncSP,IncSP jumping above...
Michael Beck [Fri, 27 Jun 2008 15:28:04 +0000 (15:28 +0000)]
added be_peephole_before_exchange_and_kill() to fix the IncSP,IncSP jumping above betwenn instructions problem

[r20277]

16 years agoFix transformation, when the load mem proj of a dest AM pattern has multiple users.
Christoph Mallon [Thu, 26 Jun 2008 17:31:22 +0000 (17:31 +0000)]
Fix transformation, when the load mem proj of a dest AM pattern has multiple users.

[r20272]

16 years agofixed stabs primitive types: must use decimal limits
Michael Beck [Wed, 25 Jun 2008 23:11:06 +0000 (23:11 +0000)]
fixed stabs primitive types: must use decimal limits

[r20258]

16 years ago- fixed ir_printf format (%lu and %ld now working)
Michael Beck [Wed, 25 Jun 2008 15:32:05 +0000 (15:32 +0000)]
- fixed ir_printf format (%lu and %ld now working)

[r20256]

16 years agofixed handling of modifiers (%ld works now)
Michael Beck [Wed, 25 Jun 2008 15:25:29 +0000 (15:25 +0000)]
fixed handling of modifiers (%ld works now)

[r20255]

16 years ago- BugFix: do NOT skip Loads generally, they might cretae data
Michael Beck [Wed, 25 Jun 2008 11:10:33 +0000 (11:10 +0000)]
- BugFix: do NOT skip Loads generally, they might cretae data
  dependencies

[r20254]

16 years ago- fixed stabs output
Michael Beck [Wed, 25 Jun 2008 01:28:53 +0000 (01:28 +0000)]
- fixed stabs output

[r20249]

16 years agofixed some bugs in the pop generation, still not all
Michael Beck [Wed, 25 Jun 2008 00:05:02 +0000 (00:05 +0000)]
fixed some bugs in the pop generation, still not all

[r20248]

16 years agoadd test for return padding
Michael Beck [Tue, 24 Jun 2008 23:16:42 +0000 (23:16 +0000)]
add test for return padding

[r20247]

16 years agoAdd ARM TstBra and use it for comparison with 0.
Christoph Mallon [Tue, 24 Jun 2008 18:08:48 +0000 (18:08 +0000)]
Add ARM TstBra and use it for comparison with 0.

[r20246]

16 years agoGammelfix: Add a be_Copy in the ARM prologue for the frame pointer to set the ignore...
Christoph Mallon [Tue, 24 Jun 2008 17:39:44 +0000 (17:39 +0000)]
Gammelfix: Add a be_Copy in the ARM prologue for the frame pointer to set the ignore flag.

[r20245]

16 years agoFix printing shift amount for ARM mov.
Christoph Mallon [Tue, 24 Jun 2008 17:38:43 +0000 (17:38 +0000)]
Fix printing shift amount for ARM mov.

[r20244]

16 years agoAdd 0x prefix for printing ARM IncSP amount in hex.
Christoph Mallon [Tue, 24 Jun 2008 17:37:21 +0000 (17:37 +0000)]
Add 0x prefix for printing ARM IncSP amount in hex.

[r20243]

16 years ago- added peephole optimization: transform Load->IncSP combinations to Pop where possible
Michael Beck [Tue, 24 Jun 2008 16:35:55 +0000 (16:35 +0000)]
- added peephole optimization: transform Load->IncSP combinations to Pop where possible

[r20241]

16 years agobetter usage
Michael Beck [Tue, 24 Jun 2008 13:46:08 +0000 (13:46 +0000)]
better usage

[r20236]

16 years agoFix parsing of debug commands.
Christoph Mallon [Mon, 23 Jun 2008 17:08:41 +0000 (17:08 +0000)]
Fix parsing of debug commands.

[r20226]

16 years agoanchor nodes are not real liveness users
Matthias Braun [Mon, 23 Jun 2008 15:28:03 +0000 (15:28 +0000)]
anchor nodes are not real liveness users

[r20224]

16 years agoconvert rotl x, const into rotr x,32-const
Michael Beck [Mon, 23 Jun 2008 14:49:38 +0000 (14:49 +0000)]
convert rotl x, const into rotr x,32-const

[r20223]

16 years agoImproved version of gen_Rotl()
Michael Beck [Mon, 23 Jun 2008 14:29:13 +0000 (14:29 +0000)]
Improved version of gen_Rotl()

[r20221]

16 years ago- add support for Rotl
Michael Beck [Mon, 23 Jun 2008 13:34:36 +0000 (13:34 +0000)]
- add support for Rotl
- fixed RRX comment
- fixed constraints for ARM shift operations

[r20220]

16 years agoBugFix: always emit the block label for labelled blocks (this fixes extgoto.c)
Michael Beck [Mon, 23 Jun 2008 12:53:54 +0000 (12:53 +0000)]
BugFix: always emit the block label for labelled blocks (this fixes extgoto.c)

[r20216]

16 years agoBugFix: cannot change the pin state of already pinned nodes
Michael Beck [Mon, 23 Jun 2008 12:46:39 +0000 (12:46 +0000)]
BugFix: cannot change the pin state of already pinned nodes

[r20215]

16 years ago- make is_arg_Proj() global
Michael Beck [Fri, 20 Jun 2008 13:51:29 +0000 (13:51 +0000)]
- make is_arg_Proj() global

[r20195]

16 years agodump the modify_flags flag, too
Andreas Zwinkau [Fri, 20 Jun 2008 12:28:27 +0000 (12:28 +0000)]
dump the modify_flags flag, too

[r20188]

16 years ago- reduce complexity of remove_End_keepalive()
Michael Beck [Thu, 19 Jun 2008 12:16:38 +0000 (12:16 +0000)]
- reduce complexity of remove_End_keepalive()
- add a comment that set_End_keepalives() may have high complexity costs in Backend

[r20174]

16 years agofixed indentation
Michael Beck [Thu, 19 Jun 2008 11:49:37 +0000 (11:49 +0000)]
fixed indentation

[r20173]

16 years ago- BugFix: whech checking Blocks, is_Block_dead() must been used.
Michael Beck [Thu, 19 Jun 2008 10:47:04 +0000 (10:47 +0000)]
- BugFix: whech checking Blocks, is_Block_dead() must been used.
  This should fix SPEC vpr
- set the changed flag if we skip a tuple

[r20172]

16 years ago- be_peephole_IncSP_IncSP() must return the new node
Michael Beck [Thu, 19 Jun 2008 03:55:54 +0000 (03:55 +0000)]
- be_peephole_IncSP_IncSP() must return the new node

[r20167]

16 years agodisable CSE in PBQP-transform phase, this is necessary since we create raw nodes...
Sebastian Buchwald [Wed, 18 Jun 2008 21:36:47 +0000 (21:36 +0000)]
disable CSE in PBQP-transform phase, this is necessary since we create raw nodes (step one) before setting the right attributes (step two) and CSE between the steps are deadly

[r20165]

16 years ago- BugFix: add missing reroute
Michael Beck [Wed, 18 Jun 2008 20:54:10 +0000 (20:54 +0000)]
- BugFix: add missing reroute

[r20162]

16 years ago- BugFix: when peephole combines two IncSP nodes, let the first one survive, not...
Michael Beck [Wed, 18 Jun 2008 20:39:12 +0000 (20:39 +0000)]
- BugFix: when peephole combines two IncSP nodes, let the first one survive, not the second one

[r20161]

16 years ago- fixed architecture flags
Michael Beck [Wed, 18 Jun 2008 19:19:11 +0000 (19:19 +0000)]
- fixed architecture flags

[r20160]

16 years agoAvoid endless iteration when normalising returns.
Christoph Mallon [Wed, 18 Jun 2008 16:32:10 +0000 (16:32 +0000)]
Avoid endless iteration when normalising returns.

[r20155]

16 years ago- make normalize_n_returns() more aggressive: remove critical edges if needed
Michael Beck [Wed, 18 Jun 2008 16:22:53 +0000 (16:22 +0000)]
- make normalize_n_returns() more aggressive: remove critical edges if needed

[r20154]

16 years agoBugFix: must initialize Blocks with removable
Michael Beck [Wed, 18 Jun 2008 15:00:42 +0000 (15:00 +0000)]
BugFix: must initialize Blocks with removable

[r20153]

16 years agoHopefully better version of control flow optimization:
Michael Beck [Wed, 18 Jun 2008 12:32:57 +0000 (12:32 +0000)]
Hopefully better version of control flow optimization:
 - use the mark flag instead of the block visited flag: makes code better
   understandable and needs less iterations
 - combine deletion of unreable code AND useless Conds saving one block walk
 - iteration only used for SwitchConds yet
 - unreachable code is always removed yet (Backend cannot cope with it either)

[r20150]

16 years ago- removed old if 0'ed code
Michael Beck [Wed, 18 Jun 2008 10:07:59 +0000 (10:07 +0000)]
- removed old if 0'ed code
- add some doxygen comments

[r20144]

16 years ago- renamed function to clarify its intention
Michael Beck [Tue, 17 Jun 2008 13:34:14 +0000 (13:34 +0000)]
- renamed function to clarify its intention

[r20136]

16 years ago- useless variable removed
Michael Beck [Tue, 17 Jun 2008 13:33:30 +0000 (13:33 +0000)]
- useless variable removed

[r20134]

16 years ago- Bugfix: peephole_IncSP_Store_to_push(): collect the storeslots in the right order...
Michael Beck [Tue, 17 Jun 2008 13:29:24 +0000 (13:29 +0000)]
- Bugfix: peephole_IncSP_Store_to_push(): collect the storeslots in the right order using the right offset ...

[r20133]

16 years agoinvalidate loop-info if blocks were removed
Michael Beck [Mon, 16 Jun 2008 18:22:39 +0000 (18:22 +0000)]
invalidate loop-info if blocks were removed

[r20121]

16 years agofixed some warnings
Michael Beck [Fri, 13 Jun 2008 10:14:35 +0000 (10:14 +0000)]
fixed some warnings

[r20084]

16 years agodisable the standard transform, if pbqp_transform is used
Andreas Zwinkau [Thu, 12 Jun 2008 13:40:54 +0000 (13:40 +0000)]
disable the standard transform, if pbqp_transform is used

[r20079]

16 years agoworkaround for dead CF: restart the optimization
Michael Beck [Thu, 12 Jun 2008 11:18:29 +0000 (11:18 +0000)]
workaround for dead CF: restart the optimization

[r20076]

16 years ago- add doxygen comment
Michael Beck [Thu, 12 Jun 2008 01:39:41 +0000 (01:39 +0000)]
- add doxygen comment

[r20073]

16 years ago- unfinished work to support exception label lookup
Michael Beck [Thu, 12 Jun 2008 01:38:48 +0000 (01:38 +0000)]
- unfinished work to support exception label lookup

[r20072]

16 years agoBugFix: schedule the Stc instruction
Michael Beck [Thu, 12 Jun 2008 00:34:57 +0000 (00:34 +0000)]
BugFix: schedule the Stc instruction

[r20071]

16 years ago- removed critical exception edges, so perm code can be placed at landing pads
Michael Beck [Thu, 12 Jun 2008 00:19:42 +0000 (00:19 +0000)]
- removed critical exception edges, so perm code can be placed at landing pads

[r20070]