diff options
Diffstat (limited to 'backend/lib/CodeGen/PHIElimination.cpp')
| -rw-r--r-- | backend/lib/CodeGen/PHIElimination.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/backend/lib/CodeGen/PHIElimination.cpp b/backend/lib/CodeGen/PHIElimination.cpp index 677a04c..8ad785e 100644 --- a/backend/lib/CodeGen/PHIElimination.cpp +++ b/backend/lib/CodeGen/PHIElimination.cpp @@ -479,10 +479,9 @@ Expected<MachinePassResult> PHIEliminationPass::run(MachineFunction &Function, return runImplementation(Function, Target, Analyses); } -Expected<MachinePassResult> PHIEliminationPass::runImplementation(MachineFunction &Function, - const TargetDescription &Target, - MachineFunctionAnalysisManager - &Analyses) { +Expected<MachinePassResult> +PHIEliminationPass::runImplementation(MachineFunction &Function, const TargetDescription &Target, + MachineFunctionAnalysisManager &Analyses) { MachinePassResult Result; std::unordered_map<EdgeKey, MachineBasicBlock *, EdgeKeyHash> SplitEdges; const std::vector<MachineBasicBlock *> Blocks(Function.allBlocks().begin(), @@ -552,7 +551,7 @@ Expected<MachinePassResult> PHIEliminationPass::runImplementation(MachineFunctio } for (PhiPlan &Plan : *Plans) { - auto Removed = Block->removeInstruction(*Plan.Instruction); + auto Removed = Plan.Instruction->eraseFromParent(); if (!Removed) return std::unexpected(Removed.error()); } |
