Handbook
Glossary
eliminate-dead-code ( cfg -- )
Vocabulary
compiler
.
cfg
.
dce
Inputs
cfg
a
cfg
Outputs
None
Word description
Even though we don't use predecessors directly, we depend on the predecessors pass updating phi nodes to remove dead inputs.
Definition
USING:
combinators
compiler.cfg.predecessors
compiler.cfg.rpo
sequences
;
IN:
compiler.cfg.dce
:
eliminate-dead-code
( cfg -- )
init-dead-code
{
[
needs-predecessors
]
[
[
[
build-liveness-graph
]
each
]
simple-analysis
]
[
[
[
compute-live-vregs
]
each
]
simple-analysis
]
[
[
[
live-insn?
]
filter!
]
simple-optimization
]
}
cleave
;