diff options
author | Cameron McInally <cameron.mcinally@nyu.edu> | 2013-10-31 13:56:31 +0000 |
---|---|---|
committer | Cameron McInally <cameron.mcinally@nyu.edu> | 2013-10-31 13:56:31 +0000 |
commit | 424f19732e948a854b454c70722a4eca8957bc20 (patch) | |
tree | 632126a47cc5d0ab2e8ea22ef8e8dce469346494 /test/CodeGen/X86/avx512-intrinsics.ll | |
parent | f3280b5860734b367cdcdd9909a7f4f4645369fc (diff) | |
download | llvm-424f19732e948a854b454c70722a4eca8957bc20.tar.gz llvm-424f19732e948a854b454c70722a4eca8957bc20.tar.bz2 llvm-424f19732e948a854b454c70722a4eca8957bc20.tar.xz |
Add AVX512 unmasked integer broadcast intrinsics and support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193748 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/avx512-intrinsics.ll')
-rw-r--r-- | test/CodeGen/X86/avx512-intrinsics.ll | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/test/CodeGen/X86/avx512-intrinsics.ll b/test/CodeGen/X86/avx512-intrinsics.ll index 29b508302d..8a51248706 100644 --- a/test/CodeGen/X86/avx512-intrinsics.ll +++ b/test/CodeGen/X86/avx512-intrinsics.ll @@ -234,6 +234,34 @@ define <8 x double> @test_x86_vbroadcast_sd_pd_512(<2 x double> %a0) { } declare <8 x double> @llvm.x86.avx512.vbroadcast.sd.pd.512(<2 x double>) nounwind readonly +define <16 x i32> @test_x86_pbroadcastd_512(<4 x i32> %a0) { + ; CHECK: vpbroadcastd + %res = call <16 x i32> @llvm.x86.avx512.pbroadcastd.512(<4 x i32> %a0) ; <<16 x i32>> [#uses=1] + ret <16 x i32> %res +} +declare <16 x i32> @llvm.x86.avx512.pbroadcastd.512(<4 x i32>) nounwind readonly + +define <16 x i32> @test_x86_pbroadcastd_i32_512(i32 %a0) { + ; CHECK: vpbroadcastd + %res = call <16 x i32> @llvm.x86.avx512.pbroadcastd.i32.512(i32 %a0) ; <<16 x i32>> [#uses=1] + ret <16 x i32> %res +} +declare <16 x i32> @llvm.x86.avx512.pbroadcastd.i32.512(i32) nounwind readonly + +define <8 x i64> @test_x86_pbroadcastq_512(<2 x i64> %a0) { + ; CHECK: vpbroadcastq + %res = call <8 x i64> @llvm.x86.avx512.pbroadcastq.512(<2 x i64> %a0) ; <<8 x i64>> [#uses=1] + ret <8 x i64> %res +} +declare <8 x i64> @llvm.x86.avx512.pbroadcastq.512(<2 x i64>) nounwind readonly + +define <8 x i64> @test_x86_pbroadcastq_i64_512(i64 %a0) { + ; CHECK: vpbroadcastq + %res = call <8 x i64> @llvm.x86.avx512.pbroadcastq.i64.512(i64 %a0) ; <<8 x i64>> [#uses=1] + ret <8 x i64> %res +} +declare <8 x i64> @llvm.x86.avx512.pbroadcastq.i64.512(i64) nounwind readonly + define <16 x i32> @test_x86_pmaxu_d(<16 x i32> %a0, <16 x i32> %a1) { ; CHECK: vpmaxud %res = call <16 x i32> @llvm.x86.avx512.pmaxu.d(<16 x i32> %a0, <16 x i32> %a1) ; <<16 x i32>> [#uses=1] |