@@ -1351,11 +1351,6 @@ static SDValue lower128BitShuffle(const SDLoc &DL, ArrayRef<int> Mask, MVT VT,
1351
1351
/* V2 = V1; */
1352
1352
}
1353
1353
1354
- if (VT.SimpleTy == MVT::v2i64 || VT.SimpleTy == MVT::v2f64) {
1355
- if ((Result = lowerVECTOR_SHUFFLE_VSHUF4I (DL, Mask, VT, V1, V2, DAG)))
1356
- return Result;
1357
- }
1358
-
1359
1354
// It is recommended not to change the pattern comparison order for better
1360
1355
// performance.
1361
1356
if ((Result = lowerVECTOR_SHUFFLE_VPACKEV (DL, Mask, VT, V1, V2, DAG)))
@@ -1370,6 +1365,9 @@ static SDValue lower128BitShuffle(const SDLoc &DL, ArrayRef<int> Mask, MVT VT,
1370
1365
return Result;
1371
1366
if ((Result = lowerVECTOR_SHUFFLE_VPICKOD (DL, Mask, VT, V1, V2, DAG)))
1372
1367
return Result;
1368
+ if ((VT.SimpleTy == MVT::v2i64 || VT.SimpleTy == MVT::v2f64) &&
1369
+ (Result = lowerVECTOR_SHUFFLE_VSHUF4I (DL, Mask, VT, V1, V2, DAG)))
1370
+ return Result;
1373
1371
if ((Result = lowerVECTOR_SHUFFLEAsZeroOrAnyExtend (DL, Mask, VT, V1, V2, DAG,
1374
1372
Zeroable)))
1375
1373
return Result;
@@ -1793,11 +1791,6 @@ static SDValue lower256BitShuffle(const SDLoc &DL, ArrayRef<int> Mask, MVT VT,
1793
1791
/* V2 = V1; */
1794
1792
}
1795
1793
1796
- if (VT.SimpleTy == MVT::v4i64 || VT.SimpleTy == MVT::v4f64) {
1797
- if ((Result = lowerVECTOR_SHUFFLE_XVSHUF4I (DL, NewMask, VT, V1, V2, DAG)))
1798
- return Result;
1799
- }
1800
-
1801
1794
// It is recommended not to change the pattern comparison order for better
1802
1795
// performance.
1803
1796
if ((Result = lowerVECTOR_SHUFFLE_XVPACKEV (DL, NewMask, VT, V1, V2, DAG)))
@@ -1812,6 +1805,9 @@ static SDValue lower256BitShuffle(const SDLoc &DL, ArrayRef<int> Mask, MVT VT,
1812
1805
return Result;
1813
1806
if ((Result = lowerVECTOR_SHUFFLE_XVPICKOD (DL, NewMask, VT, V1, V2, DAG)))
1814
1807
return Result;
1808
+ if ((VT.SimpleTy == MVT::v4i64 || VT.SimpleTy == MVT::v4f64) &&
1809
+ (Result = lowerVECTOR_SHUFFLE_XVSHUF4I (DL, NewMask, VT, V1, V2, DAG)))
1810
+ return Result;
1815
1811
if ((Result =
1816
1812
lowerVECTOR_SHUFFLEAsShift (DL, NewMask, VT, V1, V2, DAG, Zeroable)))
1817
1813
return Result;
0 commit comments