[X86] Make sure load is non-volatile in the MMX_X86movdq2q (loadv2i64) isel pattern.
authorCraig Topper <craig.topper@intel.com>
Thu, 15 Aug 2019 06:46:26 +0000 (06:46 +0000)
committerCraig Topper <craig.topper@intel.com>
Thu, 15 Aug 2019 06:46:26 +0000 (06:46 +0000)
This pattern will narrow the load so we should make sure its not
volatile.

llvm-svn: 368971

llvm/lib/Target/X86/X86InstrMMX.td

index 93e1cbd..82cad92 100644 (file)
@@ -574,7 +574,7 @@ def MMX_X86movdq2q : SDNode<"X86ISD::MOVDQ2Q", SDTypeProfile<1, 1,
 def : Pat<(x86mmx (MMX_X86movdq2q VR128:$src)),
           (x86mmx (MMX_MOVDQ2Qrr VR128:$src))>;
 
-def : Pat<(x86mmx (MMX_X86movdq2q (loadv2i64 addr:$src))),
+def : Pat<(x86mmx (MMX_X86movdq2q (v2i64 (nonvolatile_load addr:$src)))),
           (x86mmx (MMX_MOVQ64rm addr:$src))>;
 
 // Misc.