diff --git a/llvm/test/CodeGen/X86/avx512-shuffles/shuffle-blend.ll b/llvm/test/CodeGen/X86/avx512-shuffles/shuffle-blend.ll index 814a4ee163ae..af8621d65f7b 100644 --- a/llvm/test/CodeGen/X86/avx512-shuffles/shuffle-blend.ll +++ b/llvm/test/CodeGen/X86/avx512-shuffles/shuffle-blend.ll @@ -1,5 +1,6 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc -mtriple=x86_64-unknown-linux-gnu -mattr=+avx512f,+avx512vl,+avx512bw %s -o - | FileCheck %s +; RUN: llc < %s -mtriple=i686-unknown-linux-gnu -mattr=+avx512f,+avx512vl,+avx512bw | FileCheck %s +; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mattr=+avx512f,+avx512vl,+avx512bw | FileCheck %s define <16 x i32> @shuffle_v8i64(<16 x i32> %t0, <16 x i32> %t1) { ; CHECK-LABEL: shuffle_v8i64: @@ -10,7 +11,7 @@ define <16 x i32> @shuffle_v8i64(<16 x i32> %t0, <16 x i32> %t1) { ; CHECK-NEXT: kmovd %eax, %k1 ; CHECK-NEXT: vmovdqa64 %zmm0, %zmm2 {%k1} ; CHECK-NEXT: vmovdqa64 %zmm2, %zmm0 -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} entry: %t2 = add nsw <16 x i32> %t0, %t1 %t3 = sub nsw <16 x i32> %t0, %t1 @@ -24,7 +25,7 @@ define <8 x i32> @shuffle_v4i64(<8 x i32> %t0, <8 x i32> %t1) { ; CHECK-NEXT: vpaddd %ymm1, %ymm0, %ymm2 ; CHECK-NEXT: vpsubd %ymm1, %ymm0, %ymm0 ; CHECK-NEXT: vpblendd {{.*#+}} ymm0 = ymm2[0,1],ymm0[2,3],ymm2[4,5],ymm0[6,7] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} entry: %t2 = add nsw <8 x i32> %t0, %t1 %t3 = sub nsw <8 x i32> %t0, %t1 @@ -38,7 +39,7 @@ define <4 x i32> @shuffle_v2i64(<4 x i32> %t0, <4 x i32> %t1) { ; CHECK-NEXT: vpaddd %xmm1, %xmm0, %xmm2 ; CHECK-NEXT: vpsubd %xmm1, %xmm0, %xmm0 ; CHECK-NEXT: vpblendd {{.*#+}} xmm0 = xmm2[0,1],xmm0[2,3] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} entry: %t2 = add nsw <4 x i32> %t0, %t1 %t3 = sub nsw <4 x i32> %t0, %t1 @@ -52,7 +53,7 @@ define <2 x i32> @shuffle_v2i32(<2 x i32> %t0, <2 x i32> %t1) { ; CHECK-NEXT: vpaddd %xmm1, %xmm0, %xmm2 ; CHECK-NEXT: vpsubd %xmm1, %xmm0, %xmm0 ; CHECK-NEXT: vpblendd {{.*#+}} xmm0 = xmm2[0],xmm0[1],xmm2[2,3] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} entry: %t2 = add nsw <2 x i32> %t0, %t1 %t3 = sub nsw <2 x i32> %t0, %t1 @@ -69,7 +70,7 @@ define <64 x i8> @addb_selectw_64xi8(<64 x i8> %t0, <64 x i8> %t1) { ; CHECK-NEXT: kmovd %eax, %k1 ; CHECK-NEXT: vmovdqu16 %zmm0, %zmm2 {%k1} ; CHECK-NEXT: vmovdqa64 %zmm2, %zmm0 -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <64 x i8> %t0, %t1 %t3 = sub nsw <64 x i8> %t0, %t1 %t4 = shufflevector <64 x i8> %t2, <64 x i8> %t3, <64 x i32> @@ -83,7 +84,7 @@ define <32 x i8> @addb_selectw_32xi8(<32 x i8> %t0, <32 x i8> %t1) { ; CHECK-NEXT: vpsubb %xmm1, %xmm0, %xmm0 ; CHECK-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3,4,5,6,7] ; CHECK-NEXT: vpblendd {{.*#+}} ymm0 = ymm0[0,1,2,3],ymm2[4,5,6,7] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <32 x i8> %t0, %t1 %t3 = sub nsw <32 x i8> %t0, %t1 %t4 = shufflevector <32 x i8> %t2, <32 x i8> %t3, <32 x i32> @@ -96,7 +97,7 @@ define <16 x i8> @addb_selectw_16xi8(<16 x i8> %t0, <16 x i8> %t1) { ; CHECK-NEXT: vpaddb %xmm1, %xmm0, %xmm2 ; CHECK-NEXT: vpsubb %xmm1, %xmm0, %xmm0 ; CHECK-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3,4,5,6,7] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <16 x i8> %t0, %t1 %t3 = sub nsw <16 x i8> %t0, %t1 %t4 = shufflevector <16 x i8> %t2, <16 x i8> %t3, <16 x i32> @@ -112,7 +113,7 @@ define <32 x i16> @addw_selectd_32xi16(<32 x i16> %t0, <32 x i16> %t1) { ; CHECK-NEXT: kmovd %eax, %k1 ; CHECK-NEXT: vmovdqa32 %zmm0, %zmm2 {%k1} ; CHECK-NEXT: vmovdqa64 %zmm2, %zmm0 -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <32 x i16> %t0, %t1 %t3 = sub nsw <32 x i16> %t0, %t1 %t4 = shufflevector <32 x i16> %t2, <32 x i16> %t3, <32 x i32> @@ -125,7 +126,7 @@ define <16 x i16> @addw_selectd_16xi16(<16 x i16> %t0, <16 x i16> %t1) { ; CHECK-NEXT: vpaddw %ymm1, %ymm0, %ymm2 ; CHECK-NEXT: vpsubw %ymm1, %ymm0, %ymm0 ; CHECK-NEXT: vpblendd {{.*#+}} ymm0 = ymm0[0],ymm2[1,2,3,4,5,6,7] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <16 x i16> %t0, %t1 %t3 = sub nsw <16 x i16> %t0, %t1 %t4 = shufflevector <16 x i16> %t2, <16 x i16> %t3, <16 x i32> @@ -141,7 +142,7 @@ define <16 x i32> @addd_selectq_16xi32(<16 x i32> %t0, <16 x i32> %t1) { ; CHECK-NEXT: kmovd %eax, %k1 ; CHECK-NEXT: vmovdqa64 %zmm0, %zmm2 {%k1} ; CHECK-NEXT: vmovdqa64 %zmm2, %zmm0 -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <16 x i32> %t0, %t1 %t3 = sub nsw <16 x i32> %t0, %t1 %t4 = shufflevector <16 x i32> %t2, <16 x i32> %t3, <16 x i32> @@ -155,7 +156,7 @@ define <8 x i32> @addd_selectq_8xi32(<8 x i32> %t0, <8 x i32> %t1) { ; CHECK-NEXT: vpaddd %ymm1, %ymm0, %ymm2 ; CHECK-NEXT: vpsubd %ymm1, %ymm0, %ymm0 ; CHECK-NEXT: vpblendd {{.*#+}} ymm0 = ymm0[0,1],ymm2[2,3,4,5,6,7] -; CHECK-NEXT: retq +; CHECK-NEXT: ret{{[l|q]}} %t2 = add nsw <8 x i32> %t0, %t1 %t3 = sub nsw <8 x i32> %t0, %t1 %t4 = shufflevector <8 x i32> %t2, <8 x i32> %t3, <8 x i32>