llvm.org GIT mirror llvm / 5f9237d
[CostModel][X86] Added v2f64/v2i64 single src shuffle model tests Fixed label checks for all prefixes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@310606 91177308-0d34-0410-b5e6-96231b3b80d8 Simon Pilgrim 2 years ago
1 changed file(s) with 21 addition(s) and 4 deletion(s). Raw diff Collapse all Expand all
99 ; Verify the cost model for 1 src shuffles
1010 ;
1111
12 ; AVX512-LABEL: 'test_vXf64'
13 define void @test_vXf64(<4 x double> %src256, <8 x double> %src512, <16 x double> %src1024) {
12 ; CHECK-LABEL: 'test_vXf64'
13 define void @test_vXf64(<2 x double> %src128, <4 x double> %src256, <8 x double> %src512, <16 x double> %src1024) {
14
15 ; SSE2: cost of 2 {{.*}} %V128 = shufflevector
16 ; SSSE3: cost of 2 {{.*}} %V128 = shufflevector
17 ; SSE42: cost of 2 {{.*}} %V128 = shufflevector
18 ; AVX1: cost of 2 {{.*}} %V128 = shufflevector
19 ; AVX2: cost of 2 {{.*}} %V128 = shufflevector
20 ; AVX512: cost of 1 {{.*}} %V128 = shufflevector
21 %V128 = shufflevector <2 x double> %src128, <2 x double> undef, <2 x i32>
22
1423 ; SSE2: cost of 4 {{.*}} %V256 = shufflevector
1524 ; SSSE3: cost of 4 {{.*}} %V256 = shufflevector
1625 ; SSE42: cost of 4 {{.*}} %V256 = shufflevector
3847 ret void
3948 }
4049
41 ; AVX512-LABEL: 'test_vXi64'
42 define void @test_vXi64(<4 x i64> %src256, <8 x i64> %src512) {
50 ; CHECK-LABEL: 'test_vXi64'
51 define void @test_vXi64(<2 x i64> %src128, <4 x i64> %src256, <8 x i64> %src512) {
52
53 ; SSE2: cost of 1 {{.*}} %V128 = shufflevector
54 ; SSSE3: cost of 1 {{.*}} %V128 = shufflevector
55 ; SSE42: cost of 1 {{.*}} %V128 = shufflevector
56 ; AVX1: cost of 1 {{.*}} %V128 = shufflevector
57 ; AVX2: cost of 1 {{.*}} %V128 = shufflevector
58 ; AVX512: cost of 1 {{.*}} %V128 = shufflevector
59 %V128 = shufflevector <2 x i64> %src128, <2 x i64> undef, <2 x i32>
4360
4461 ; SSE2: cost of 8 {{.*}} %V256 = shufflevector
4562 ; SSSE3: cost of 8 {{.*}} %V256 = shufflevector