summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen
diff options
context:
space:
mode:
authorElena Demikhovsky <elena.demikhovsky@intel.com>2013-10-22 09:19:28 +0000
committerElena Demikhovsky <elena.demikhovsky@intel.com>2013-10-22 09:19:28 +0000
commit1f3ed4169cc52b8fc6675105c291aafc724fcf64 (patch)
tree2d71a9fe56dc621fb06f8b6ebd137a8eecb5146a /llvm/test/CodeGen
parentfd4c66a5b0e686202cc47492c78fc5ed33bdd501 (diff)
downloadbcm5719-llvm-1f3ed4169cc52b8fc6675105c291aafc724fcf64.tar.gz
bcm5719-llvm-1f3ed4169cc52b8fc6675105c291aafc724fcf64.zip
AVX-512: aligned / unaligned load and store for 512-bit integer vectors.
llvm-svn: 193156
Diffstat (limited to 'llvm/test/CodeGen')
-rw-r--r--llvm/test/CodeGen/X86/avx512-mov.ll28
1 files changed, 28 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/avx512-mov.ll b/llvm/test/CodeGen/X86/avx512-mov.ll
index 6c5c586afd0..91242b1cc12 100644
--- a/llvm/test/CodeGen/X86/avx512-mov.ll
+++ b/llvm/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
+}
+
OpenPOWER on IntegriCloud