Matthias Braun [Tue, 29 Aug 2006 09:06:20 +0000 (09:06 +0000)]
some misc scripts that I used to play around with the backend
Sebastian Hack [Tue, 29 Aug 2006 08:27:26 +0000 (08:27 +0000)]
Keep alive the call proj
Earlier, that Proj was used by the IncSP
now, there is only a dependency edge
Matthias Braun [Mon, 28 Aug 2006 14:38:03 +0000 (14:38 +0000)]
negate pnc not invert it
Sebastian Hack [Mon, 28 Aug 2006 13:48:01 +0000 (13:48 +0000)]
Several bug fixes
Adapted to the new dependency edges
Christian Würdig [Mon, 28 Aug 2006 13:41:50 +0000 (13:41 +0000)]
translate proj pos for Leave
Matthias Braun [Mon, 28 Aug 2006 13:29:12 +0000 (13:29 +0000)]
fix wrong inputs for psiconds
Christian Würdig [Mon, 28 Aug 2006 13:06:31 +0000 (13:06 +0000)]
PsiCondCMov doesn't need constraint copy
Matthias Braun [Mon, 28 Aug 2006 12:21:55 +0000 (12:21 +0000)]
ask abi about ignore regs
Matthias Braun [Mon, 28 Aug 2006 11:55:07 +0000 (11:55 +0000)]
fix wrong sorting of affinity edges
Adam Szalkowski [Mon, 28 Aug 2006 10:01:21 +0000 (10:01 +0000)]
we NEED to insert reloads at the end of a basic block! reverted to old version
Matthias Braun [Mon, 28 Aug 2006 08:24:52 +0000 (08:24 +0000)]
revert commit that placed consts in startblock, the old code did an equally good job (though a bit slower) and avoided placing consts into the prologe
Adam Szalkowski [Mon, 28 Aug 2006 07:49:24 +0000 (07:49 +0000)]
keine Ahnung
Matthias Braun [Sun, 27 Aug 2006 18:44:13 +0000 (18:44 +0000)]
- Simply place Constants into the start block, spilling+remat will take care
of a mort smart placement
- (Also forgot to mention in my last committ that I fixed a bug that sometimes
produced double spills in the morgan spiller)
Matthias Braun [Sun, 27 Aug 2006 18:25:07 +0000 (18:25 +0000)]
- Fix perform_memop stuff in bechordal_main after adams gammlig commit
- Cleanup remat code a little bit
- Adjust remat cost limit to new costs in ia32 backend
- Don't spill unused livethroughs around blocks anymore in bespill_morgan
(but only around loops), this makes the code faster smaller and the results
slightly better as belady performs better for basic blocks
Adam Szalkowski [Sat, 26 Aug 2006 08:04:53 +0000 (08:04 +0000)]
get frame from irg instead from spill (the spill could be a PhiM!)
Adam Szalkowski [Sat, 26 Aug 2006 07:27:21 +0000 (07:27 +0000)]
perform_memory operand now takes a spill instead of a reload
Christian Würdig [Fri, 25 Aug 2006 14:43:49 +0000 (14:43 +0000)]
fixed be_Call handling
Christian Würdig [Fri, 25 Aug 2006 14:43:12 +0000 (14:43 +0000)]
added additional latencies for Load/Store
Adam Szalkowski [Fri, 25 Aug 2006 14:03:32 +0000 (14:03 +0000)]
scheint jetzt etwas gammlich zu sein :(
Michael Beck [Fri, 25 Aug 2006 12:56:48 +0000 (12:56 +0000)]
BugFix:
- Constants for SSE minus and ABS must be of mode Iu and Lu instead od F and D ...
Christian Würdig [Fri, 25 Aug 2006 11:46:55 +0000 (11:46 +0000)]
set links properly for OLD and NEW results
Christian Würdig [Fri, 25 Aug 2006 10:23:18 +0000 (10:23 +0000)]
removed bechordalspill.c (does not longer exist)
Michael Beck [Fri, 25 Aug 2006 09:18:45 +0000 (09:18 +0000)]
Bugfix:
- x87_fpop now has NO argument (ra verifier fails otherwise due to wrong
live time)
Adam Szalkowski [Thu, 24 Aug 2006 17:04:03 +0000 (17:04 +0000)]
do not schedule phi_M
Michael Beck [Thu, 24 Aug 2006 16:27:47 +0000 (16:27 +0000)]
BugFix:
- fcom set the wrong register
Added support for floating point Perm
Added preliminary suport for the "unknown reg" to be_Copy
Michael Beck [Thu, 24 Aug 2006 16:26:21 +0000 (16:26 +0000)]
BugFix:
- emitting fcom instructions completely broken
- added support for floating point Perm
Matthias Braun [Thu, 24 Aug 2006 15:14:01 +0000 (15:14 +0000)]
- New callback to ask nodes about constant stack pointer adjustment
- Make ia32_Push and ia32_Pop return their stackpointer adjustment
- replaced stack_dir enum + unsigned offsets with normal integer offsets
- make schedule verifier detect dead nodes in schedule
Christian Würdig [Thu, 24 Aug 2006 13:19:24 +0000 (13:19 +0000)]
added links for results and diff
Michael Beck [Thu, 24 Aug 2006 12:11:57 +0000 (12:11 +0000)]
fixed INLINE macro
Michael Beck [Thu, 24 Aug 2006 10:48:16 +0000 (10:48 +0000)]
Fixed liveness calculation: we need the live arguments, not registers ...
Michael Beck [Thu, 24 Aug 2006 10:47:25 +0000 (10:47 +0000)]
fixed debug output of unary x87 nodes
Adam Szalkowski [Thu, 24 Aug 2006 09:10:11 +0000 (09:10 +0000)]
spill slots are handled by matze
Matthias Braun [Wed, 23 Aug 2006 19:26:45 +0000 (19:26 +0000)]
old code
Matthias Braun [Wed, 23 Aug 2006 18:57:03 +0000 (18:57 +0000)]
- Fix a few warnings
- Transform #define nodeset functions to typesafe inline functions
Adam Szalkowski [Wed, 23 Aug 2006 15:40:22 +0000 (15:40 +0000)]
scheint nun fluffig zu sein
Matthias Braun [Tue, 22 Aug 2006 09:03:10 +0000 (09:03 +0000)]
make testapp look nicer
Matthias Braun [Tue, 22 Aug 2006 06:55:35 +0000 (06:55 +0000)]
bugfix for preds: comment
Matthias Braun [Tue, 22 Aug 2006 06:46:57 +0000 (06:46 +0000)]
- More verification checks before code emit
- Respect vrfy option
Matthias Braun [Tue, 22 Aug 2006 06:08:41 +0000 (06:08 +0000)]
- at blockstart emit list of predblocks in comment
- when turning adressmode nodes back to normal nodes, set base and index input
to NoReg
Matthias Braun [Tue, 22 Aug 2006 06:06:43 +0000 (06:06 +0000)]
missing return 0s
Adam Szalkowski [Mon, 21 Aug 2006 16:42:28 +0000 (16:42 +0000)]
bugs weggeflufft
Christian Würdig [Mon, 21 Aug 2006 15:12:44 +0000 (15:12 +0000)]
some minor changes
Christian Würdig [Mon, 21 Aug 2006 15:12:15 +0000 (15:12 +0000)]
added return 0 to keep makereport happy
Christian Würdig [Mon, 21 Aug 2006 14:26:08 +0000 (14:26 +0000)]
slight bugfix
Christian Würdig [Mon, 21 Aug 2006 14:25:01 +0000 (14:25 +0000)]
call xsltproc to create html
Christian Würdig [Mon, 21 Aug 2006 13:58:40 +0000 (13:58 +0000)]
added variables to set timeout for compile and running time
Christian Würdig [Mon, 21 Aug 2006 13:02:55 +0000 (13:02 +0000)]
moved backend init call after processing calls
Christian Würdig [Mon, 21 Aug 2006 13:01:42 +0000 (13:01 +0000)]
fixed some indent
Christian Würdig [Mon, 21 Aug 2006 09:27:04 +0000 (09:27 +0000)]
fixed am again
Christian Würdig [Fri, 18 Aug 2006 15:23:44 +0000 (15:23 +0000)]
fixed lea shift consuming
Christian Würdig [Fri, 18 Aug 2006 14:44:11 +0000 (14:44 +0000)]
extended test
Christian Würdig [Fri, 18 Aug 2006 14:14:00 +0000 (14:14 +0000)]
another long long test
Christian Würdig [Fri, 18 Aug 2006 14:12:29 +0000 (14:12 +0000)]
run in loop
Christian Würdig [Fri, 18 Aug 2006 14:11:03 +0000 (14:11 +0000)]
iterative fibonacci
Christian Würdig [Fri, 18 Aug 2006 14:09:32 +0000 (14:09 +0000)]
another floating point conv test
Christian Würdig [Fri, 18 Aug 2006 14:07:53 +0000 (14:07 +0000)]
and another conv test
Christian Würdig [Fri, 18 Aug 2006 13:40:15 +0000 (13:40 +0000)]
BugFix: collect_stacknodes collected mode_T and mode_M nodes
Christian Würdig [Fri, 18 Aug 2006 12:58:33 +0000 (12:58 +0000)]
fixed indent
Christian Würdig [Fri, 18 Aug 2006 12:58:18 +0000 (12:58 +0000)]
BugFix: remove values which are dead for sure from workset (especially don't spill ones)
added macro to get workset entry time
fixed comments
fixed indents
Christian Würdig [Fri, 18 Aug 2006 12:55:41 +0000 (12:55 +0000)]
fixed typo
added verification: check for don't spill flag when creating spill
Christian Würdig [Fri, 18 Aug 2006 12:54:48 +0000 (12:54 +0000)]
is_scheduled flag is now unsigned
Christian Würdig [Fri, 18 Aug 2006 12:54:13 +0000 (12:54 +0000)]
BugFix: set commutative flag for some node generated in gen_Psi
Christian Würdig [Fri, 18 Aug 2006 12:53:27 +0000 (12:53 +0000)]
added support for unordered fp compare
Adam Szalkowski [Thu, 17 Aug 2006 12:38:05 +0000 (12:38 +0000)]
minor fixes
Christian Würdig [Thu, 17 Aug 2006 10:49:44 +0000 (10:49 +0000)]
added code to avoid unordered fp compares
Christian Würdig [Thu, 17 Aug 2006 10:48:08 +0000 (10:48 +0000)]
changed optiona values for sched selector
fixed CRLF
Christian Würdig [Thu, 17 Aug 2006 10:47:37 +0000 (10:47 +0000)]
adjusted heuristic node selector
fixed CRLF
Michael Beck [Wed, 16 Aug 2006 13:30:29 +0000 (13:30 +0000)]
BugFix:
- cached liveness information now for any node BEFORE patching the graph:
this fixes the problem that the liveness is wrong after predecessors
of Phi nodes are patched tp fxch and fpush and should speed up the
simulator because the complexity lowers from O(n^2) to O(n)
- fixed wrong cases for reverse operations ... again
Michael Beck [Wed, 16 Aug 2006 13:27:59 +0000 (13:27 +0000)]
BugFix:
- fixed debug output for x87 floating point nodes (uncritical)
Christian Würdig [Tue, 15 Aug 2006 16:16:54 +0000 (16:16 +0000)]
added some new backend options
fixed debugging in list scheduler
Christian Würdig [Tue, 15 Aug 2006 16:15:19 +0000 (16:15 +0000)]
fixed constraint for SubC
Michael Beck [Tue, 15 Aug 2006 16:00:43 +0000 (16:00 +0000)]
BugFix:
- removed the kludge double push hack
- some minor bugs fixed
Michael Beck [Tue, 15 Aug 2006 15:59:12 +0000 (15:59 +0000)]
improved verifier: shows now all nodes using the same register
Christian Würdig [Tue, 15 Aug 2006 15:08:01 +0000 (15:08 +0000)]
adapted to some new backend structures
Christian Würdig [Tue, 15 Aug 2006 15:02:16 +0000 (15:02 +0000)]
adapted to new irn init function
Christian Würdig [Tue, 15 Aug 2006 14:20:50 +0000 (14:20 +0000)]
added heuristic selection from mueller diss
Christian Würdig [Tue, 15 Aug 2006 14:20:33 +0000 (14:20 +0000)]
fixed indent
Christian Würdig [Tue, 15 Aug 2006 14:19:47 +0000 (14:19 +0000)]
added function to retrieve irn ops
Christian Würdig [Tue, 15 Aug 2006 14:19:12 +0000 (14:19 +0000)]
fixed typo
Christian Würdig [Tue, 15 Aug 2006 14:18:41 +0000 (14:18 +0000)]
fixed PsiF
Christian Würdig [Tue, 15 Aug 2006 13:50:18 +0000 (13:50 +0000)]
added latency
Christian Würdig [Tue, 15 Aug 2006 13:50:02 +0000 (13:50 +0000)]
added latency attribute
Christian Würdig [Tue, 15 Aug 2006 13:49:38 +0000 (13:49 +0000)]
fixed xCmp emitter
Christian Würdig [Tue, 15 Aug 2006 13:49:11 +0000 (13:49 +0000)]
added instruction latency
Matthias Braun [Mon, 14 Aug 2006 14:52:48 +0000 (14:52 +0000)]
correct fix
Christian Würdig [Mon, 14 Aug 2006 14:38:54 +0000 (14:38 +0000)]
Added set containing Conv nodes to be killed
Christian Würdig [Mon, 14 Aug 2006 14:15:20 +0000 (14:15 +0000)]
create all convs, remember those to be killed and kill them after transformation (to preserve modes during transformation)
Matthias Braun [Mon, 14 Aug 2006 12:31:33 +0000 (12:31 +0000)]
more compilerhangs
Matthias Braun [Mon, 14 Aug 2006 12:18:23 +0000 (12:18 +0000)]
fix for looping memphis
Sebastian Hack [Mon, 14 Aug 2006 12:01:34 +0000 (12:01 +0000)]
Adding copies for arguments that occur multiple times constrained
Sebastian Hack [Mon, 14 Aug 2006 11:43:53 +0000 (11:43 +0000)]
More precise copy insertion for constrained instructions
Matthias Braun [Mon, 14 Aug 2006 09:27:38 +0000 (09:27 +0000)]
- don't use C99isms
Matthias Braun [Mon, 14 Aug 2006 08:33:42 +0000 (08:33 +0000)]
fix typo
Matthias Braun [Mon, 14 Aug 2006 08:01:09 +0000 (08:01 +0000)]
- Spillslot coalescing now collects all nodes that have class spill/reload
- Stackparams get rematerialized now
- several warning fixes
Christian Würdig [Sun, 13 Aug 2006 13:24:14 +0000 (13:24 +0000)]
updated node emitter (missing attributes)
Christian Würdig [Sun, 13 Aug 2006 13:23:28 +0000 (13:23 +0000)]
set orig node while transforming AddSP
Christian Würdig [Sun, 13 Aug 2006 13:23:02 +0000 (13:23 +0000)]
added modufy_sp flag for AddSP
Christian Würdig [Sun, 13 Aug 2006 13:22:26 +0000 (13:22 +0000)]
while limiting registers: clear ignore registers before applying limits from config, otherwise esp is always cleared
Christian Würdig [Sun, 13 Aug 2006 13:20:24 +0000 (13:20 +0000)]
added support for irn flag modify_ep
Michael Beck [Sat, 12 Aug 2006 22:45:42 +0000 (22:45 +0000)]
BugFix:
- do not delete the graph before it is access the last time ...