Matthias Braun [Mon, 12 Jun 2006 08:27:28 +0000 (08:27 +0000)]
fibonacci test program
Matthias Braun [Mon, 12 Jun 2006 08:25:49 +0000 (08:25 +0000)]
fixed bug where morgan spiller was spilling more values than needed
Matthias Braun [Fri, 9 Jun 2006 14:32:48 +0000 (14:32 +0000)]
- fix belady bug: don't abort search for phis when we find 1 that is not our regclass
Matthias Braun [Fri, 9 Jun 2006 13:57:44 +0000 (13:57 +0000)]
- call be_spill_phi if we remove phis from belady block startset
Matthias Braun [Fri, 9 Jun 2006 13:29:11 +0000 (13:29 +0000)]
- There is a difference between spilling a whole phi or only spilling the result of a phi. Change belady spiller to respect this (again)
Adam Szalkowski [Fri, 9 Jun 2006 09:06:18 +0000 (09:06 +0000)]
pressure stats
Matthias Braun [Thu, 8 Jun 2006 15:21:26 +0000 (15:21 +0000)]
- Fixed bug in spilling: phi nodes that depend on itself should generate loops in the mem-phi as well
Matthias Braun [Thu, 8 Jun 2006 13:08:49 +0000 (13:08 +0000)]
- make belady handle dont_spill nodes correctly again (was broken in my last commit)
Matthias Braun [Thu, 8 Jun 2006 12:12:26 +0000 (12:12 +0000)]
- fix wrong verify warnings about phi nodes using values before they are defined
- beladie spiller completely ignores ignore register now
Michael Beck [Thu, 8 Jun 2006 02:45:39 +0000 (02:45 +0000)]
Added code to support the value based type (compound parameter calls)
Michael Beck [Thu, 8 Jun 2006 02:36:19 +0000 (02:36 +0000)]
between type might be a struct, set the layout to fixed
Michael Beck [Thu, 8 Jun 2006 02:35:40 +0000 (02:35 +0000)]
BugFix: CLD was emitted twice
Michael Beck [Wed, 7 Jun 2006 23:03:10 +0000 (23:03 +0000)]
init_sp Unknown node constructed with CSE disabled
Michael Beck [Wed, 7 Jun 2006 23:01:10 +0000 (23:01 +0000)]
use save_optimization_state() restore_optimization_state()
doxygen docu added
Michael Beck [Wed, 7 Jun 2006 15:54:53 +0000 (15:54 +0000)]
test for compound call
Matthias Braun [Wed, 7 Jun 2006 15:36:55 +0000 (15:36 +0000)]
- removed some more obsolete code
Matthias Braun [Wed, 7 Jun 2006 15:34:06 +0000 (15:34 +0000)]
- removed now obsolete code
Matthias Braun [Wed, 7 Jun 2006 15:31:00 +0000 (15:31 +0000)]
- Don't use a callback for deciding whether to spill phi nodes
- Morgan now calls be_spill_phi when spilling phi nodes
- no need to use beinsn in morgan analysis phase, simple iterating over in_edges is enough
- fixed bug in morgan spiller that marked some values as livethrough unused which were not
Matthias Braun [Wed, 7 Jun 2006 09:19:47 +0000 (09:19 +0000)]
fix a few memory leaks
Christian Würdig [Wed, 7 Jun 2006 08:52:32 +0000 (08:52 +0000)]
added space
Christian Würdig [Wed, 7 Jun 2006 08:51:35 +0000 (08:51 +0000)]
annotate mode to Store link field, to prevent loss of mode when optimizing fp converts
Adam Szalkowski [Tue, 6 Jun 2006 16:53:01 +0000 (16:53 +0000)]
seems to work now (still spill slot splitting to be done)
Michael Beck [Tue, 6 Jun 2006 13:38:04 +0000 (13:38 +0000)]
BugFix: ia32_finish_irg() uses height, that uses new block walks
so we push all blocks on a waitq first :-(
Michael Beck [Tue, 6 Jun 2006 12:07:45 +0000 (12:07 +0000)]
use xmalloc instead of malloc
Adam Szalkowski [Tue, 6 Jun 2006 09:27:20 +0000 (09:27 +0000)]
goodwin gammlich
Adam Szalkowski [Mon, 5 Jun 2006 14:45:32 +0000 (14:45 +0000)]
restoring old version - changes were unnecessary
Adam Szalkowski [Mon, 5 Jun 2006 14:11:22 +0000 (14:11 +0000)]
computing execfreq from bb, just to be sure
Adam Szalkowski [Mon, 5 Jun 2006 14:00:05 +0000 (14:00 +0000)]
wrong irn number in ilp variable name
Adam Szalkowski [Sun, 4 Jun 2006 20:05:30 +0000 (20:05 +0000)]
not functional goodwin reduction
Christian Würdig [Sun, 4 Jun 2006 14:59:26 +0000 (14:59 +0000)]
implemented solution for following problem: fst cannot store 80bit values
BugFix: x87_create_fpush pushed the wrong register
extended x87_push: allow double push
Christian Würdig [Sun, 4 Jun 2006 14:56:51 +0000 (14:56 +0000)]
BugFix: do not schedule memory proj when creating store for spill
Christian Würdig [Sun, 4 Jun 2006 14:55:20 +0000 (14:55 +0000)]
fixed indent
Adam Szalkowski [Fri, 2 Jun 2006 15:48:33 +0000 (15:48 +0000)]
fixed inverse ops a little bit
Christian Würdig [Fri, 2 Jun 2006 12:19:45 +0000 (12:19 +0000)]
fixed Push optimizer
Christian Würdig [Fri, 2 Jun 2006 12:19:32 +0000 (12:19 +0000)]
added missing emitter for CopyKeep
Christian Würdig [Fri, 2 Jun 2006 12:19:16 +0000 (12:19 +0000)]
added get/set for CopyKeep operand
Christian Würdig [Fri, 2 Jun 2006 09:45:54 +0000 (09:45 +0000)]
fixed indent in comment
Christian Würdig [Fri, 2 Jun 2006 09:45:36 +0000 (09:45 +0000)]
slightly extended node dump
Christian Würdig [Fri, 2 Jun 2006 08:13:44 +0000 (08:13 +0000)]
fixed indent
added cvs id
Christian Würdig [Fri, 2 Jun 2006 08:13:31 +0000 (08:13 +0000)]
fixed indent
Christian Würdig [Fri, 2 Jun 2006 08:12:21 +0000 (08:12 +0000)]
put results into separate result dir
all results are named xxx_failed.txt now
Christian Würdig [Fri, 2 Jun 2006 08:11:38 +0000 (08:11 +0000)]
don't compare EmptyFor
added result dir
Christian Würdig [Thu, 1 Jun 2006 15:34:29 +0000 (15:34 +0000)]
fixed address mode optimizer
Michael Beck [Thu, 1 Jun 2006 15:34:13 +0000 (15:34 +0000)]
Handle NULL mode_P tarvals
Matthias Braun [Thu, 1 Jun 2006 12:52:21 +0000 (12:52 +0000)]
oops
Johannes Spallek [Thu, 1 Jun 2006 12:46:16 +0000 (12:46 +0000)]
changed ifg->nodes_interfere to values_interfere because the local ifg is out of date at this point
Christian Würdig [Thu, 1 Jun 2006 12:21:51 +0000 (12:21 +0000)]
use verify options from chordal env
Johannes Spallek [Thu, 1 Jun 2006 12:15:24 +0000 (12:15 +0000)]
added convert to keep compiler happy
Christian Würdig [Thu, 1 Jun 2006 11:59:58 +0000 (11:59 +0000)]
changed assert caused by killed Conv signed <-> unsigned
fixed indent and comments
Christian Würdig [Thu, 1 Jun 2006 10:08:06 +0000 (10:08 +0000)]
added additional ifg flavour options
Christian Würdig [Thu, 1 Jun 2006 09:59:23 +0000 (09:59 +0000)]
added ifg implementations
Matthias Braun [Thu, 1 Jun 2006 09:14:35 +0000 (09:14 +0000)]
- use an external Makefile.config for the test/Makefile that is not comitted to cvs so that everyone can have its personal settings/flags
Matthias Braun [Thu, 1 Jun 2006 09:10:55 +0000 (09:10 +0000)]
- belady spiller places its copy nodes smarter now
- new verifier test, that values in a block aren't used before they are defined
Adam Szalkowski [Wed, 31 May 2006 19:05:51 +0000 (19:05 +0000)]
using execfreq as default
Sebastian Hack [Wed, 31 May 2006 17:19:47 +0000 (17:19 +0000)]
Removed old and unneeded stuff
Sebastian Hack [Wed, 31 May 2006 16:16:53 +0000 (16:16 +0000)]
Made it compile under vc2005
Adam Szalkowski [Wed, 31 May 2006 15:33:47 +0000 (15:33 +0000)]
implemented a function to retrieve estimated costs of an op
Johannes Spallek [Wed, 31 May 2006 15:19:01 +0000 (15:19 +0000)]
added check functions for the creation of the ifg
Johannes Spallek [Wed, 31 May 2006 15:16:01 +0000 (15:16 +0000)]
Added new check functions to check the correctness of an previous created ifg
Johannes Spallek [Wed, 31 May 2006 15:14:27 +0000 (15:14 +0000)]
added a checker for the implementations (creation of an ifg)
Johannes Spallek [Wed, 31 May 2006 15:13:05 +0000 (15:13 +0000)]
added new implementations to create an ifg
Adam Szalkowski [Wed, 31 May 2006 15:09:36 +0000 (15:09 +0000)]
dumping inverse remats in cyan color
modified insertion of remat2s at top of blocks
Christian Würdig [Wed, 31 May 2006 14:29:03 +0000 (14:29 +0000)]
BugFix: copy mode when creating inverse operation
Matthias Braun [Wed, 31 May 2006 12:59:04 +0000 (12:59 +0000)]
- oops, debug code was in cvs
Matthias Braun [Wed, 31 May 2006 12:10:13 +0000 (12:10 +0000)]
- use foreach_out_edge_safe in remove_copies
Christian Würdig [Wed, 31 May 2006 09:18:39 +0000 (09:18 +0000)]
fixed Psi generation (get inversed instead of negated compare condition)
Christian Würdig [Wed, 31 May 2006 08:59:20 +0000 (08:59 +0000)]
fixed struct initializer
removed unsused variable
Adam Szalkowski [Tue, 30 May 2006 15:35:43 +0000 (15:35 +0000)]
use loop depth for computing execution frequencies by default
Christian Würdig [Tue, 30 May 2006 14:52:37 +0000 (14:52 +0000)]
fixed MulS/Mulh generation
Christian Würdig [Tue, 30 May 2006 14:52:24 +0000 (14:52 +0000)]
fixed MulS/Mulh requirements
Christian Würdig [Tue, 30 May 2006 14:52:02 +0000 (14:52 +0000)]
added xCondJmp emitter
fixed MulS/Mulh emit
Adam Szalkowski [Tue, 30 May 2006 14:43:54 +0000 (14:43 +0000)]
committing ilp based spilling
bespillappel not yet functional, ssa destruction moved outside of beraextern for use in bespillappel
Christian Würdig [Tue, 30 May 2006 13:28:08 +0000 (13:28 +0000)]
fixed fp modes for x87 converts
fixed CRLF
Christian Würdig [Tue, 30 May 2006 13:27:24 +0000 (13:27 +0000)]
added missing % for fucom instruction
Christian Würdig [Tue, 30 May 2006 12:10:46 +0000 (12:10 +0000)]
fixed proj num mapping
Christian Würdig [Tue, 30 May 2006 12:10:10 +0000 (12:10 +0000)]
mris must be enabled explicitly now
Christian Würdig [Tue, 30 May 2006 12:09:49 +0000 (12:09 +0000)]
added option for verifier
mris is now disabled by default
Christian Würdig [Tue, 30 May 2006 12:08:59 +0000 (12:08 +0000)]
added option for verifier
Christian Würdig [Tue, 30 May 2006 09:05:36 +0000 (09:05 +0000)]
added cvs id
updated comments
Christian Würdig [Tue, 30 May 2006 09:02:35 +0000 (09:02 +0000)]
added comments
fixed indents
fixed CRLF
Matthias Braun [Mon, 29 May 2006 15:46:38 +0000 (15:46 +0000)]
* changed verfier to handle delay_slots (theoretically...)
* verify functions don"t assert anymore but return int
Christian Würdig [Mon, 29 May 2006 14:22:18 +0000 (14:22 +0000)]
fixed asserting on modes
Christian Würdig [Mon, 29 May 2006 14:10:11 +0000 (14:10 +0000)]
added check for some virtual fp loads
Christian Würdig [Mon, 29 May 2006 14:09:47 +0000 (14:09 +0000)]
added lowering for lowered intrinsic operations
Christian Würdig [Mon, 29 May 2006 14:09:28 +0000 (14:09 +0000)]
added nodes for intrinsic lowering
Christian Würdig [Mon, 29 May 2006 14:08:51 +0000 (14:08 +0000)]
added Div, Mod and Conv mapping
Christian Würdig [Mon, 29 May 2006 14:08:13 +0000 (14:08 +0000)]
added new environment for intrinsic lowering
fixed indents
Christian Würdig [Mon, 29 May 2006 14:07:36 +0000 (14:07 +0000)]
enable sse and x87 at the same time
Christian Würdig [Mon, 29 May 2006 14:05:34 +0000 (14:05 +0000)]
uses bitsets to determine already visited phi nodes while spilling
Christian Würdig [Mon, 29 May 2006 14:04:22 +0000 (14:04 +0000)]
switch off firm optimization setting for certain backend phases
Michael Beck [Mon, 29 May 2006 13:40:20 +0000 (13:40 +0000)]
renamed symconst_size to symconst_type_size
added symconst_type_align
Michael Beck [Mon, 29 May 2006 13:38:00 +0000 (13:38 +0000)]
added code to compile with libcore disableadded code to compile with libcore disabled
Matthias Braun [Mon, 29 May 2006 13:14:25 +0000 (13:14 +0000)]
dont stop when compilation failed
Matthias Braun [Mon, 29 May 2006 13:12:38 +0000 (13:12 +0000)]
update
Matthias Braun [Mon, 29 May 2006 13:09:21 +0000 (13:09 +0000)]
updated Makefile
Matthias Braun [Mon, 29 May 2006 13:03:11 +0000 (13:03 +0000)]
cvsignore update
Matthias Braun [Mon, 29 May 2006 13:02:40 +0000 (13:02 +0000)]
new Makefile for test programs
Matthias Braun [Sun, 28 May 2006 09:12:13 +0000 (09:12 +0000)]
updated Makefile.in
Matthias Braun [Fri, 26 May 2006 14:54:54 +0000 (14:54 +0000)]
- removed code from belady spiller that removes unused reloads, we eleminate them anyway in the remove_dead_nodes_from_sched phase
- worked around a bug in out_edges stuff
Matthias Braun [Fri, 26 May 2006 13:38:52 +0000 (13:38 +0000)]
- Added a function that finds and removes dead nodes from schedule
- Use this function in bespill.c, simplifies it and fixes some bugs
- Renamed the misleading is_mem_phi to is_spilled_phi
- Fixed bug where the morgan spiller was invoking the belady spiller without resetting the is_spilled_phi function