diff options
author | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2013-10-22 09:19:28 +0000 |
---|---|---|
committer | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2013-10-22 09:19:28 +0000 |
commit | ea79feb1a87af1e0e9c0fd3bf8831c4593b56d4d (patch) | |
tree | 71244718d2df517eb48a0908ef8b22ef5e4522b7 /test | |
parent | 3ebe47ee13fa29f1fdcb74f82ca42770e101b40e (diff) | |
download | external_llvm-ea79feb1a87af1e0e9c0fd3bf8831c4593b56d4d.zip external_llvm-ea79feb1a87af1e0e9c0fd3bf8831c4593b56d4d.tar.gz external_llvm-ea79feb1a87af1e0e9c0fd3bf8831c4593b56d4d.tar.bz2 |
AVX-512: aligned / unaligned load and store for 512-bit integer vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193156 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/CodeGen/X86/avx512-mov.ll | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/test/CodeGen/X86/avx512-mov.ll b/test/CodeGen/X86/avx512-mov.ll index 6c5c586..91242b1 100644 --- a/test/CodeGen/X86/avx512-mov.ll +++ b/test/CodeGen/X86/avx512-mov.ll @@ -125,3 +125,31 @@ define <4 x i32> @test15(i32* %x) { %res = insertelement <4 x i32>zeroinitializer, i32 %y, i32 0 ret <4 x i32>%res } + +; CHECK-LABEL: test16 +; CHECK: vmovdqu32 +; CHECK: ret +define <16 x i32> @test16(i8 * %addr) { + %vaddr = bitcast i8* %addr to <16 x i32>* + %res = load <16 x i32>* %vaddr, align 1 + ret <16 x i32>%res +} + +; CHECK-LABEL: test17 +; CHECK: vmovdqa32 +; CHECK: ret +define <16 x i32> @test17(i8 * %addr) { + %vaddr = bitcast i8* %addr to <16 x i32>* + %res = load <16 x i32>* %vaddr, align 64 + ret <16 x i32>%res +} + +; CHECK-LABEL: test18 +; CHECK: vmovdqa64 +; CHECK: ret +define void @test18(i8 * %addr, <8 x i64> %data) { + %vaddr = bitcast i8* %addr to <8 x i64>* + store <8 x i64>%data, <8 x i64>* %vaddr, align 64 + ret void +} + |