[llvm-commits] CVS: llvm/lib/Target/Target.td
Chris Lattner
lattner at cs.uiuc.edu
Tue Aug 10 18:53:44 PDT 2004
Changes in directory llvm/lib/Target:
Target.td updated: 1.31 -> 1.32
---
Log message:
Fill out immediate operand classes, add a new Operand class
---
Diffs of the changes: (+14 -4)
Index: llvm/lib/Target/Target.td
diff -u llvm/lib/Target/Target.td:1.31 llvm/lib/Target/Target.td:1.32
--- llvm/lib/Target/Target.td:1.31 Mon Aug 9 14:13:22 2004
+++ llvm/lib/Target/Target.td Tue Aug 10 20:53:34 2004
@@ -151,10 +151,20 @@
/// list for an instruction. This should be used like this:
/// (ops R32:$dst, R32:$src) or something similar.
def ops;
-def i8imm;
-def i16imm;
-def i32imm;
-def i64imm;
+
+/// Operand Types - These provide the built-in operand types that may be used
+/// by a target. Targets can optionally provide their own operand types as
+/// needed, though this should not be needed for RISC targets.
+class Operand<ValueType ty> {
+ int NumMIOperands = 1;
+ ValueType Type = ty;
+ string PrintMethod = "printOperand";
+}
+
+def i8imm : Operand<i8>;
+def i16imm : Operand<i16>;
+def i32imm : Operand<i32>;
+def i64imm : Operand<i64>;
//===----------------------------------------------------------------------===//
// Target - This class contains the "global" target information
More information about the llvm-commits
mailing list