[llvm-commits] CVS: llvm/lib/Target/PowerPC/PowerPCInstrFormats.td PowerPCInstrInfo.td

Chris Lattner lattner at cs.uiuc.edu
Thu Sep 8 10:02:05 PDT 2005



Changes in directory llvm/lib/Target/PowerPC:

PowerPCInstrFormats.td updated: 1.47 -> 1.48
PowerPCInstrInfo.td updated: 1.90 -> 1.91
---
Log message:

Add patterns for some new instructions, allowing the use of the ineg fragment.



---
Diffs of the changes:  (+10 -10)

 PowerPCInstrFormats.td |    4 ++--
 PowerPCInstrInfo.td    |   16 ++++++++--------
 2 files changed, 10 insertions(+), 10 deletions(-)


Index: llvm/lib/Target/PowerPC/PowerPCInstrFormats.td
diff -u llvm/lib/Target/PowerPC/PowerPCInstrFormats.td:1.47 llvm/lib/Target/PowerPC/PowerPCInstrFormats.td:1.48
--- llvm/lib/Target/PowerPC/PowerPCInstrFormats.td:1.47	Fri Sep  2 17:35:53 2005
+++ llvm/lib/Target/PowerPC/PowerPCInstrFormats.td	Thu Sep  8 12:01:54 2005
@@ -449,8 +449,8 @@
 }
 
 class XOForm_3<bits<6> opcode, bits<9> xo, bit oe, 
-               dag OL, string asmstr>
-  : XOForm_1<opcode, xo, oe, OL, asmstr, []> {
+               dag OL, string asmstr, list<dag> pattern>
+  : XOForm_1<opcode, xo, oe, OL, asmstr, pattern> {
   let RB = 0;
 }
 


Index: llvm/lib/Target/PowerPC/PowerPCInstrInfo.td
diff -u llvm/lib/Target/PowerPC/PowerPCInstrInfo.td:1.90 llvm/lib/Target/PowerPC/PowerPCInstrInfo.td:1.91
--- llvm/lib/Target/PowerPC/PowerPCInstrInfo.td:1.90	Fri Sep  2 20:28:40 2005
+++ llvm/lib/Target/PowerPC/PowerPCInstrInfo.td	Thu Sep  8 12:01:54 2005
@@ -60,10 +60,6 @@
 def not  : PatFrag<(ops node:$in), (xor node:$in, immAllOnes)>;
 def ineg : PatFrag<(ops node:$in), (sub immZero, node:$in)>;
 
-
-
-
-
 class isPPC64 { bit PPC64 = 1; }
 class isVMX   { bit VMX = 1; }
 class isDOT   {
@@ -476,13 +472,17 @@
                      "subfe $rT, $rA, $rB",
                      []>;
 def ADDME  : XOForm_3<31, 234, 0, (ops GPRC:$rT, GPRC:$rA),
-                      "addme $rT, $rA">;
+                      "addme $rT, $rA",
+                      []>;
 def ADDZE  : XOForm_3<31, 202, 0, (ops GPRC:$rT, GPRC:$rA),
-                      "addze $rT, $rA">;
+                      "addze $rT, $rA",
+                      []>;
 def NEG    : XOForm_3<31, 104, 0, (ops GPRC:$rT, GPRC:$rA),
-                      "neg $rT, $rA">;
+                      "neg $rT, $rA",
+                      [(set GPRC:$rT, (ineg GPRC:$rA))]>;
 def SUBFZE : XOForm_3<31, 200, 0, (ops GPRC:$rT, GPRC:$rA),
-                      "subfze $rT, $rA">;
+                      "subfze $rT, $rA",
+                      []>;
 
 // A-Form instructions.  Most of the instructions executed in the FPU are of
 // this type.






More information about the llvm-commits mailing list