minor pattern shuffling
authorChris Lattner <sabre@nondot.org>
Mon, 26 Sep 2005 22:20:16 +0000 (22:20 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 26 Sep 2005 22:20:16 +0000 (22:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23458 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/PPCInstrInfo.td

index 23920e1bf0a9c1dd917037915e36ee32fd5ccbbb..d4d584eaf00c77982ee8b6f6d5daf5bd52206aa4 100644 (file)
@@ -182,7 +182,6 @@ class Pattern<dag patternToMatch, list<dag> resultInstrs> {
 // not needing a full list.
 class Pat<dag pattern, dag result> : Pattern<pattern, [result]>;
 
-
 //===----------------------------------------------------------------------===//
 // PowerPC specific transformation functions and pattern fragments.
 //
@@ -763,9 +762,9 @@ def RLDICR : MDForm_1<30, 1,
 // PowerPC Instruction Patterns
 //
 
-// REDUNDANT WITH INSTRUCTION DEFINITION, ONLY FOR TESTING.
-def : Pat<(sext_inreg GPRC:$in, i8),
-          (EXTSB GPRC:$in)>;
+// Arbitrary immediate support.  Implement in terms of LIS/ORI.
+def : Pat<(i32 imm:$imm),
+          (ORI (LIS (HI16 imm:$imm)), (LO16 imm:$imm))>;
           
 // or by an arbitrary immediate.
 def : Pat<(or GPRC:$in, imm:$imm),
@@ -774,10 +773,6 @@ def : Pat<(or GPRC:$in, imm:$imm),
 def : Pat<(xor GPRC:$in, imm:$imm),
           (XORIS (XORI GPRC:$in, (LO16 imm:$imm)), (HI16 imm:$imm))>;
 
-// Arbitrary immediate support.
-def : Pat<(i32 imm:$imm),
-          (ORI (LIS (HI16 imm:$imm)), (LO16 imm:$imm))>;
-
 
 // Same as above, but using a temporary. FIXME: implement temporaries :)
 /*