aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/PowerPC/PPCPredicates.h
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-11-17 22:10:59 +0000
committerChris Lattner <sabre@nondot.org>2006-11-17 22:10:59 +0000
commitdf4ed6350b2a51f71c0980e86c9078f4046ea706 (patch)
treee6bef3b52f6fd6cea6cd434edfaadba53b431e8e /lib/Target/PowerPC/PPCPredicates.h
parentb1409ce7ba3cea5e75fd205d4c037638d93cfeaf (diff)
downloadexternal_llvm-df4ed6350b2a51f71c0980e86c9078f4046ea706.tar.gz
external_llvm-df4ed6350b2a51f71c0980e86c9078f4046ea706.tar.bz2
external_llvm-df4ed6350b2a51f71c0980e86c9078f4046ea706.zip
start using PPC predicates more consistently.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31833 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/PPCPredicates.h')
-rw-r--r--lib/Target/PowerPC/PPCPredicates.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPCPredicates.h b/lib/Target/PowerPC/PPCPredicates.h
new file mode 100644
index 0000000000..ba1bb744a6
--- /dev/null
+++ b/lib/Target/PowerPC/PPCPredicates.h
@@ -0,0 +1,39 @@
+//===-- PPCPredicates.h - PPC Branch Predicate Information ------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file was developed by Chris Lattner and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+//
+// This file describes the PowerPC branch predicates.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef LLVM_TARGET_POWERPC_PPCPREDICATES_H
+#define LLVM_TARGET_POWERPC_PPCPREDICATES_H
+
+#include "PPC.h"
+
+namespace llvm {
+namespace PPC {
+ /// Predicate - These are "(BI << 5) | BO" for various predicates.
+ enum Predicate {
+ PRED_ALWAYS = (0 << 5) | 20,
+ PRED_LT = (0 << 5) | 12,
+ PRED_LE = (1 << 5) | 4,
+ PRED_EQ = (2 << 5) | 12,
+ PRED_GE = (0 << 5) | 4,
+ PRED_GT = (1 << 5) | 12,
+ PRED_NE = (2 << 5) | 4,
+ PRED_UN = (3 << 5) | 12,
+ PRED_NU = (3 << 5) | 4
+ };
+
+ /// Invert the specified predicate. != -> ==, < -> >=.
+ Predicate InvertPredicate(Predicate Opcode);
+}
+}
+
+#endif