Alex Vondrak
|
774264b9f9
|
compiler.cfg.gvn: add simple gcse (avoid rewriting & ##phi handling)
|
2012-09-12 15:14:10 -07:00 |
Alex Vondrak
|
a9aebc2854
|
compiler.cfg.gvn.avail: kludgey fix for odd problem with updating avail sets
|
2012-09-12 15:14:10 -07:00 |
Alex Vondrak
|
b90187a7b0
|
compiler.cfg.gvn: try to clean up availability issues (untested)
|
2012-09-12 15:14:10 -07:00 |
Alex Vondrak
|
a0c569c876
|
compiler.cfg.gvn: move ##phi handling to the value-number method
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
caab84061d
|
compiler.cfg.gvn: annotate portions of code where availability will be an issue
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
e379feeb45
|
compiler.cfg.gvn.expressions: ##phis in different blocks should not be congruent
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
68f577bfa1
|
compiler.cfg.gvn: clean up
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
f29bebaa0e
|
compiler.cfg.gvn: gut it down to just identifying value numbers for now
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
d81d3c8b68
|
compiler.cfg.gvn: convert expressions, graph, and misc to before the half-baked avail stuff
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
ffe70b55e9
|
delete compiler.cfg.gvn.redundancy-elimination
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
09c6a2c040
|
compiler.cfg.gvn: some poorly thought-out attempts at redundancy elimination that don't work; committed for posterity
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
3d66cc52fb
|
compiler.cfg.gvn.testing: separate out test-gvn to skip graphviz output for each GVN iteration
|
2012-09-12 15:14:09 -07:00 |
Alex Vondrak
|
25b0fb5c03
|
compiler.cfg.gvn.avail: minor simplification
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
040f43854b
|
compiler.cfg.graphviz: add block numbers to labels
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
a3ea32ed3e
|
compiler.cfg.gvn.redundancy-elimination: horrific tinkering that doesn't even work
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
cb742f24d1
|
compiler.cfg.gvn.redundancy-elimination: rough draft
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
454c2f245b
|
compiler.cfg.gvn: preparing for avail-based redundancy elimination
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
cce1f9d859
|
compiler.cfg.gvn.testing: minor fix
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
1adfdc5fd6
|
compiler.cfg.gvn.alien: clean up destructive rewrites
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
60abd53808
|
compiler.cfg.gvn.slots: make simplify-slot-addressing non-destructive
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
3787f64422
|
compiler.cfg.gvn.comparisons: fix premature cfg modifications
|
2012-09-12 15:14:08 -07:00 |
Alex Vondrak
|
d6641eddb3
|
compiler.cfg.gvn: with the change to vreg>vn, must check-redundancy on *any* insn that defs a vreg
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
ad0a2e78b3
|
compiler.cfg.gvn.misc: simplify ##phi rewrite
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
4b28eeaf21
|
compiler.cfg.gvn: move ##phi junk to proper vocabs
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
67053cd540
|
compiler.cfg.gvn: I'm stupid; don't think a separate assoc is needed
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
087329bbec
|
compiler.cfg.gvn: refactor
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
b64d116582
|
compiler.cfg.gvn.testing: clean stuff up; get full, proper graphviz output
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
6c09bd0cd5
|
compiler.cfg.gvn.testing: add basic graphviz output
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
0e7fb629f5
|
compiler.cfg.gvn: move crappy test code to compiler.cfg.gvn.testing
|
2012-09-12 15:14:07 -07:00 |
Alex Vondrak
|
4008edfdf8
|
move compiler.cfg.graphviz & compiler.cfg.gvn from basis to extra, just to keep organized
|
2012-09-12 15:14:07 -07:00 |
John Benediktsson
|
f4a6e10818
|
More cleanup of unused stuff.
|
2011-10-19 11:01:16 -07:00 |
Joe Groff
|
2bd6de9a02
|
slots: pre-create the "at", "nth", and "global" slots to make deterministic the currently nondeterministic ambiguity between accessors:change-* and assocs:change-at, sequences:change-nth, and namespaces:change-global
|
2011-09-19 10:03:43 -07:00 |
Slava Pestov
|
73ff8ffed1
|
compiler.graphviz: fix load error
|
2010-05-10 00:45:48 -04:00 |
Slava Pestov
|
33eb15bf44
|
compiler.cfg.debugger: clean up and make it more flexible
|
2010-05-03 17:34:22 -04:00 |
Slava Pestov
|
0e3a261637
|
Fix test failures in compiler.cfg.linearization.order, compiler.tests.low-level-ir and compiler.graphviz
|
2009-09-22 05:07:52 -05:00 |
Slava Pestov
|
661bf83ff3
|
compiler.graphviz: was broken since some time ago, fix and add tests
|
2009-09-22 03:20:22 -05:00 |
Slava Pestov
|
d0c393aa60
|
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 |
Slava Pestov
|
97ec3ea1b4
|
compiler.graphviz: add high-level IR call graph rendering
|
2009-08-05 03:33:06 -05:00 |
Slava Pestov
|
5344302040
|
compiler.cfg.graphviz: add render-dom word
|
2009-07-28 11:16:32 -05:00 |
Slava Pestov
|
41c5f0d941
|
compiler.cfg.graphviz: A utility for rendering CFGs with graphviz
|
2009-07-28 06:41:29 -05:00 |