diff options
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp b/llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp index 16f19d840f6..a1bbb7ad257 100644 --- a/llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp +++ b/llvm/lib/Target/AMDGPU/AMDILCFGStructurizer.cpp @@ -423,7 +423,8 @@ bool AMDGPUCFGStructurizer::needMigrateBlock(MachineBasicBlock *MBB) const { void AMDGPUCFGStructurizer::reversePredicateSetter( MachineBasicBlock::iterator I) { - while (I--) { + assert(static_cast<MachineInstr *>(I) && "Expected valid iterator"); + for (;; --I) { if (I->getOpcode() == AMDGPU::PRED_X) { switch (static_cast<MachineInstr *>(I)->getOperand(2).getImm()) { case OPCODE_IS_ZERO_INT: |

