[llvm-commits] CVS: llvm/lib/Target/Target.td
Chris Lattner
lattner at cs.uiuc.edu
Thu Jan 26 17:46:32 PST 2006
Changes in directory llvm/lib/Target:
Target.td updated: 1.68 -> 1.69
---
Log message:
PHI and INLINEASM are now built-in instructions provided by Target.td
---
Diffs of the changes: (+11 -3)
Target.td | 14 +++++++++++---
1 files changed, 11 insertions(+), 3 deletions(-)
Index: llvm/lib/Target/Target.td
diff -u llvm/lib/Target/Target.td:1.68 llvm/lib/Target/Target.td:1.69
--- llvm/lib/Target/Target.td:1.68 Mon Jan 9 12:28:21 2006
+++ llvm/lib/Target/Target.td Thu Jan 26 19:46:15 2006
@@ -171,7 +171,7 @@
bit hasCtrlDep = 0; // Does this instruction r/w ctrl-flow chains?
bit noResults = 0; // Does this instruction produce no results?
- InstrItinClass Itinerary; // Execution steps used for scheduling.
+ InstrItinClass Itinerary = NoItinerary;// Execution steps used for scheduling.
}
/// Predicates - These are extra conditionals which are turned into instruction
@@ -213,8 +213,6 @@
// which are global to the the target machine.
//
class InstrInfo {
- Instruction PHIInst;
-
// If the target wants to associate some target-specific information with each
// instruction, it should provide these two lists to indicate how to assemble
// the target specific information into the 32 bits available.
@@ -229,6 +227,16 @@
bit isLittleEndianEncoding = 0;
}
+// Standard Instructions.
+def PHI : Instruction {
+ let OperandList = (ops variable_ops);
+ let AsmString = "PHINODE";
+}
+def INLINEASM : Instruction {
+ let OperandList = (ops variable_ops);
+ let AsmString = "";
+}
+
//===----------------------------------------------------------------------===//
// AsmWriter - This class can be implemented by targets that need to customize
// the format of the .s file writer.
More information about the llvm-commits
mailing list