diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-03-10 14:42:17 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2016-03-10 14:42:17 +0000 |
commit | baed60dd0a4fe2bf2deea320d670b35ad0557da7 (patch) | |
tree | 80a519d9ecac5426b5d48f84da71c5dcbc120e5f | |
parent | cf3f4f25cad8969dc3f6c718d4f7e7b41bb1520f (diff) | |
download | bcm5719-llvm-baed60dd0a4fe2bf2deea320d670b35ad0557da7.tar.gz bcm5719-llvm-baed60dd0a4fe2bf2deea320d670b35ad0557da7.zip |
Updated SSSE3 builtin tests to more closely match the llvm fast-isel equivalent tests
llvm-svn: 263115
-rw-r--r-- | clang/test/CodeGen/ssse3-builtins.c | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/clang/test/CodeGen/ssse3-builtins.c b/clang/test/CodeGen/ssse3-builtins.c index d4b27a1e855..673387c066b 100644 --- a/clang/test/CodeGen/ssse3-builtins.c +++ b/clang/test/CodeGen/ssse3-builtins.c @@ -5,21 +5,23 @@ #include <x86intrin.h> +// NOTE: This should match the tests in llvm/test/CodeGen/X86/ssse3-intrinsics-fast-isel.ll + __m128i test_mm_abs_epi8(__m128i a) { // CHECK-LABEL: test_mm_abs_epi8 - // CHECK: call <16 x i8> @llvm.x86.ssse3.pabs.b.128 + // CHECK: call <16 x i8> @llvm.x86.ssse3.pabs.b.128(<16 x i8> %{{.*}}) return _mm_abs_epi8(a); } __m128i test_mm_abs_epi16(__m128i a) { // CHECK-LABEL: test_mm_abs_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.pabs.w.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.pabs.w.128(<8 x i16> %{{.*}}) return _mm_abs_epi16(a); } __m128i test_mm_abs_epi32(__m128i a) { // CHECK-LABEL: test_mm_abs_epi32 - // CHECK: call <4 x i32> @llvm.x86.ssse3.pabs.d.128 + // CHECK: call <4 x i32> @llvm.x86.ssse3.pabs.d.128(<4 x i32> %{{.*}}) return _mm_abs_epi32(a); } @@ -37,72 +39,72 @@ __m128i test2_mm_alignr_epi8(__m128i a, __m128i b) { __m128i test_mm_hadd_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_hadd_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.phadd.w.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.phadd.w.128(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}) return _mm_hadd_epi16(a, b); } __m128i test_mm_hadd_epi32(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_hadd_epi32 - // CHECK: call <4 x i32> @llvm.x86.ssse3.phadd.d.128 + // CHECK: call <4 x i32> @llvm.x86.ssse3.phadd.d.128(<4 x i32> %{{.*}}, <4 x i32> %{{.*}}) return _mm_hadd_epi32(a, b); } __m128i test_mm_hadds_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_hadds_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.phadd.sw.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.phadd.sw.128(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}) return _mm_hadds_epi16(a, b); } __m128i test_mm_hsub_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_hsub_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.phsub.w.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.phsub.w.128(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}) return _mm_hsub_epi16(a, b); } __m128i test_mm_hsub_epi32(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_hsub_epi32 - // CHECK: call <4 x i32> @llvm.x86.ssse3.phsub.d.128 + // CHECK: call <4 x i32> @llvm.x86.ssse3.phsub.d.128(<4 x i32> %{{.*}}, <4 x i32> %{{.*}}) return _mm_hsub_epi32(a, b); } __m128i test_mm_hsubs_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_hsubs_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.phsub.sw.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.phsub.sw.128(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}) return _mm_hsubs_epi16(a, b); } __m128i test_mm_maddubs_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_maddubs_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.pmadd.ub.sw.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.pmadd.ub.sw.128(<16 x i8> %{{.*}}, <16 x i8> %{{.*}}) return _mm_maddubs_epi16(a, b); } __m128i test_mm_mulhrs_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_mulhrs_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.pmul.hr.sw.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.pmul.hr.sw.128(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}) return _mm_mulhrs_epi16(a, b); } __m128i test_mm_shuffle_epi8(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_shuffle_epi8 - // CHECK: call <16 x i8> @llvm.x86.ssse3.pshuf.b.128 + // CHECK: call <16 x i8> @llvm.x86.ssse3.pshuf.b.128(<16 x i8> %{{.*}}, <16 x i8> %{{.*}}) return _mm_shuffle_epi8(a, b); } __m128i test_mm_sign_epi8(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_sign_epi8 - // CHECK: call <16 x i8> @llvm.x86.ssse3.psign.b.128 + // CHECK: call <16 x i8> @llvm.x86.ssse3.psign.b.128(<16 x i8> %{{.*}}, <16 x i8> %{{.*}}) return _mm_sign_epi8(a, b); } __m128i test_mm_sign_epi16(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_sign_epi16 - // CHECK: call <8 x i16> @llvm.x86.ssse3.psign.w.128 + // CHECK: call <8 x i16> @llvm.x86.ssse3.psign.w.128(<8 x i16> %{{.*}}, <8 x i16> %{{.*}}) return _mm_sign_epi16(a, b); } __m128i test_mm_sign_epi32(__m128i a, __m128i b) { // CHECK-LABEL: test_mm_sign_epi32 - // CHECK: call <4 x i32> @llvm.x86.ssse3.psign.d.128 + // CHECK: call <4 x i32> @llvm.x86.ssse3.psign.d.128(<4 x i32> %{{.*}}, <4 x i32> %{{.*}}) return _mm_sign_epi32(a, b); } |