[OpenCL] make test independent of optimizer

There shouldn't be any tests that run the entire optimizer here,
but the last test in this file is definitely going to break with 
a change in LLVM IR canonicalization. Change that part to check
the unoptimized IR because that's the real intent of this file.

llvm-svn: 332473
This commit is contained in:
Sanjay Patel 2018-05-16 14:38:07 +00:00
parent bbc4e9a4e3
commit cda77b30e5
1 changed files with 8 additions and 7 deletions

View File

@ -58,16 +58,17 @@ int4 vectorVectorTest(int4 a,int4 b) {
return f;
}
//OPT: @vectorScalarTest
//NOOPT-LABEL: @vectorScalarTest
int4 vectorScalarTest(int4 a,int b) {
//OPT: [[SP0:%.+]] = insertelement <4 x i32> undef, i32 %b, i32 0
//OPT: [[SP1:%.+]] = shufflevector <4 x i32> [[SP0]], <4 x i32> undef, <4 x i32> zeroinitializer
//OPT: [[VSM:%.+]] = and <4 x i32> [[SP1]], <i32 31, i32 31, i32 31, i32 31>
//OPT-NEXT: [[VSC:%.+]] = shl <4 x i32> %a, [[VSM]]
//NOOPT: [[SP0:%.+]] = insertelement <4 x i32> undef
//NOOPT: [[SP1:%.+]] = shufflevector <4 x i32> [[SP0]], <4 x i32> undef, <4 x i32> zeroinitializer
//NOOPT: [[VSM:%.+]] = and <4 x i32> [[SP1]], <i32 31, i32 31, i32 31, i32 31>
//NOOPT: [[VSC:%.+]] = shl <4 x i32> [[VSS:%.+]], [[VSM]]
int4 c = a << b;
//OPT-NEXT: [[VSF:%.+]] = add <4 x i32> [[VSC]], <i32 4, i32 4, i32 4, i32 4>
//NOOPT: [[VSF:%.+]] = shl <4 x i32> [[VSC1:%.+]], <i32 2, i32 2, i32 2, i32 2>
//NOOPT: [[VSA:%.+]] = add <4 x i32> [[VSC2:%.+]], [[VSF]]
int4 d = {1, 1, 1, 1};
int4 f = c + (d << 34);
//OPT-NEXT: ret <4 x i32> [[VSF]]
//NOOPT: ret <4 x i32>
return f;
}