]> granicus.if.org Git - llvm/commitdiff
[X86] Remove result type constraints from the extloadv2f32/extloadv4f32/extloadv8f32...
authorCraig Topper <craig.topper@intel.com>
Thu, 30 May 2019 23:35:24 +0000 (23:35 +0000)
committerCraig Topper <craig.topper@intel.com>
Thu, 30 May 2019 23:35:24 +0000 (23:35 +0000)
The result types aren't mentioned in the pattern name so really shouldn't be in the PatFrags.

The users of these either have their own type constraint or rely on the type constranit system to realize the only legal extend would be to f64.

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

lib/Target/X86/X86InstrFragmentsSIMD.td

index c7f1021b87bd4528046d667e2c51c62d3306d5b1..8a6f09f5cacf51e0db8f2a4cddbf02f278ccd87c 100644 (file)
@@ -746,9 +746,9 @@ def loadv32i16   : PatFrag<(ops node:$ptr), (v32i16 (load node:$ptr))>;
 def loadv64i8    : PatFrag<(ops node:$ptr), (v64i8  (load node:$ptr))>;
 
 // 128-/256-/512-bit extload pattern fragments
-def extloadv2f32 : PatFrag<(ops node:$ptr), (v2f64 (extloadvf32 node:$ptr))>;
-def extloadv4f32 : PatFrag<(ops node:$ptr), (v4f64 (extloadvf32 node:$ptr))>;
-def extloadv8f32 : PatFrag<(ops node:$ptr), (v8f64 (extloadvf32 node:$ptr))>;
+def extloadv2f32 : PatFrag<(ops node:$ptr), (extloadvf32 node:$ptr)>;
+def extloadv4f32 : PatFrag<(ops node:$ptr), (extloadvf32 node:$ptr)>;
+def extloadv8f32 : PatFrag<(ops node:$ptr), (extloadvf32 node:$ptr)>;
 
 // Like 'store', but always requires vector size alignment.
 def alignedstore : PatFrag<(ops node:$val, node:$ptr),