diff options
author | Craig Topper <craig.topper@gmail.com> | 2016-05-30 17:10:30 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2016-05-30 17:10:30 +0000 |
commit | 09175dab317616cde85f043fb8d89ba2f36a8e2f (patch) | |
tree | aba040b35b30dfc789bbcfca31f0d65894463f52 /clang/test/CodeGen/sse-builtins.c | |
parent | 83817327fcc06878a277c2b98aa2ee01ed263492 (diff) | |
download | bcm5719-llvm-09175dab317616cde85f043fb8d89ba2f36a8e2f.tar.gz bcm5719-llvm-09175dab317616cde85f043fb8d89ba2f36a8e2f.zip |
[X86] Replace unaligned store builtins in SSE/AVX intrinsic files with code that will compile to a native unaligned store. Remove the builtins since they are no longer used.
Intrinsics will be removed from llvm in a future commit.
llvm-svn: 271214
Diffstat (limited to 'clang/test/CodeGen/sse-builtins.c')
-rw-r--r-- | clang/test/CodeGen/sse-builtins.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/clang/test/CodeGen/sse-builtins.c b/clang/test/CodeGen/sse-builtins.c index 8ab7755fe11..3ede4ce336f 100644 --- a/clang/test/CodeGen/sse-builtins.c +++ b/clang/test/CodeGen/sse-builtins.c @@ -651,7 +651,8 @@ void test_mm_store_ps(float* x, __m128 y) { void test_mm_store_ps1(float* x, __m128 y) { // CHECK-LABEL: test_mm_store_ps1 // CHECK: shufflevector <4 x float> %{{.*}}, <4 x float> %{{.*}}, <4 x i32> zeroinitializer - // CHECK: call void @llvm.x86.sse.storeu.ps(i8* %{{.*}}, <4 x float> %{{.*}}) + // CHECK: store <4 x float> %{{.*}}, <4 x float>* %{{.*}}, align 1{{$}} + // CHECK-NEXT: ret void _mm_store_ps1(x, y); } @@ -665,7 +666,8 @@ void test_mm_store_ss(float* x, __m128 y) { void test_mm_store1_ps(float* x, __m128 y) { // CHECK-LABEL: test_mm_store1_ps // CHECK: shufflevector <4 x float> %{{.*}}, <4 x float> %{{.*}}, <4 x i32> zeroinitializer - // CHECK: call void @llvm.x86.sse.storeu.ps(i8* %{{.*}}, <4 x float> %{{.*}}) + // CHECK: store <4 x float> %{{.*}}, <4 x float>* %{{.*}}, align 1{{$}} + // CHECK-NEXT: ret void _mm_store1_ps(x, y); } @@ -694,7 +696,8 @@ void test_mm_storer_ps(float* x, __m128 y) { void test_mm_storeu_ps(float* x, __m128 y) { // CHECK-LABEL: test_mm_storeu_ps - // CHECK: call void @llvm.x86.sse.storeu.ps(i8* %{{.*}}, <4 x float> %{{.*}}) + // CHECK: store <4 x float> %{{.*}}, <4 x float>* %{{.*}}, align 1{{$}} + // CHECK-NEXT: ret void _mm_storeu_ps(x, y); } |