diff options
| -rw-r--r-- | llvm/lib/CodeGen/LocalStackSlotAllocation.cpp | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp b/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp index 26a117652b0..80a6da0f93b 100644 --- a/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp +++ b/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp @@ -233,9 +233,11 @@ bool LocalStackSlotPass::insertFrameReferenceRegisters(MachineFunction &Fn) {      for (MachineBasicBlock::iterator I = BB->begin(); I != BB->end(); ++I) {        MachineInstr *MI = I; -      // Debug value instructions can't be out of range, so they don't need -      // any updates. -      if (MI->isDebugValue()) +      // Debug value, stackmap and patchpoint instructions can't be out of +      // range, so they don't need any updates. +      if (MI->isDebugValue() || +          MI->getOpcode() == TargetOpcode::STACKMAP || +          MI->getOpcode() == TargetOpcode::PATCHPOINT)          continue;        // For now, allocate the base register(s) within the basic block  | 

