diff options
author | Craig Topper <craig.topper@gmail.com> | 2011-11-29 05:37:58 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2011-11-29 05:37:58 +0000 |
commit | fe2a6c584a62508e7e7ab990a16bf84af51ce52e (patch) | |
tree | e4122f8146dd1199c50cd763bb4ab30f63674f21 /test/CodeGen/X86/avx2-intrinsics-x86.ll | |
parent | 108126cfc6eddf1e0c9c7db39e25323403f04bbc (diff) | |
download | llvm-fe2a6c584a62508e7e7ab990a16bf84af51ce52e.tar.gz llvm-fe2a6c584a62508e7e7ab990a16bf84af51ce52e.tar.bz2 llvm-fe2a6c584a62508e7e7ab990a16bf84af51ce52e.tar.xz |
Fix VINSERTF128/VEXTRACTF128 to be marked as FP instructions. Allow execution dependency fix pass to convert them to their integer equivalents when AVX2 is enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145376 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/avx2-intrinsics-x86.ll')
-rw-r--r-- | test/CodeGen/X86/avx2-intrinsics-x86.ll | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/CodeGen/X86/avx2-intrinsics-x86.ll b/test/CodeGen/X86/avx2-intrinsics-x86.ll index bab7fb81e5..a0f351de76 100644 --- a/test/CodeGen/X86/avx2-intrinsics-x86.ll +++ b/test/CodeGen/X86/avx2-intrinsics-x86.ll @@ -1046,3 +1046,13 @@ define <8 x i32> @test_x86_avx2_psrav_d_256(<8 x i32> %a0, <8 x i32> %a1) { ret <8 x i32> %res } declare <8 x i32> @llvm.x86.avx2.psrav.d.256(<8 x i32>, <8 x i32>) nounwind readnone + +; This is checked here because the execution dependency fix pass makes it hard to test in AVX mode since we don't have 256-bit integer instructions +define void @test_x86_avx_storeu_dq_256(i8* %a0, <32 x i8> %a1) { + ; CHECK: vmovdqu + ; add operation forces the execution domain. + %a2 = add <32 x i8> %a1, <i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1> + call void @llvm.x86.avx.storeu.dq.256(i8* %a0, <32 x i8> %a2) + ret void +} +declare void @llvm.x86.avx.storeu.dq.256(i8*, <32 x i8>) nounwind |