Add neverHasSideEffects=1 on a couple move instructions.
authorCraig Topper <craig.topper@gmail.com>
Sun, 8 Sep 2013 00:50:45 +0000 (00:50 +0000)
committerCraig Topper <craig.topper@gmail.com>
Sun, 8 Sep 2013 00:50:45 +0000 (00:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190259 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrInfo.td
lib/Target/X86/X86InstrSSE.td

index 9aa75ff66ce85fe7e69cd6aef62cd265058d8a12..3123cbc58fe04a568be4b72f02a28dc068a25833 100644 (file)
@@ -1216,7 +1216,7 @@ def MOV8rr_NOREX : I<0x88, MRMDestReg,
                      (outs GR8_NOREX:$dst), (ins GR8_NOREX:$src),
                      "mov{b}\t{$src, $dst|$dst, $src}  # NOREX", [], IIC_MOV>,
                    Sched<[WriteMove]>;
-let mayStore = 1 in
+let mayStore = 1, neverHasSideEffects = 1 in
 def MOV8mr_NOREX : I<0x88, MRMDestMem,
                      (outs), (ins i8mem_NOREX:$dst, GR8_NOREX:$src),
                      "mov{b}\t{$src, $dst|$dst, $src}  # NOREX", [],
index b1cfbee6356e12e6a47b80127a88808ccc15174e..fd525f62f8262f69c59f39700cb7ff7fb73ed534 100644 (file)
@@ -3643,7 +3643,7 @@ def MOVDQUrm :   I<0x6F, MRMSrcMem, (outs VR128:$dst), (ins i128mem:$src),
                  XS, Requires<[UseSSE2]>;
 }
 
-let mayStore = 1, SchedRW = [WriteStore] in {
+let mayStore = 1, neverHasSideEffects = 1, SchedRW = [WriteStore] in {
 def MOVDQAmr : PDI<0x7F, MRMDestMem, (outs), (ins i128mem:$dst, VR128:$src),
                    "movdqa\t{$src, $dst|$dst, $src}",
                    [/*(alignedstore (v2i64 VR128:$src), addr:$dst)*/],