Handbook
Glossary
global-value-numbering ( cfg -- changed? )
Vocabulary
compiler
.
cfg
.
value-numbering
.
global
Inputs
cfg
an
object
Outputs
changed?
an
object
Definition
USING:
assocs
compiler.cfg.predecessors
compiler.cfg.rpo
compiler.cfg.value-numbering.global.private
kernel
namespaces
;
IN:
compiler.cfg.value-numbering.global
:
global-value-numbering
( cfg -- changed? )
[
dup
needs-predecessors
dup
determine-value-numbers
compute-congruence-classes
dup
compute-candidates
candidate-vns
get
assoc-empty?
[
drop
f
]
[
dup
compute-available-sets
eliminated?
off
[
eliminate-block
]
simple-optimization
eliminated?
get
]
if
]
with-scope
;