[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