diff --git a/basis/compiler/cfg/ssa/destruction/destruction.factor b/basis/compiler/cfg/ssa/destruction/destruction.factor index c768914070..b251578bc8 100644 --- a/basis/compiler/cfg/ssa/destruction/destruction.factor +++ b/basis/compiler/cfg/ssa/destruction/destruction.factor @@ -12,6 +12,7 @@ compiler.cfg.liveness.ssa compiler.cfg.ssa.cssa compiler.cfg.ssa.interference compiler.cfg.ssa.interference.live-ranges +compiler.cfg.utilities compiler.utilities ; IN: compiler.cfg.ssa.destruction @@ -94,11 +95,13 @@ M: insn prepare-insn drop ; ] each-basic-block ; : destruct-ssa ( cfg -- cfg' ) - dup construct-cssa - compute-ssa-live-sets - dup compute-defs - dup compute-dominance - dup compute-live-ranges - dup prepare-coalescing - process-copies - dup perform-renaming ; \ No newline at end of file + dup cfg-has-phis? [ + dup construct-cssa + compute-ssa-live-sets + dup compute-defs + dup compute-dominance + dup compute-live-ranges + dup prepare-coalescing + process-copies + dup perform-renaming + ] when ; \ No newline at end of file