aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/Target/TargetInstrInfo.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2007-05-16 01:58:56 +0000
committerEvan Cheng <evan.cheng@apple.com>2007-05-16 01:58:56 +0000
commit0402e170e8058cc5256e0c7b94ae37484253d73d (patch)
treec53eabf5dd31c074e36e02262acd7377d8ceabd0 /include/llvm/Target/TargetInstrInfo.h
parent01b4748b39b4162393788472eed8ff5770482b33 (diff)
downloadexternal_llvm-0402e170e8058cc5256e0c7b94ae37484253d73d.zip
external_llvm-0402e170e8058cc5256e0c7b94ae37484253d73d.tar.gz
external_llvm-0402e170e8058cc5256e0c7b94ae37484253d73d.tar.bz2
Add TargetInstrInfo predication hooks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37091 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Target/TargetInstrInfo.h')
-rw-r--r--include/llvm/Target/TargetInstrInfo.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetInstrInfo.h b/include/llvm/Target/TargetInstrInfo.h
index 29ff38f..71a6dcd 100644
--- a/include/llvm/Target/TargetInstrInfo.h
+++ b/include/llvm/Target/TargetInstrInfo.h
@@ -383,6 +383,20 @@ public:
abort();
}
+ /// isPredicatable - True if the instruction can be converted into a
+ /// predicated instruction.
+ virtual bool isPredicatable(MachineInstr *MI) const {
+ return false;
+ }
+
+ /// PredicateInstruction - Convert the instruction into a predicated
+ /// instruction.
+ virtual void PredicateInstruction(MachineInstr *MI,
+ std::vector<MachineOperand> &Cond) const {
+ assert(0 && "Target didn't implement PredicateInstruction!");
+ abort();
+ }
+
/// getPointerRegClass - Returns a TargetRegisterClass used for pointer
/// values.
virtual const TargetRegisterClass *getPointerRegClass() const {