[PATCH] Match new shuffle codegen for MOVHPD patterns (PR21791)

Tom Stellard thomas.stellard at amd.com
Thu Dec 11 01:25:56 PST 2014


REPOSITORY
  rL LLVM

================
Comment at: llvm/trunk/lib/Target/X86/X86InstrSSE.td:1381-1385
@@ -1371,2 +1380,7 @@
             (MOVHPDrm VR128:$src1, addr:$src2)>;
+
+  def : Pat<(store (f64 (vector_extract
+                          (v2f64 (X86Shufp VR128:$src, VR128:$src, (i8 1))),
+                          (iPTR 0))), addr:$dst),
+            (MOVHPDmr addr:$dst, VR128:$src)>;
 }
----------------
The types on the output pattern aren't needed any more, so you can do:

(MOVHPDmr $dst, $src)

Also, you can use types instead of register class on the input patterns.

http://reviews.llvm.org/D6586

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list