.. |
alias-analysis
|
Move liveness back to compiler.cfg.liveness, fix a corner-case where it didn't work on some forms of non-SSA code
|
2009-07-22 06:07:28 -05:00 |
block-joining
|
compiler.cfg.linearization: rotate loops. 2x speedup with empty times loop, 1.5x speedup on benchmark.dawes
|
2009-07-28 21:31:08 -05:00 |
branch-splitting
|
compiler.cfg: clean up unit tests using some new utilities
|
2009-08-02 03:49:25 -05:00 |
build-stack-frame
|
compiler.cfg: if a block has an instruction that kills values it must be the only instruction in the block
|
2009-07-19 20:12:04 -05:00 |
builder
|
compiler.cfg: Rename ssa to ssa.construction, coalescing to ssa.destruction
|
2009-07-28 09:34:08 -05:00 |
checker
|
compiler.cfg: Minor optimization. Instructions can now only ever produce a single value; this eliminates 1array constructions and some iterations
|
2009-07-28 12:29:07 -05:00 |
comparisons
|
compiler.cfg: split off condition codes into a comparisons sub-vocabulary
|
2009-07-13 14:42:52 -05:00 |
copy-prop
|
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 |
critical-edges
|
compiler.cfg.critical-edges: update ##phi nodes
|
2009-08-02 06:17:22 -05:00 |
dataflow-analysis
|
Fix bootstrap
|
2009-07-22 03:26:27 -05:00 |
dce
|
compiler.cfg: change representation of ##phi nodes. The input slot of ##phi nodes is now an assoc mapping predecessors to values, rather than a sequence of values. This ensures that optimization which delete predecessors can be implemented
|
2009-07-02 17:10:50 -05:00 |
debugger
|
compiler.cfg.debugger: fix load error
|
2009-08-02 08:11:04 -05:00 |
def-use
|
compiler.cfg: Minor optimization. Instructions can now only ever produce a single value; this eliminates 1array constructions and some iterations
|
2009-07-28 12:29:07 -05:00 |
dominance
|
compiler.cfg: clean up unit tests using some new utilities
|
2009-08-02 03:49:25 -05:00 |
empty-blocks
|
compiler.cfg.empty-blocks: new pass to delete empty blocks, runs after phi elimination
|
2009-07-23 18:02:46 -05:00 |
gc-checks
|
compiler.cfg: clean up unit tests using some new utilities
|
2009-08-02 03:49:25 -05:00 |
hats
|
compiler.cfg: introduce less temporaries when building CFG
|
2009-07-24 03:37:18 -05:00 |
instructions
|
compiler.cfg: Get inline GC checks working again, using a dataflow analysis to compute uninitialized stack locations in compiler.cfg.stacks.uninitialized. Re-enable intrinsics which use inline allocation
|
2009-07-30 09:19:44 -05:00 |
intrinsics
|
compiler.cfg: Get inline GC checks working again, using a dataflow analysis to compute uninitialized stack locations in compiler.cfg.stacks.uninitialized. Re-enable intrinsics which use inline allocation
|
2009-07-30 09:19:44 -05:00 |
linear-scan
|
Compiler speedups
|
2009-08-02 09:16:21 -05:00 |
linearization
|
compiler.cfg: Get inline GC checks working again, using a dataflow analysis to compute uninitialized stack locations in compiler.cfg.stacks.uninitialized. Re-enable intrinsics which use inline allocation
|
2009-07-30 09:19:44 -05:00 |
liveness
|
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 |
mr
|
compiler.cfg: Major restructuring -- do not compute liveness before local optimization, and instead change local optimizations to be more permissive of undefined values. Now, liveness is only computed once, after phi elimination and before register allocation. This means liveness analysis does not need to take phi nodes into account and can now use the new compiler.cfg.dataflow-analysis framework
|
2009-07-22 03:08:28 -05:00 |
optimizer
|
compiler.cfg.ssa.destruction: rename coalesce word to destruct-ssa
|
2009-07-28 12:56:33 -05:00 |
parallel-copy
|
compiler.cfg.linear-scan: fix resolve pass
|
2009-07-28 08:47:35 -05:00 |
predecessors
|
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 |
registers
|
compiler.cfg.registers: minor optimization
|
2009-07-21 17:49:44 -05:00 |
renaming
|
compiler.cfg.linear-scan.assignment: modifies instructions in place instead of storing a registers assoc for further compile-time performance improvement
|
2009-07-29 06:36:14 -05:00 |
rpo
|
compiler.cfg: Major restructuring -- do not compute liveness before local optimization, and instead change local optimizations to be more permissive of undefined values. Now, liveness is only computed once, after phi elimination and before register allocation. This means liveness analysis does not need to take phi nodes into account and can now use the new compiler.cfg.dataflow-analysis framework
|
2009-07-22 03:08:28 -05:00 |
ssa
|
compiler.cfg.ssa.destruction.copies: factor out add-instructions combinator into compiler.cfg.utilities
|
2009-08-02 08:20:50 -05:00 |
stack-frame
|
compiler.cfg: clean up GC check generation to use spill-slot data type
|
2009-07-03 23:11:23 -05:00 |
stacks
|
Compiler speedups
|
2009-08-02 09:16:21 -05:00 |
tco
|
Overflowing fixnum intrinsics now expand into several CFG nodes. This speeds up the common case since only the uncommon case is now a stack syncpoint
|
2009-07-16 18:29:40 -05:00 |
two-operand
|
Compiler speedups
|
2009-08-02 09:16:21 -05:00 |
useless-conditionals
|
compiler.cfg: Some code cleanups, update stack-analysis and phi-insertion to work on CFGs with critical edges
|
2009-07-12 22:22:46 -05:00 |
utilities
|
compiler.cfg.ssa.destruction.copies: factor out add-instructions combinator into compiler.cfg.utilities
|
2009-08-02 08:20:50 -05:00 |
value-numbering
|
compiler.cfg: clean up unit tests using some new utilities
|
2009-08-02 03:49:25 -05:00 |
write-barrier
|
compiler.cfg: Fixing test failures
|
2009-07-24 06:08:07 -05:00 |
cfg-tests.factor
|
Fix conflict
|
2009-06-30 21:37:49 -05:00 |
cfg.factor
|
compiler.cfg: Some code cleanups, update stack-analysis and phi-insertion to work on CFGs with critical edges
|
2009-07-12 22:22:46 -05:00 |
summary.txt
|
Add summary for heaps more vocabs
|
2009-02-16 21:05:13 -06:00 |