summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/avx512f-builtins.c
diff options
context:
space:
mode:
authorAdam Nemet <anemet@apple.com>2014-08-13 00:29:01 +0000
committerAdam Nemet <anemet@apple.com>2014-08-13 00:29:01 +0000
commit4abc07cb752523503cfefc13f122bedbd346b633 (patch)
tree6398300bdf8b4fac048c44f0e12f803ebdea890c /clang/test/CodeGen/avx512f-builtins.c
parentde443c500203d262c87a27e3f9272b520ff15d9f (diff)
downloadbcm5719-llvm-4abc07cb752523503cfefc13f122bedbd346b633.tar.gz
bcm5719-llvm-4abc07cb752523503cfefc13f122bedbd346b633.zip
[AVX512] Add intrinsics for FP scalar broadcasts
Similar approach to the set1 intrinsics is used: implement in terms of vector initializers and then ensure with an LLVM test that a broadcast is generated at the end. Part of <rdar://problem/17688758> llvm-svn: 215486
Diffstat (limited to 'clang/test/CodeGen/avx512f-builtins.c')
-rw-r--r--clang/test/CodeGen/avx512f-builtins.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/CodeGen/avx512f-builtins.c b/clang/test/CodeGen/avx512f-builtins.c
index 35d79a8bff1..b5b4ff23916 100644
--- a/clang/test/CodeGen/avx512f-builtins.c
+++ b/clang/test/CodeGen/avx512f-builtins.c
@@ -137,3 +137,17 @@ __m512i test_mm512_valign_epi64(__m512i a, __m512i b)
// CHECK: @llvm.x86.avx512.mask.valign.q.512
return _mm512_valign_epi64(a, b, 2);
}
+
+__m512d test_mm512_broadcastsd_pd(__m128d a)
+{
+ // CHECK-LABEL: @test_mm512_broadcastsd_pd
+ // CHECK: insertelement <8 x double> {{.*}}, i32 0
+ // CHECK: insertelement <8 x double> {{.*}}, i32 1
+ // CHECK: insertelement <8 x double> {{.*}}, i32 2
+ // CHECK: insertelement <8 x double> {{.*}}, i32 3
+ // CHECK: insertelement <8 x double> {{.*}}, i32 4
+ // CHECK: insertelement <8 x double> {{.*}}, i32 5
+ // CHECK: insertelement <8 x double> {{.*}}, i32 6
+ // CHECK: insertelement <8 x double> {{.*}}, i32 7
+ return _mm512_broadcastsd_pd(a);
+}
OpenPOWER on IntegriCloud