diff options
author | Adam Nemet <anemet@apple.com> | 2014-08-13 00:29:01 +0000 |
---|---|---|
committer | Adam Nemet <anemet@apple.com> | 2014-08-13 00:29:01 +0000 |
commit | 4abc07cb752523503cfefc13f122bedbd346b633 (patch) | |
tree | 6398300bdf8b4fac048c44f0e12f803ebdea890c /clang/test/CodeGen/avx512f-builtins.c | |
parent | de443c500203d262c87a27e3f9272b520ff15d9f (diff) | |
download | bcm5719-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.c | 14 |
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); +} |