summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/CodeGen/builtins-x86.c4
-rw-r--r--clang/test/CodeGen/sse-builtins.c20
2 files changed, 23 insertions, 1 deletions
diff --git a/clang/test/CodeGen/builtins-x86.c b/clang/test/CodeGen/builtins-x86.c
index 9e78235d374..261bf2f5d8b 100644
--- a/clang/test/CodeGen/builtins-x86.c
+++ b/clang/test/CodeGen/builtins-x86.c
@@ -55,6 +55,7 @@ void f0() {
const float* tmp_fCp;
double* tmp_dp;
const double* tmp_dCp;
+ long long* tmp_LLip;
#define imm_i 32
#define imm_i_0_2 0
@@ -288,6 +289,9 @@ void f0() {
tmp_i = __builtin_ia32_movmskpd(tmp_V2d);
tmp_i = __builtin_ia32_pmovmskb128(tmp_V16c);
(void) __builtin_ia32_movnti(tmp_ip, tmp_i);
+#ifdef USE_64
+ (void) __builtin_ia32_movnti64(tmp_LLip, tmp_LLi);
+#endif
(void) __builtin_ia32_movntpd(tmp_dp, tmp_V2d);
(void) __builtin_ia32_movntdq(tmp_V2LLip, tmp_V2LLi);
tmp_V2LLi = __builtin_ia32_psadbw128(tmp_V16c, tmp_V16c);
diff --git a/clang/test/CodeGen/sse-builtins.c b/clang/test/CodeGen/sse-builtins.c
index 2a4ca179673..559d855547b 100644
--- a/clang/test/CodeGen/sse-builtins.c
+++ b/clang/test/CodeGen/sse-builtins.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -ffreestanding -triple i386-apple-darwin9 -target-cpu pentium4 -target-feature +sse4.1 -g -emit-llvm %s -o - | FileCheck %s
+// RUN: %clang_cc1 -ffreestanding -triple x86_64-apple-macosx10.8.0 -target-feature +sse4.1 -g -emit-llvm %s -o - | FileCheck %s
#include <xmmintrin.h>
#include <emmintrin.h>
@@ -188,3 +188,21 @@ void test_storel_epi64(__m128i x, void* y) {
// CHECK: store {{.*}} i64* {{.*}}, align 1{{$}}
_mm_storel_epi64(y, x);
}
+
+void test_stream_si32(int x, void *y) {
+ // CHECK-LABEL: define void @test_stream_si32
+ // CHECK: store {{.*}} i32* {{.*}}, align 1, !nontemporal
+ _mm_stream_si32(y, x);
+}
+
+void test_stream_si64(long long x, void *y) {
+ // CHECK-LABEL: define void @test_stream_si64
+ // CHECK: store {{.*}} i64* {{.*}}, align 1, !nontemporal
+ _mm_stream_si64(y, x);
+}
+
+void test_stream_si128(__m128i x, void *y) {
+ // CHECK-LABEL: define void @test_stream_si128
+ // CHECK: store {{.*}} <2 x i64>* {{.*}}, align 16, !nontemporal
+ _mm_stream_si128(y, x);
+}
OpenPOWER on IntegriCloud