[llvm-commits] [llvm] r52454 - /llvm/trunk/lib/Target/X86/X86InstrInfo.td

Evan Cheng evan.cheng at apple.com
Wed Jun 18 01:13:07 PDT 2008


Author: evancheng
Date: Wed Jun 18 03:13:07 2008
New Revision: 52454

URL: http://llvm.org/viewvc/llvm-project?rev=52454&view=rev
Log:
XOR32rr, etc. are not AsCheapAsMove, but MOV32ri, etc. are.

Modified:
    llvm/trunk/lib/Target/X86/X86InstrInfo.td

Modified: llvm/trunk/lib/Target/X86/X86InstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrInfo.td?rev=52454&r1=52453&r2=52454&view=diff

==============================================================================
--- llvm/trunk/lib/Target/X86/X86InstrInfo.td (original)
+++ llvm/trunk/lib/Target/X86/X86InstrInfo.td Wed Jun 18 03:13:07 2008
@@ -578,7 +578,7 @@
 def MOV32rr : I<0x89, MRMDestReg, (outs GR32:$dst), (ins GR32:$src),
                 "mov{l}\t{$src, $dst|$dst, $src}", []>;
 }
-let isReMaterializable = 1 in {
+let isReMaterializable = 1, isAsCheapAsAMove = 1 in {
 def MOV8ri  : Ii8 <0xB0, AddRegFrm, (outs GR8 :$dst), (ins i8imm :$src),
                    "mov{b}\t{$src, $dst|$dst, $src}",
                    [(set GR8:$dst, imm:$src)]>;
@@ -1312,8 +1312,7 @@
 } // isTwoAddress = 0
 
 
-let isAsCheapAsAMove = 1,
-    isCommutable = 1 in { // X = XOR Y, Z --> X = XOR Z, Y
+let isCommutable = 1 in { // X = XOR Y, Z --> X = XOR Z, Y
   def XOR8rr   : I<0x30, MRMDestReg,
                    (outs GR8 :$dst), (ins GR8 :$src1, GR8 :$src2),
                    "xor{b}\t{$src2, $dst|$dst, $src2}",
@@ -1326,7 +1325,7 @@
                    (outs GR32:$dst), (ins GR32:$src1, GR32:$src2), 
                    "xor{l}\t{$src2, $dst|$dst, $src2}",
                    [(set GR32:$dst, (xor GR32:$src1, GR32:$src2))]>;
-} // isAsCheapAsAMove = 1, isCommutable = 1
+} // isCommutable = 1
 
 def XOR8rm   : I<0x32, MRMSrcMem , 
                  (outs GR8 :$dst), (ins GR8:$src1, i8mem :$src2), 





More information about the llvm-commits mailing list