[llvm-commits] CVS: llvm/include/llvm/Target/TargetInstrInfo.h

Chris Lattner sabre at nondot.org
Mon Nov 6 13:45:26 PST 2006



Changes in directory llvm/include/llvm/Target:

TargetInstrInfo.h updated: 1.102 -> 1.103
---
Log message:

add a flag so that predicated instructions can be recognized by branch
folding


---
Diffs of the changes:  (+8 -0)

 TargetInstrInfo.h |    8 ++++++++
 1 files changed, 8 insertions(+)


Index: llvm/include/llvm/Target/TargetInstrInfo.h
diff -u llvm/include/llvm/Target/TargetInstrInfo.h:1.102 llvm/include/llvm/Target/TargetInstrInfo.h:1.103
--- llvm/include/llvm/Target/TargetInstrInfo.h:1.102	Wed Nov  1 17:14:00 2006
+++ llvm/include/llvm/Target/TargetInstrInfo.h	Mon Nov  6 15:44:17 2006
@@ -80,6 +80,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 @@
   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;
   }






More information about the llvm-commits mailing list