From: Evan Cheng Date: Wed, 6 Jun 2007 10:14:55 +0000 (+0000) Subject: Add clobbersPred - instruction that clobbers condition code / register which are... X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=b5c1c9c8e30d8498cdb2d0ee215f05ca8dc3e4e2;p=oota-llvm.git Add clobbersPred - instruction that clobbers condition code / register which are used to predicate instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37465 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/utils/TableGen/CodeGenInstruction.h b/utils/TableGen/CodeGenInstruction.h index 687c17f43a6..62b2ee7c790 100644 --- a/utils/TableGen/CodeGenInstruction.h +++ b/utils/TableGen/CodeGenInstruction.h @@ -97,6 +97,7 @@ namespace llvm { bool hasVariableNumberOfOperands; bool hasCtrlDep; bool noResults; + bool clobbersPred; /// ParseOperandName - Parse an operand name like "$foo" or "$foo.bar", /// where $foo is a whole operand and $foo.bar refers to a suboperand. diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp index a6677a2bf8f..17cea6f2a61 100644 --- a/utils/TableGen/CodeGenTarget.cpp +++ b/utils/TableGen/CodeGenTarget.cpp @@ -360,6 +360,7 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr) usesCustomDAGSchedInserter = R->getValueAsBit("usesCustomDAGSchedInserter"); hasCtrlDep = R->getValueAsBit("hasCtrlDep"); noResults = R->getValueAsBit("noResults"); + clobbersPred = R->getValueAsBit("clobbersPred"); hasVariableNumberOfOperands = false; DagInit *DI; diff --git a/utils/TableGen/InstrInfoEmitter.cpp b/utils/TableGen/InstrInfoEmitter.cpp index 090c35b01b0..df25f250137 100644 --- a/utils/TableGen/InstrInfoEmitter.cpp +++ b/utils/TableGen/InstrInfoEmitter.cpp @@ -241,6 +241,7 @@ void InstrInfoEmitter::emitRecord(const CodeGenInstruction &Inst, unsigned Num, if (Inst.isCommutable) OS << "|M_COMMUTABLE"; if (Inst.isTerminator) OS << "|M_TERMINATOR_FLAG"; if (Inst.isReMaterializable) OS << "|M_REMATERIALIZIBLE"; + if (Inst.clobbersPred) OS << "|M_CLOBBERS_PRED"; if (Inst.usesCustomDAGSchedInserter) OS << "|M_USES_CUSTOM_DAG_SCHED_INSERTION"; if (Inst.hasVariableNumberOfOperands)