Changes in directory llvm/utils/TableGen:
CodeGenInstruction.h updated: 1.21 -> 1.22 CodeGenTarget.cpp updated: 1.73 -> 1.74 InstrInfoEmitter.cpp updated: 1.47 -> 1.48 --- Log message: recognize ppc's blr instruction as predicated --- Diffs of the changes: (+4 -0) CodeGenInstruction.h | 1 + CodeGenTarget.cpp | 2 ++ InstrInfoEmitter.cpp | 1 + 3 files changed, 4 insertions(+) Index: llvm/utils/TableGen/CodeGenInstruction.h diff -u llvm/utils/TableGen/CodeGenInstruction.h:1.21 llvm/utils/TableGen/CodeGenInstruction.h:1.22 --- llvm/utils/TableGen/CodeGenInstruction.h:1.21 Sun Nov 5 13:31:28 2006 +++ llvm/utils/TableGen/CodeGenInstruction.h Mon Nov 6 15:44:53 2006 @@ -87,6 +87,7 @@ bool isLoad; bool isStore; bool isTwoAddress; + bool isPredicated; bool isConvertibleToThreeAddress; bool isCommutable; bool isTerminator; Index: llvm/utils/TableGen/CodeGenTarget.cpp diff -u llvm/utils/TableGen/CodeGenTarget.cpp:1.73 llvm/utils/TableGen/CodeGenTarget.cpp:1.74 --- llvm/utils/TableGen/CodeGenTarget.cpp:1.73 Sat Nov 4 03:40:23 2006 +++ llvm/utils/TableGen/CodeGenTarget.cpp Mon Nov 6 15:44:54 2006 @@ -335,6 +335,7 @@ isLoad = R->getValueAsBit("isLoad"); isStore = R->getValueAsBit("isStore"); isTwoAddress = R->getValueAsBit("isTwoAddress"); + isPredicated = false; // set below. isConvertibleToThreeAddress = R->getValueAsBit("isConvertibleToThreeAddress"); isCommutable = R->getValueAsBit("isCommutable"); isTerminator = R->getValueAsBit("isTerminator"); @@ -381,6 +382,7 @@ if (unsigned NumArgs = MIOpInfo->getNumArgs()) NumOps = NumArgs; + isPredicated |= Rec->isSubClassOf("PredicateOperand"); } else if (Rec->getName() == "variable_ops") { hasVariableNumberOfOperands = true; continue; Index: llvm/utils/TableGen/InstrInfoEmitter.cpp diff -u llvm/utils/TableGen/InstrInfoEmitter.cpp:1.47 llvm/utils/TableGen/InstrInfoEmitter.cpp:1.48 --- llvm/utils/TableGen/InstrInfoEmitter.cpp:1.47 Sat Nov 4 03:40:23 2006 +++ llvm/utils/TableGen/InstrInfoEmitter.cpp Mon Nov 6 15:44:54 2006 @@ -225,6 +225,7 @@ if (Inst.isLoad) OS << "|M_LOAD_FLAG"; if (Inst.isStore || isStore) OS << "|M_STORE_FLAG"; if (Inst.isTwoAddress) OS << "|M_2_ADDR_FLAG"; + if (Inst.isPredicated) OS << "|M_PREDICATED"; if (Inst.isConvertibleToThreeAddress) OS << "|M_CONVERTIBLE_TO_3_ADDR"; if (Inst.isCommutable) OS << "|M_COMMUTABLE"; if (Inst.isTerminator) OS << "|M_TERMINATOR_FLAG"; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits