Do not check isPredicated() on non-predicable instructions.
authorEvan Cheng <evan.cheng@apple.com>
Thu, 5 Jul 2007 07:06:46 +0000 (07:06 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Thu, 5 Jul 2007 07:06:46 +0000 (07:06 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37891 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/TargetInstrInfo.cpp

index 6f6083fb2825612f6f8485d6d4bf99ce2cd8046e..9e706cdcfe640b0a40fc9584ffa373ae02f3602b 100644 (file)
@@ -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;
 }