diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-08-26 21:17:12 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2015-08-26 21:17:12 +0000 |
commit | 5aba9925c0bbc63f65077e55fef73211c16d5974 (patch) | |
tree | c89046ce38fe90453a72d0f99023a02539d6fdbb /clang/test/CodeGen/sse-builtins.c | |
parent | 0ab4b5b52e5828a23c7d7d37b7c5cba6cf86895a (diff) | |
download | bcm5719-llvm-5aba9925c0bbc63f65077e55fef73211c16d5974.tar.gz bcm5719-llvm-5aba9925c0bbc63f65077e55fef73211c16d5974.zip |
[X86][SSE] Add _mm_undefined_* intrinsics
Added missing SSE/AVX 'undefined' intrinsics (PR24040):
_mm_undefined_pd, _mm_undefined_ps + _mm_undefined_si128
_mm256_undefined_pd, _mm256_undefined_ps + _mm256_undefined_si256
_mm512_undefined, _mm512_undefined_ps, _mm512_undefined_pd + _mm512_undefined_epi32
Added builtin intrinsicss:
__builtin_ia32_undef128, __builtin_ia32_undef256 + __builtin_ia32_undef512
Differential Revision: http://reviews.llvm.org/D12052
llvm-svn: 246083
Diffstat (limited to 'clang/test/CodeGen/sse-builtins.c')
-rw-r--r-- | clang/test/CodeGen/sse-builtins.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/CodeGen/sse-builtins.c b/clang/test/CodeGen/sse-builtins.c index 45c2c12448e..887322d05a6 100644 --- a/clang/test/CodeGen/sse-builtins.c +++ b/clang/test/CodeGen/sse-builtins.c @@ -649,3 +649,21 @@ __m128i test_mm_cvtepu32_epi64(__m128i a) { // CHECK: call <2 x i64> @llvm.x86.sse41.pmovzxdq(<4 x i32> {{.*}}) return _mm_cvtepu32_epi64(a); } + +__m128 test_mm_undefined_ps() { + // CHECK-LABEL: @test_mm_undefined_ps + // CHECK: ret <4 x float> undef + return _mm_undefined_ps(); +} + +__m128d test_mm_undefined_pd() { + // CHECK-LABEL: @test_mm_undefined_pd + // CHECK: ret <2 x double> undef + return _mm_undefined_pd(); +} + +__m128i test_mm_undefined_si128() { + // CHECK-LABEL: @test_mm_undefined_si128 + // CHECK: ret <2 x i64> undef + return _mm_undefined_si128(); +} |