diff options
-rw-r--r-- | lib/Target/TargetInstrInfo.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Target/TargetInstrInfo.cpp b/lib/Target/TargetInstrInfo.cpp index 6f6083fb28..9e706cdcfe 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; } |