diff --git a/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp b/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp --- a/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp +++ b/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp @@ -1187,7 +1187,7 @@ // LiveRangeEdit::canRematerializeAt(). TII->reMaterialize(*InsertPos->getParent(), InsertPos, Reg, Def->getOperand(0).getSubReg(), *Def, *DAG.TRI); - MachineInstr *NewMI = &*(--InsertPos); + MachineInstr *NewMI = &*std::prev(InsertPos); LIS->InsertMachineInstrInMaps(*NewMI); LIS->removeInterval(Reg); LIS->createAndComputeVirtRegInterval(Reg);