diff --git a/lib/Target/TargetInstrInfo.cpp b/lib/Target/TargetInstrInfo.cpp index 6f6083fb282..9e706cdcfe6 100644 --- a/lib/Target/TargetInstrInfo.cpp +++ b/lib/Target/TargetInstrInfo.cpp @@ -87,7 +87,10 @@ bool TargetInstrInfo::PredicateInstruction(MachineInstr *MI, bool TargetInstrInfo::isUnpredicatedTerminator(const MachineInstr *MI) const { const TargetInstrDescriptor *TID = MI->getInstrDescriptor(); - if (TID->Flags & M_TERMINATOR_FLAG) + if (TID->Flags & M_TERMINATOR_FLAG) { + if ((TID->Flags & M_PREDICABLE) == 0) + return true; return !isPredicated(MI); +} return false; }