Parents: | compiler |
Class | Superclass | Slots |
basic-block | identity-tuple | number instructions successors predecessors kill-block? height replaces peeks kills |
cfg | tuple | entry word label stack-frame frame-pointer? post-order linear-order predecessors-valid? dominance-valid? loops-valid? |
Word | Stack effect |
<basic-block> | ( -- bb ) |
<cfg> | ( word label entry -- cfg ) |
cfg-changed | ( cfg -- ) |
local-allot-offset | ( n -- offset ) |
predecessors-changed | ( cfg -- ) |
spill-offset | ( n -- offset ) |
with-cfg | ( ..a cfg quot: ( ..a cfg -- ..b ) -- ..b ) |
Word | Stack effect |
basic-block? | ( object -- ? ) |
cfg? | ( object -- ? ) |
Vocabulary | Summary |
compiler.cfg.alias-analysis | Alias analysis for stack operations, array elements and tuple slots |
compiler.cfg.block-joining | |
compiler.cfg.branch-splitting | |
compiler.cfg.build-stack-frame | Computing stack frame size and layout |
compiler.cfg.builder | Final stage of compilation generates machine code from dataflow IR |
compiler.cfg.checker | |
compiler.cfg.comparisons | |
compiler.cfg.copy-prop | Common code used by several passes to perform copy propagation |
compiler.cfg.dataflow-analysis | |
compiler.cfg.dce | Dead code elimination |
compiler.cfg.debugger | Tools for debugging low-level optimizer |
compiler.cfg.def-use | Common code used by several passes for def-use analysis |
compiler.cfg.dominance | |
compiler.cfg.finalization | |
compiler.cfg.gc-checks | |
compiler.cfg.hats | Utility for constructing basic blocks |
compiler.cfg.instructions | Basic block instructions |
compiler.cfg.intrinsics | Generating instructions from certain primitives |
compiler.cfg.linear-scan | Linear-scan register allocation |
compiler.cfg.linearization | |
compiler.cfg.liveness | |
compiler.cfg.loop-detection | |
compiler.cfg.optimizer | Top-level harness for CFG optimization |
compiler.cfg.parallel-copy | |
compiler.cfg.predecessors | Computing predecessors of basic blocks in CFG |
compiler.cfg.registers | Virtual single-assignment registers |
compiler.cfg.renaming | |
compiler.cfg.representations | |
compiler.cfg.rpo | Reverse post-order linearization of CFG |
compiler.cfg.save-contexts | |
compiler.cfg.ssa | |
compiler.cfg.stack-frame | |
compiler.cfg.stacks | Generating instructions for accessing the data and retain stacks |
compiler.cfg.tco | |
compiler.cfg.useless-conditionals | Eliminating unreachable basic blocks and unconditional jumps |
compiler.cfg.utilities | Utility words used by CFG optimization |
compiler.cfg.value-numbering | Local value numbering for common subexpression elimination |
compiler.cfg.write-barrier | Write barrier elimination |
Vocabulary | Summary |
compiler.cfg.graphviz | |
compiler.cfg.gvn | Global value numbering for common subexpression elimination |