summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-07-28 04:24:59 +0000
committerChris Lattner <sabre@nondot.org>2003-07-28 04:24:59 +0000
commit845ed843f18617dd8cb803f2205760ea5fba1715 (patch)
tree879c6835ca9d30afacb26e2256a242f2c25a56e3 /llvm/lib
parent8cdf385f8d1b5eab3077964886cb2207185fd20c (diff)
downloadbcm5719-llvm-845ed843f18617dd8cb803f2205760ea5fba1715.tar.gz
bcm5719-llvm-845ed843f18617dd8cb803f2205760ea5fba1715.zip
Instead of specifying the SIZE of the register, go so far as to specify
what value type it is. llvm-svn: 7356
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/Target.td17
1 files changed, 16 insertions, 1 deletions
diff --git a/llvm/lib/Target/Target.td b/llvm/lib/Target/Target.td
index da3033c40ad..6d2f460bd53 100644
--- a/llvm/lib/Target/Target.td
+++ b/llvm/lib/Target/Target.td
@@ -6,9 +6,24 @@
// Target-Independent interface
//===----------------------------------------------------------------------===//
+
+// Value types - These values correspond to the register types defined in the
+// MRegsterInfo.h file.
+class ValueType {}
+def i1 : ValueType; // One bit boolean value
+def i8 : ValueType; // 8-bit integer value
+def i16 : ValueType; // 16-bit integer value
+def i32 : ValueType; // 32-bit integer value
+def i64 : ValueType; // 64-bit integer value
+def i128 : ValueType; // 128-bit integer value
+def f32 : ValueType; // 32-bit floating point value
+def f64 : ValueType; // 64-bit floating point value
+def f80 : ValueType; // 80-bit floating point value
+def f128 : ValueType; // 128-bit floating point value
+
class Register {
string Namespace = "";
- int Size;
+ ValueType RegType;
}
class Instruction {
OpenPOWER on IntegriCloud