diff options
Diffstat (limited to 'clang/test/CodeGen')
-rw-r--r-- | clang/test/CodeGen/avx2-builtins.c | 2 | ||||
-rw-r--r-- | clang/test/CodeGen/avx512bw-builtins.c | 1 | ||||
-rw-r--r-- | clang/test/CodeGen/avx512vlbw-builtins.c | 1 | ||||
-rw-r--r-- | clang/test/CodeGen/mmx-builtins.c | 1 | ||||
-rw-r--r-- | clang/test/CodeGen/sse42-builtins.c | 23 |
5 files changed, 28 insertions, 0 deletions
diff --git a/clang/test/CodeGen/avx2-builtins.c b/clang/test/CodeGen/avx2-builtins.c index fa74adc3796..905728879c4 100644 --- a/clang/test/CodeGen/avx2-builtins.c +++ b/clang/test/CodeGen/avx2-builtins.c @@ -1,5 +1,7 @@ // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +avx2 -emit-llvm -o - -Werror | FileCheck %s +// RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +avx2 -fno-signed-char -emit-llvm -o - -Werror | FileCheck %s // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +avx2 -S -o - -Werror | FileCheck %s --check-prefix=CHECK-ASM +// RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +avx2 -fno-signed-char -S -o - -Werror | FileCheck %s --check-prefix=CHECK-ASM // REQUIRES: x86-registered-target diff --git a/clang/test/CodeGen/avx512bw-builtins.c b/clang/test/CodeGen/avx512bw-builtins.c index a0f25beb3bb..2878b765417 100644 --- a/clang/test/CodeGen/avx512bw-builtins.c +++ b/clang/test/CodeGen/avx512bw-builtins.c @@ -1,4 +1,5 @@ // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -ffreestanding -target-feature +avx512bw -emit-llvm -o - -Werror | FileCheck %s +// RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -ffreestanding -target-feature +avx512bw -fno-signed-char -emit-llvm -o - -Werror | FileCheck %s #include <immintrin.h> diff --git a/clang/test/CodeGen/avx512vlbw-builtins.c b/clang/test/CodeGen/avx512vlbw-builtins.c index eb12d504a3c..b78f0d773e6 100644 --- a/clang/test/CodeGen/avx512vlbw-builtins.c +++ b/clang/test/CodeGen/avx512vlbw-builtins.c @@ -1,4 +1,5 @@ // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -ffreestanding -target-feature +avx512bw -target-feature +avx512vl -emit-llvm -o - -Werror | FileCheck %s +// RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -ffreestanding -target-feature +avx512bw -target-feature +avx512vl -fno-signed-char -emit-llvm -o - -Werror | FileCheck %s #include <immintrin.h> diff --git a/clang/test/CodeGen/mmx-builtins.c b/clang/test/CodeGen/mmx-builtins.c index e9f8d8696f9..f17d6eadff0 100644 --- a/clang/test/CodeGen/mmx-builtins.c +++ b/clang/test/CodeGen/mmx-builtins.c @@ -1,5 +1,6 @@ // REQUIRES: x86-registered-target // RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +ssse3 -S -o - | FileCheck %s +// RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +ssse3 -fno-signed-char -S -o - | FileCheck %s // FIXME: Disable inclusion of mm_malloc.h, our current implementation is broken // on win32 since we don't generally know how to find errno.h. diff --git a/clang/test/CodeGen/sse42-builtins.c b/clang/test/CodeGen/sse42-builtins.c index 6a56df798a1..4b56f12f8d7 100644 --- a/clang/test/CodeGen/sse42-builtins.c +++ b/clang/test/CodeGen/sse42-builtins.c @@ -1,12 +1,35 @@ // REQUIRES: x86-registered-target // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +sse4.2 -emit-llvm -o - -Werror | FileCheck %s +// RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +sse4.2 -fno-signed-char -emit-llvm -o - -Werror | FileCheck %s // RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +sse4.2 -S -o - -Werror | FileCheck %s --check-prefix=CHECK-ASM +// RUN: %clang_cc1 %s -O0 -triple=x86_64-apple-darwin -target-feature +sse4.2 -fno-signed-char -S -o - -Werror | FileCheck %s --check-prefix=CHECK-ASM // Don't include mm_malloc.h, it's system specific. #define __MM_MALLOC_H #include <x86intrin.h> +__m128i test_mm_cmpgt_epi8(__m128i A, __m128i B) { + // CHECK-LABEL: test_mm_cmpgt_epi8 + // CHECK: icmp sgt <16 x i8> + // CHECK-ASM: pcmpgtb %xmm{{.*}}, %xmm{{.*}} + return _mm_cmpgt_epi8(A, B); +} + +__m128i test_mm_cmpgt_epi16(__m128i A, __m128i B) { + // CHECK-LABEL: test_mm_cmpgt_epi16 + // CHECK: icmp sgt <8 x i16> + // CHECK-ASM: pcmpgtw %xmm{{.*}}, %xmm{{.*}} + return _mm_cmpgt_epi16(A, B); +} + +__m128i test_mm_cmpgt_epi32(__m128i A, __m128i B) { + // CHECK-LABEL: test_mm_cmpgt_epi32 + // CHECK: icmp sgt <4 x i32> + // CHECK-ASM: pcmpgtd %xmm{{.*}}, %xmm{{.*}} + return _mm_cmpgt_epi32(A, B); +} + __m128i test_mm_cmpgt_epi64(__m128i A, __m128i B) { // CHECK-LABEL: test_mm_cmpgt_epi64 // CHECK: icmp sgt <2 x i64> |