@@ -25,17 +25,17 @@ define <8 x float> @identity_test_vpermps(<8 x float> %a0) {
25
25
26
26
define <8 x i32 > @zero_test_vpermd (<8 x i32 > %a0 ) {
27
27
; CHECK-LABEL: @zero_test_vpermd(
28
- ; CHECK-NEXT: [[TMP1 :%.*]] = shufflevector <8 x i32> [[A0:%.*]], <8 x i32> poison, <8 x i32> zeroinitializer
29
- ; CHECK-NEXT: ret <8 x i32> [[TMP1 ]]
28
+ ; CHECK-NEXT: [[A :%.*]] = shufflevector <8 x i32> [[A0:%.*]], <8 x i32> poison, <8 x i32> zeroinitializer
29
+ ; CHECK-NEXT: ret <8 x i32> [[A ]]
30
30
;
31
31
%a = tail call <8 x i32 > @llvm.x86.avx2.permd (<8 x i32 > %a0 , <8 x i32 > zeroinitializer )
32
32
ret <8 x i32 > %a
33
33
}
34
34
35
35
define <8 x float > @zero_test_vpermps (<8 x float > %a0 ) {
36
36
; CHECK-LABEL: @zero_test_vpermps(
37
- ; CHECK-NEXT: [[TMP1 :%.*]] = shufflevector <8 x float> [[A0:%.*]], <8 x float> poison, <8 x i32> zeroinitializer
38
- ; CHECK-NEXT: ret <8 x float> [[TMP1 ]]
37
+ ; CHECK-NEXT: [[A :%.*]] = shufflevector <8 x float> [[A0:%.*]], <8 x float> poison, <8 x i32> zeroinitializer
38
+ ; CHECK-NEXT: ret <8 x float> [[A ]]
39
39
;
40
40
%a = tail call <8 x float > @llvm.x86.avx2.permps (<8 x float > %a0 , <8 x i32 > zeroinitializer )
41
41
ret <8 x float > %a
@@ -45,17 +45,17 @@ define <8 x float> @zero_test_vpermps(<8 x float> %a0) {
45
45
46
46
define <8 x i32 > @shuffle_test_vpermd (<8 x i32 > %a0 ) {
47
47
; CHECK-LABEL: @shuffle_test_vpermd(
48
- ; CHECK-NEXT: [[TMP1 :%.*]] = shufflevector <8 x i32> [[A0:%.*]], <8 x i32> poison, <8 x i32> <i32 7, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
49
- ; CHECK-NEXT: ret <8 x i32> [[TMP1 ]]
48
+ ; CHECK-NEXT: [[A :%.*]] = shufflevector <8 x i32> [[A0:%.*]], <8 x i32> poison, <8 x i32> <i32 7, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
49
+ ; CHECK-NEXT: ret <8 x i32> [[A ]]
50
50
;
51
51
%a = tail call <8 x i32 > @llvm.x86.avx2.permd (<8 x i32 > %a0 , <8 x i32 > <i32 7 , i32 6 , i32 5 , i32 4 , i32 3 , i32 2 , i32 1 , i32 0 >)
52
52
ret <8 x i32 > %a
53
53
}
54
54
55
55
define <8 x float > @shuffle_test_vpermps (<8 x float > %a0 ) {
56
56
; CHECK-LABEL: @shuffle_test_vpermps(
57
- ; CHECK-NEXT: [[TMP1 :%.*]] = shufflevector <8 x float> [[A0:%.*]], <8 x float> poison, <8 x i32> <i32 7, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
58
- ; CHECK-NEXT: ret <8 x float> [[TMP1 ]]
57
+ ; CHECK-NEXT: [[A :%.*]] = shufflevector <8 x float> [[A0:%.*]], <8 x float> poison, <8 x i32> <i32 7, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
58
+ ; CHECK-NEXT: ret <8 x float> [[A ]]
59
59
;
60
60
%a = tail call <8 x float > @llvm.x86.avx2.permps (<8 x float > %a0 , <8 x i32 > <i32 7 , i32 6 , i32 5 , i32 4 , i32 3 , i32 2 , i32 1 , i32 0 >)
61
61
ret <8 x float > %a
@@ -65,17 +65,17 @@ define <8 x float> @shuffle_test_vpermps(<8 x float> %a0) {
65
65
66
66
define <8 x i32 > @undef_test_vpermd (<8 x i32 > %a0 ) {
67
67
; CHECK-LABEL: @undef_test_vpermd(
68
- ; CHECK-NEXT: [[TMP1 :%.*]] = shufflevector <8 x i32> [[A0:%.*]], <8 x i32> poison, <8 x i32> <i32 poison, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
69
- ; CHECK-NEXT: ret <8 x i32> [[TMP1 ]]
68
+ ; CHECK-NEXT: [[A :%.*]] = shufflevector <8 x i32> [[A0:%.*]], <8 x i32> poison, <8 x i32> <i32 poison, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
69
+ ; CHECK-NEXT: ret <8 x i32> [[A ]]
70
70
;
71
71
%a = tail call <8 x i32 > @llvm.x86.avx2.permd (<8 x i32 > %a0 , <8 x i32 > <i32 undef , i32 6 , i32 5 , i32 4 , i32 3 , i32 2 , i32 1 , i32 0 >)
72
72
ret <8 x i32 > %a
73
73
}
74
74
75
75
define <8 x float > @undef_test_vpermps (<8 x float > %a0 ) {
76
76
; CHECK-LABEL: @undef_test_vpermps(
77
- ; CHECK-NEXT: [[TMP1 :%.*]] = shufflevector <8 x float> [[A0:%.*]], <8 x float> poison, <8 x i32> <i32 poison, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
78
- ; CHECK-NEXT: ret <8 x float> [[TMP1 ]]
77
+ ; CHECK-NEXT: [[A :%.*]] = shufflevector <8 x float> [[A0:%.*]], <8 x float> poison, <8 x i32> <i32 poison, i32 6, i32 5, i32 4, i32 3, i32 2, i32 1, i32 0>
78
+ ; CHECK-NEXT: ret <8 x float> [[A ]]
79
79
;
80
80
%a = tail call <8 x float > @llvm.x86.avx2.permps (<8 x float > %a0 , <8 x i32 > <i32 undef , i32 6 , i32 5 , i32 4 , i32 3 , i32 2 , i32 1 , i32 0 >)
81
81
ret <8 x float > %a
@@ -97,7 +97,7 @@ define <8 x i32> @elts_test_vpermd(<8 x i32> %a0, i32 %a1) {
97
97
define <8 x float > @elts_test_vpermps (<8 x float > %a0 , <8 x i32 > %a1 ) {
98
98
; CHECK-LABEL: @elts_test_vpermps(
99
99
; CHECK-NEXT: [[TMP1:%.*]] = tail call <8 x float> @llvm.x86.avx2.permps(<8 x float> [[A0:%.*]], <8 x i32> [[A1:%.*]])
100
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x float> [[TMP1]], <8 x float> undef , <8 x i32> zeroinitializer
100
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x float> [[TMP1]], <8 x float> poison , <8 x i32> zeroinitializer
101
101
; CHECK-NEXT: ret <8 x float> [[TMP2]]
102
102
;
103
103
%1 = insertelement <8 x i32 > %a1 , i32 0 , i32 7
@@ -109,7 +109,7 @@ define <8 x float> @elts_test_vpermps(<8 x float> %a0, <8 x i32> %a1) {
109
109
define <2 x i64 > @elts_test_vpsllvq (<2 x i64 > %a0 , <2 x i64 > %a1 ) {
110
110
; CHECK-LABEL: @elts_test_vpsllvq(
111
111
; CHECK-NEXT: [[TMP1:%.*]] = tail call <2 x i64> @llvm.x86.avx2.psllv.q(<2 x i64> [[A0:%.*]], <2 x i64> [[A1:%.*]])
112
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <2 x i64> [[TMP1]], <2 x i64> undef , <2 x i32> zeroinitializer
112
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <2 x i64> [[TMP1]], <2 x i64> poison , <2 x i32> zeroinitializer
113
113
; CHECK-NEXT: ret <2 x i64> [[TMP2]]
114
114
;
115
115
%1 = insertelement <2 x i64 > %a1 , i64 0 , i64 1
@@ -121,7 +121,7 @@ define <2 x i64> @elts_test_vpsllvq(<2 x i64> %a0, <2 x i64> %a1) {
121
121
define <2 x i64 > @elts_test_vpsrlvq (<2 x i64 > %a0 , <2 x i64 > %a1 ) {
122
122
; CHECK-LABEL: @elts_test_vpsrlvq(
123
123
; CHECK-NEXT: [[TMP1:%.*]] = tail call <2 x i64> @llvm.x86.avx2.psrlv.q(<2 x i64> [[A0:%.*]], <2 x i64> [[A1:%.*]])
124
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <2 x i64> [[TMP1]], <2 x i64> undef , <2 x i32> zeroinitializer
124
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <2 x i64> [[TMP1]], <2 x i64> poison , <2 x i32> zeroinitializer
125
125
; CHECK-NEXT: ret <2 x i64> [[TMP2]]
126
126
;
127
127
%1 = insertelement <2 x i64 > %a1 , i64 0 , i64 1
@@ -133,7 +133,7 @@ define <2 x i64> @elts_test_vpsrlvq(<2 x i64> %a0, <2 x i64> %a1) {
133
133
define <4 x i64 > @elts_test_vpsllvq_256 (<4 x i64 > %a0 , <4 x i64 > %a1 ) {
134
134
; CHECK-LABEL: @elts_test_vpsllvq_256(
135
135
; CHECK-NEXT: [[TMP1:%.*]] = tail call <4 x i64> @llvm.x86.avx2.psllv.q.256(<4 x i64> [[A0:%.*]], <4 x i64> [[A1:%.*]])
136
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i64> [[TMP1]], <4 x i64> undef , <4 x i32> zeroinitializer
136
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i64> [[TMP1]], <4 x i64> poison , <4 x i32> zeroinitializer
137
137
; CHECK-NEXT: ret <4 x i64> [[TMP2]]
138
138
;
139
139
%1 = insertelement <4 x i64 > %a1 , i64 0 , i64 2
@@ -145,7 +145,7 @@ define <4 x i64> @elts_test_vpsllvq_256(<4 x i64> %a0, <4 x i64> %a1) {
145
145
define <4 x i64 > @elts_test_vpsrlvq_256 (<4 x i64 > %a0 , <4 x i64 > %a1 ) {
146
146
; CHECK-LABEL: @elts_test_vpsrlvq_256(
147
147
; CHECK-NEXT: [[TMP1:%.*]] = tail call <4 x i64> @llvm.x86.avx2.psrlv.q.256(<4 x i64> [[A0:%.*]], <4 x i64> [[A1:%.*]])
148
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i64> [[TMP1]], <4 x i64> undef , <4 x i32> zeroinitializer
148
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i64> [[TMP1]], <4 x i64> poison , <4 x i32> zeroinitializer
149
149
; CHECK-NEXT: ret <4 x i64> [[TMP2]]
150
150
;
151
151
%1 = insertelement <4 x i64 > %a1 , i64 0 , i64 3
@@ -157,7 +157,7 @@ define <4 x i64> @elts_test_vpsrlvq_256(<4 x i64> %a0, <4 x i64> %a1) {
157
157
define <4 x i32 > @elts_test_vpsllvd (<4 x i32 > %a0 , <4 x i32 > %a1 ) {
158
158
; CHECK-LABEL: @elts_test_vpsllvd(
159
159
; CHECK-NEXT: [[TMP1:%.*]] = tail call <4 x i32> @llvm.x86.avx2.psllv.d(<4 x i32> [[A0:%.*]], <4 x i32> [[A1:%.*]])
160
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i32> [[TMP1]], <4 x i32> undef , <4 x i32> zeroinitializer
160
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i32> [[TMP1]], <4 x i32> poison , <4 x i32> zeroinitializer
161
161
; CHECK-NEXT: ret <4 x i32> [[TMP2]]
162
162
;
163
163
%1 = insertelement <4 x i32 > %a1 , i32 0 , i64 3
@@ -169,7 +169,7 @@ define <4 x i32> @elts_test_vpsllvd(<4 x i32> %a0, <4 x i32> %a1) {
169
169
define <4 x i32 > @elts_test_vpsravd (<4 x i32 > %a0 , <4 x i32 > %a1 ) {
170
170
; CHECK-LABEL: @elts_test_vpsravd(
171
171
; CHECK-NEXT: [[TMP1:%.*]] = tail call <4 x i32> @llvm.x86.avx2.psrav.d(<4 x i32> [[A0:%.*]], <4 x i32> [[A1:%.*]])
172
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i32> [[TMP1]], <4 x i32> undef , <4 x i32> zeroinitializer
172
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i32> [[TMP1]], <4 x i32> poison , <4 x i32> zeroinitializer
173
173
; CHECK-NEXT: ret <4 x i32> [[TMP2]]
174
174
;
175
175
%1 = insertelement <4 x i32 > %a1 , i32 0 , i64 1
@@ -181,7 +181,7 @@ define <4 x i32> @elts_test_vpsravd(<4 x i32> %a0, <4 x i32> %a1) {
181
181
define <4 x i32 > @elts_test_vpsrlvd (<4 x i32 > %a0 , <4 x i32 > %a1 ) {
182
182
; CHECK-LABEL: @elts_test_vpsrlvd(
183
183
; CHECK-NEXT: [[TMP1:%.*]] = tail call <4 x i32> @llvm.x86.avx2.psrlv.d(<4 x i32> [[A0:%.*]], <4 x i32> [[A1:%.*]])
184
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i32> [[TMP1]], <4 x i32> undef , <4 x i32> zeroinitializer
184
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <4 x i32> [[TMP1]], <4 x i32> poison , <4 x i32> zeroinitializer
185
185
; CHECK-NEXT: ret <4 x i32> [[TMP2]]
186
186
;
187
187
%1 = insertelement <4 x i32 > %a1 , i32 0 , i64 2
@@ -193,7 +193,7 @@ define <4 x i32> @elts_test_vpsrlvd(<4 x i32> %a0, <4 x i32> %a1) {
193
193
define <8 x i32 > @elts_test_vpsllvd_256 (<8 x i32 > %a0 , <8 x i32 > %a1 ) {
194
194
; CHECK-LABEL: @elts_test_vpsllvd_256(
195
195
; CHECK-NEXT: [[TMP1:%.*]] = tail call <8 x i32> @llvm.x86.avx2.psllv.d.256(<8 x i32> [[A0:%.*]], <8 x i32> [[A1:%.*]])
196
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[TMP1]], <8 x i32> undef , <8 x i32> zeroinitializer
196
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[TMP1]], <8 x i32> poison , <8 x i32> zeroinitializer
197
197
; CHECK-NEXT: ret <8 x i32> [[TMP2]]
198
198
;
199
199
%1 = insertelement <8 x i32 > %a1 , i32 0 , i64 3
@@ -205,7 +205,7 @@ define <8 x i32> @elts_test_vpsllvd_256(<8 x i32> %a0, <8 x i32> %a1) {
205
205
define <8 x i32 > @elts_test_vpsravd_256 (<8 x i32 > %a0 , <8 x i32 > %a1 ) {
206
206
; CHECK-LABEL: @elts_test_vpsravd_256(
207
207
; CHECK-NEXT: [[TMP1:%.*]] = tail call <8 x i32> @llvm.x86.avx2.psrav.d.256(<8 x i32> [[A0:%.*]], <8 x i32> [[A1:%.*]])
208
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[TMP1]], <8 x i32> undef , <8 x i32> zeroinitializer
208
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[TMP1]], <8 x i32> poison , <8 x i32> zeroinitializer
209
209
; CHECK-NEXT: ret <8 x i32> [[TMP2]]
210
210
;
211
211
%1 = insertelement <8 x i32 > %a1 , i32 0 , i64 4
@@ -217,7 +217,7 @@ define <8 x i32> @elts_test_vpsravd_256(<8 x i32> %a0, <8 x i32> %a1) {
217
217
define <8 x i32 > @elts_test_vpsrlvd_256 (<8 x i32 > %a0 , <8 x i32 > %a1 ) {
218
218
; CHECK-LABEL: @elts_test_vpsrlvd_256(
219
219
; CHECK-NEXT: [[TMP1:%.*]] = tail call <8 x i32> @llvm.x86.avx2.psrlv.d.256(<8 x i32> [[A0:%.*]], <8 x i32> [[A1:%.*]])
220
- ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[TMP1]], <8 x i32> undef , <8 x i32> zeroinitializer
220
+ ; CHECK-NEXT: [[TMP2:%.*]] = shufflevector <8 x i32> [[TMP1]], <8 x i32> poison , <8 x i32> zeroinitializer
221
221
; CHECK-NEXT: ret <8 x i32> [[TMP2]]
222
222
;
223
223
%1 = insertelement <8 x i32 > %a1 , i32 0 , i64 5
0 commit comments