]> granicus.if.org Git - llvm/commitdiff
[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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@355809 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86InstrSSE.td

index 783c246aadf6a2dad7b6cdd4b17cad55d2288f7e..784aa1752075749a45fa0c92bc88c077fed4b91d 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
 //===----------------------------------------------------------------------===//