Instructions with ImmutablePredicateOperand aren't really predicable since their predicates are fixed at isel time.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37899 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Evan Cheng
2007-07-05 07:19:29 +00:00
parent 0e1d37904a
commit 8012b077dd
2 changed files with 6 additions and 2 deletions
+4 -1
View File
@@ -411,7 +411,10 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr)
if (unsigned NumArgs = MIOpInfo->getNumArgs())
NumOps = NumArgs;
isPredicable |= Rec->isSubClassOf("PredicateOperand");
if (Rec->isSubClassOf("PredicateOperand")) {
if (!Rec->getValueAsBit("isImmutable"))
isPredicable = true;
}
} else if (Rec->getName() == "variable_ops") {
hasVariableNumberOfOperands = true;
continue;