add a flag so that predicated instructions can be recognized by branch
authorChris Lattner <sabre@nondot.org>
Mon, 6 Nov 2006 21:44:17 +0000 (21:44 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 6 Nov 2006 21:44:17 +0000 (21:44 +0000)
folding

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31479 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetInstrInfo.h

index 48634178c27c07937c9909b32258bc879bf98f5b..275477714f96ef743ce0892c150de3f2a4e87de1 100644 (file)
@@ -80,6 +80,11 @@ const unsigned M_USES_CUSTOM_DAG_SCHED_INSERTION = 1 << 11;
 // operands in addition to the minimum number operands specified.
 const unsigned M_VARIABLE_OPS = 1 << 12;
 
+// M_PREDICATED - Set if this instruction has a predicate that controls its
+// execution.
+const unsigned M_PREDICATED = 1 << 13;
+
+
 // Machine operand flags
 // M_LOOK_UP_PTR_REG_CLASS - Set if this operand is a pointer value and it
 // requires a callback to look up its register class.
@@ -177,6 +182,9 @@ public:
   bool isTwoAddrInstr(MachineOpCode Opcode) const {
     return get(Opcode).Flags & M_2_ADDR_FLAG;
   }
+  bool isPredicated(MachineOpCode Opcode) const {
+    return get(Opcode).Flags & M_PREDICATED;
+  }
   bool isCommutableInstr(MachineOpCode Opcode) const {
     return get(Opcode).Flags & M_COMMUTABLE;
   }