[X86] Update test cases to make sure storeu builtins use the storeu instrinsics. We were previously matching on other stores in the IR from this being an -O0 test.

We should probably look into making the storeu builtins just emit a normal store with an alignment of 1.

llvm-svn: 270664
This commit is contained in:
Craig Topper 2016-05-25 05:26:23 +00:00
parent 7f9a9ebdbc
commit f70a61ff3f
2 changed files with 4 additions and 4 deletions

View File

@ -665,7 +665,7 @@ 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: store <4 x float> %{{.*}}, <4 x float>* {{.*}}, align 16
// CHECK: call void @llvm.x86.sse.storeu.ps(i8* %{{.*}}, <4 x float> %{{.*}})
_mm_store1_ps(x, y);
}
@ -694,7 +694,7 @@ 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: store <4 x float> %{{.*}}, <4 x float>* {{.*}}, align 1
// CHECK: call void @llvm.x86.sse.storeu.ps(i8* %{{.*}}, <4 x float> %{{.*}})
_mm_storeu_ps(x, y);
}

View File

@ -1256,13 +1256,13 @@ void test_mm_storer_pd(__m128d A, double* B) {
void test_mm_storeu_pd(double* A, __m128d B) {
// CHECK-LABEL: test_mm_storeu_pd
// CHECK: store <2 x double> %{{.*}}, <2 x double>* %{{.*}}, align 1
// CHECK: call void @llvm.x86.sse2.storeu.pd(i8* %{{.*}}, <2 x double> %{{.*}})
_mm_storeu_pd(A, B);
}
void test_mm_storeu_si128(__m128i* A, __m128i B) {
// CHECK-LABEL: test_mm_storeu_si128
// CHECK: store <2 x i64> %{{.*}}, <2 x i64>* %{{.*}}, align 1
// CHECK: call void @llvm.x86.sse2.storeu.dq(i8* %{{.*}}, <16 x i8> %{{.*}})
_mm_storeu_si128(A, B);
}