[X86] Remove apparently unneeded patterns for storing a bitcasted extractelement.
authorCraig Topper <craig.topper@intel.com>
Mon, 11 Mar 2019 06:01:02 +0000 (06:01 +0000)
committerCraig Topper <craig.topper@intel.com>
Mon, 11 Mar 2019 06:01:02 +0000 (06:01 +0000)
I suspect if this pattern was seen, DAG combine would just change the type of the store to eliminate the bitcast.

llvm-svn: 355809

llvm/lib/Target/X86/X86InstrSSE.td

index 783c246..784aa17 100644 (file)
@@ -5495,18 +5495,6 @@ let ExeDomain = SSEPackedSingle in {
   defm EXTRACTPS   : SS41I_extractf32<0x17, "extractps">;
 }
 
-// Also match an EXTRACTPS store when the store is done as f32 instead of i32.
-def : Pat<(store (f32 (bitconvert (extractelt (bc_v4i32 (v4f32 VR128:$src1)),
-                                              imm:$src2))),
-                 addr:$dst),
-          (VEXTRACTPSmr addr:$dst, VR128:$src1, imm:$src2)>,
-          Requires<[HasAVX]>;
-def : Pat<(store (f32 (bitconvert (extractelt (bc_v4i32 (v4f32 VR128:$src1)),
-                                              imm:$src2))),
-                 addr:$dst),
-          (EXTRACTPSmr addr:$dst, VR128:$src1, imm:$src2)>,
-          Requires<[UseSSE41]>;
-
 //===----------------------------------------------------------------------===//
 // SSE4.1 - Insert Instructions
 //===----------------------------------------------------------------------===//