Slava Pestov
|
dac7edd2ab
|
compiler.cfg.def-use: remove compute-def-use word, passes have to call compute-defs or compute-uses now; compiler.cfg.ssa.liveness: don't compute dominance and def-use first since destruction does already
|
2009-08-02 19:12:32 -05:00 |
Slava Pestov
|
df6c87d350
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-08-02 18:46:27 -05:00 |
Slava Pestov
|
32d9102feb
|
Revert "SSA destruction uses new SSA liveness checking"
This reverts commit 98c7de8410 .
|
2009-08-02 18:41:31 -05:00 |
Slava Pestov
|
a15b20a671
|
Revert "compiler.cfg.liveness.ssa: remove"
This reverts commit 6144fee101 .
|
2009-08-02 18:41:16 -05:00 |
Daniel Ehrenberg
|
665b3921d1
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-08-02 18:25:37 -04:00 |
Daniel Ehrenberg
|
f7a53811c1
|
Merge branch 'master' of git://factorcode.org/git/factor
Conflicts:
basis/compiler/cfg/ssa/liveness/liveness-tests.factor
|
2009-08-02 18:23:49 -04:00 |
Slava Pestov
|
634e1dd525
|
compiler.cfg.liveness.ssa: remove
|
2009-08-02 17:19:01 -05:00 |
Slava Pestov
|
16a7ba35d2
|
Merge branch 'master' of git://github.com/alaricsp/factor
|
2009-08-02 17:15:26 -05:00 |
Daniel Ehrenberg
|
765efc1a66
|
Removing phi-outs set in SSA liveness checking
|
2009-08-02 18:15:18 -04:00 |
Slava Pestov
|
777bda70dc
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-08-02 17:07:06 -05:00 |
Slava Pestov
|
8a8ebcb908
|
compiler.cfg.ssa.liveness: fix unit tests
|
2009-08-02 17:06:35 -05:00 |
Daniel Ehrenberg
|
3b78d03e2a
|
minor SSA liveness code reorganization
|
2009-08-02 18:05:51 -04:00 |
Daniel Ehrenberg
|
cf7ab59fb7
|
SSA destruction uses new SSA liveness checking
|
2009-08-02 18:04:45 -04:00 |
Daniel Ehrenberg
|
d349cc565a
|
def-use puts phi uses in respective predecessors
|
2009-08-02 18:04:07 -04:00 |
Alaric Snell-Pym
|
8dacd82707
|
FNV1 and FNV1a hashes implemented for 32, 64, 128, 256, 512, and 1024 bit widths.
|
2009-08-02 18:16:55 +01:00 |
Slava Pestov
|
73e7ead209
|
compiler.cfg.ssa.destruction: add optimization from old destruction pass: don't run on CFGs that have no phi instructions
|
2009-08-02 10:57:27 -05:00 |
Slava Pestov
|
ba55633b19
|
compiler.cfg.ssa.interference: cleanup
|
2009-08-02 10:35:02 -05:00 |
Slava Pestov
|
82c1106945
|
compiler.cfg.ssa.destruction: new implementation: simpler and more correct
|
2009-08-02 10:26:52 -05:00 |
Slava Pestov
|
c1c8424605
|
Compiler speedups
|
2009-08-02 09:16:21 -05:00 |
Slava Pestov
|
8aa41672ca
|
compiler.cfg.ssa.destruction.copies: factor out add-instructions combinator into compiler.cfg.utilities
|
2009-08-02 08:20:50 -05:00 |
Slava Pestov
|
cff5976a0d
|
Move compiler.cfg.ssa.destruction.interference to compiler.cfg.ssa.interference
|
2009-08-02 08:15:36 -05:00 |
Slava Pestov
|
87e13db946
|
compiler.cfg.ssa.destruction.interference: fix a bug and add unit tests
|
2009-08-02 08:11:30 -05:00 |
Slava Pestov
|
7ec288b013
|
compiler.cfg.debugger: fix load error
|
2009-08-02 08:11:04 -05:00 |
Slava Pestov
|
b5a978d4e5
|
compiler.cfg.ssa.destruction: add some unit tests
|
2009-08-02 06:17:44 -05:00 |
Slava Pestov
|
c61b729125
|
compiler.cfg.critical-edges: update ##phi nodes
|
2009-08-02 06:17:22 -05:00 |
Slava Pestov
|
01f51a96cd
|
compiler.cfg.utilities: add each-phi combinator to iterate over all ##phi instructions in a basic block
|
2009-08-02 06:16:58 -05:00 |
Slava Pestov
|
21489ce85e
|
compiler tests: add test case for coalescing bug
|
2009-08-02 03:49:54 -05:00 |
Slava Pestov
|
e1c7f7394a
|
compiler.cfg: clean up unit tests using some new utilities
|
2009-08-02 03:49:25 -05:00 |
Slava Pestov
|
9bde92220b
|
compiler.cfg.two-operand: if last instruction in a basic block is an overflowing arithmetic op of the form x = y op x, we now convert it correctly. This fixes compiler regression with benchmark.dawes after recent coalescing changes
|
2009-08-01 23:50:47 -05:00 |
Slava Pestov
|
e01fc93812
|
compiler.tree.propagation.call-effect: fix case where quotation inlining could enter an infinite loop: [ dup call( quot -- ) ] dup call( quot -- ) etc
|
2009-08-01 23:34:14 -05:00 |
Slava Pestov
|
1ef9cd27d3
|
compiler.cfg.copy-prop: eliminate phi nodes that have the same inputs as a previous phi node in the basic block
|
2009-08-01 22:33:27 -05:00 |
Slava Pestov
|
05b7bb0079
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-08-01 20:22:51 -05:00 |
Slava Pestov
|
20ec574965
|
compiler.cfg.ssa.destruction: fix bug in trivial-interference heuristic, and type error in code path that didn't run before
|
2009-08-01 20:22:31 -05:00 |
Daniel Ehrenberg
|
0838beed1e
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-08-01 20:33:41 -04:00 |
Slava Pestov
|
76368cae9b
|
compiler.cfg.liveness.ssa: fix bad bug discovered by littledan
|
2009-08-01 18:54:24 -05:00 |
Slava Pestov
|
2d719534cf
|
compiler.cfg.stacks: kill set now includes all locations eliminated as a result of stack height decrease; reduces number of ##replace instructions generated by 2%
|
2009-08-01 06:12:43 -05:00 |
Slava Pestov
|
61fe034e3e
|
cpu.ppc: put spill slots and GC roots in stack frame where subroutine calls can't clobber them
|
2009-07-31 23:47:07 -05:00 |
Slava Pestov
|
7c43f71c6d
|
compiler: Oops, typos in unit tests
|
2009-07-31 22:33:02 -05:00 |
Slava Pestov
|
1993274d01
|
alien.libraries: add-library should now reload the library properly, instead of just leaking DLL handles
|
2009-07-31 19:46:18 -05:00 |
Slava Pestov
|
d515715b0c
|
compiler.cfg.ssa.destruction: fix bug in renaming triggered by sequence-parser:take-sequence
|
2009-07-31 18:34:15 -05:00 |
Slava Pestov
|
9a80fdb81b
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-07-31 17:59:00 -05:00 |
Slava Pestov
|
957a5b7b9b
|
cpu.ppc: fix small typos
|
2009-07-31 17:57:15 -05:00 |
Doug Coleman
|
3258f9c4ef
|
fix using list on win64
|
2009-07-31 16:27:18 -05:00 |
Slava Pestov
|
dd2dc2bb24
|
cpu.ppc: Updating PowerPC backend for codegen changes over the last two months: new shift intrinsics added, fixnum overflow intrinsics are now treated like conditionals, GC checks are more complex and have a different API
|
2009-07-30 21:44:22 -05:00 |
Slava Pestov
|
45770c6250
|
Move a bunch of GC check generation logic to platform-independent side
|
2009-07-30 21:28:27 -05:00 |
Slava Pestov
|
47920a7a0c
|
Passing -profile-compiler switch to bootstrap collects timing information from optimizer passes
|
2009-07-30 21:27:52 -05:00 |
Slava Pestov
|
b43c8b40ac
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-07-30 19:11:02 -05:00 |
Daniel Ehrenberg
|
8134d775a8
|
Faster SSA liveness testing
|
2009-07-30 15:23:47 -04:00 |
Joe Groff
|
b6ddcafcbd
|
Merge branch 'master' of git://factorcode.org/git/factor
|
2009-07-30 11:05:36 -05:00 |
Joe Groff
|
455956b16c
|
add additional SSE2 packed integer operations
|
2009-07-30 11:05:12 -05:00 |