factor/basis/compiler/cfg
Slava Pestov 07092df20b compiler.cfg.intrinsics.allot: fix <byte-array> intrinsic for real. Don't ever check in code without testing it 2010-05-05 13:17:20 -04:00
..
alias-analysis compiler.cfg.alias-analysis: storing a reference into an object now merges the reference's alias class with the heap alias class 2010-05-03 18:20:28 -04:00
block-joining compiler.cfg: new system to track when results of analyses need to be recomputed (reverse post order, linear order, predecessors, dominance, loops). Passes can now call needs-predecessors, needs-dominance, needs-loops at the beginning, and cfg-changed, predecessors-changd at the end. Linearization order now takes loop nesting into account, and linear scan now uses linearization order instead of RPO. 2009-08-08 20:02:56 -05:00
branch-splitting compiler.cfg: new system to track when results of analyses need to be recomputed (reverse post order, linear order, predecessors, dominance, loops). Passes can now call needs-predecessors, needs-dominance, needs-loops at the beginning, and cfg-changed, predecessors-changd at the end. Linearization order now takes loop nesting into account, and linear scan now uses linearization order instead of RPO. 2009-08-08 20:02:56 -05:00
build-stack-frame compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
builder More FFI cleanups 2010-05-05 01:13:45 -04:00
checker compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
comparisons New GC checks work in progress 2010-05-03 17:34:16 -04:00
copy-prop compiler.cfg.copy-prop: optimistic copy propagation 2010-05-03 17:34:26 -04:00
dataflow-analysis compiler.cfg.dataflow-analysis: when intersecting sets, treat uninitialized sets as universal rather than empty; reduces number of stack instructions generated by 1% 2009-08-20 18:15:41 -05:00
dce Untagged fixnums work in progress 2010-05-03 17:34:02 -04:00
debugger compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
def-use compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
dependence Some fixes to merge scheduling 2010-05-03 17:54:46 -05:00
dominance Moving new-sets to sets 2010-02-26 16:01:01 -05:00
finalization Fixing scheduling for compiler changes 2010-05-04 09:48:16 -05:00
gc-checks compiler.cfg: clean up ##phi literals in tests 2010-05-03 17:34:24 -04:00
hats Debugging untagged fixnums 2010-05-03 17:34:02 -04:00
height Fixing scheduling for compiler changes 2010-05-04 09:48:16 -05:00
instructions compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
intrinsics compiler.cfg.intrinsics.allot: fix <byte-array> intrinsic for real. Don't ever check in code without testing it 2010-05-05 13:17:20 -04:00
linear-scan compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
linearization compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
liveness compiler.cfg: clean up ##phi literals in tests 2010-05-03 17:34:24 -04:00
loop-detection compiler.cfg.representations: add more peephole optimizations to reduce fixnum tagging and untagging overhead 2010-05-03 17:34:11 -04:00
optimizer Merge branch 'master' of git://factorcode.org/git/factor into s3 2010-05-03 17:29:03 -05:00
parallel-copy compiler.cfg: virtual registers are integers now, and representations are stored off to the side. Fix bug in representation selection that would manifest if a value was used as a float and a fixnum in different branches; cannot globally unbox float in this case 2009-08-08 04:02:18 -05:00
predecessors memq? -> member-eq?, sorted-memq? -> sorted-member-eq? 2009-10-28 15:02:00 -05:00
registers compiler.cfg.value-numbering: fix typo in unit test 2010-05-03 22:11:29 -04:00
renaming compiler.cfg: don't generate useless methods in instruction meta-programming. reduces bootstrap time 2009-11-02 20:11:29 -06:00
representations compiler: new "binary literal area" at the end of a word's machine code stores constant floats and SIMD vectors; this allows ##load-reference/##load-memory fusion to be performed on x86-64, with a RIP-relative address reaching the data; also simplifies VM since custom relocation types used by the previous 32-bit-only optimization are no longer needed 2010-05-03 17:34:35 -04:00
rpo compiler.cfg: cleanup 2010-05-03 17:34:26 -04:00
save-contexts New GC checks work in progress 2010-05-03 17:34:16 -04:00
scheduling Making some scheduling assertions only run in unit tests 2010-04-15 17:36:43 -05:00
ssa compiler.cfg: cleanup 2010-05-03 17:34:26 -04:00
stack-frame compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
stacks compiler.cfg: fuse ##load-integer/##load-reference into ##replace to form ##replace-imm 2010-05-03 17:34:28 -04:00
tco generalize stack effects so we can bootstrap with the stricter stack effect checking 2010-03-08 23:38:10 -08:00
useless-conditionals Debugging untagged fixnums 2010-05-03 17:34:02 -04:00
utilities New GC checks work in progress 2010-05-03 17:34:16 -04:00
value-numbering compiler.cfg.value-numbering: don't use complex addressing modes unless architecture supports it 2010-05-04 05:46:21 -05:00
write-barrier compiler.cfg: cleanup 2010-05-03 17:34:26 -04:00
cfg.factor compiler: remove flat machine representation and generate code directly from the CFG 2010-05-03 17:34:32 -04:00
summary.txt Add summary for heaps more vocabs 2009-02-16 21:05:13 -06:00