@@ -44,10 +44,10 @@ body: |
44
44
; CHECK: liveins: $w0, $w1
45
45
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
46
46
; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY $w1
47
- ; CHECK: [[MOVwzr :%[0-9]+]]:gpr32 = COPY $wzr
48
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
47
+ ; CHECK: [[COPY2 :%[0-9]+]]:gpr32 = COPY $wzr
48
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
49
49
; CHECK: $wzr = ADDSWrr [[COPY]], [[COPY1]], implicit-def $nzcv
50
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVwzr ]], 1, implicit $nzcv
50
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY2 ]], 1, implicit $nzcv
51
51
; CHECK: $w0 = COPY [[CSELWr]]
52
52
; CHECK: RET_ReallyLR implicit $w0
53
53
%0:gpr(s32) = COPY $w0
@@ -76,10 +76,10 @@ body: |
76
76
; CHECK: liveins: $w0, $w1
77
77
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
78
78
; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY $w1
79
- ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = COPY $wzr
80
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
79
+ ; CHECK: [[COPY2 :%[0-9]+]]:gpr32 = COPY $wzr
80
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
81
81
; CHECK: $wzr = ADDSWrr [[COPY]], [[COPY1]], implicit-def $nzcv
82
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVi32imm ]], 1, implicit $nzcv
82
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY2 ]], 1, implicit $nzcv
83
83
; CHECK: $w0 = COPY [[CSELWr]]
84
84
; CHECK: RET_ReallyLR implicit $w0
85
85
%0:gpr(s32) = COPY $w0
@@ -108,11 +108,11 @@ body: |
108
108
; CHECK: liveins: $w0, $w1
109
109
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
110
110
; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY $w1
111
- ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = COPY $wzr
112
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
113
- ; CHECK: [[SUBSWrr:%[0-9]+]]:gpr32 = SUBSWrr [[MOVi32imm ]], [[COPY1]], implicit-def $nzcv
111
+ ; CHECK: [[COPY2 :%[0-9]+]]:gpr32 = COPY $wzr
112
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
113
+ ; CHECK: [[SUBSWrr:%[0-9]+]]:gpr32 = SUBSWrr [[COPY2 ]], [[COPY1]], implicit-def $nzcv
114
114
; CHECK: $wzr = SUBSWrr [[COPY]], [[SUBSWrr]], implicit-def $nzcv
115
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVi32imm ]], 11, implicit $nzcv
115
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY2 ]], 11, implicit $nzcv
116
116
; CHECK: $w0 = COPY [[CSELWr]]
117
117
; CHECK: RET_ReallyLR implicit $w0
118
118
%0:gpr(s32) = COPY $w0
@@ -141,11 +141,11 @@ body: |
141
141
; CHECK: liveins: $w0, $w1
142
142
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w0
143
143
; CHECK: [[COPY1:%[0-9]+]]:gpr32 = COPY $w1
144
- ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = COPY $wzr
145
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
146
- ; CHECK: [[SUBSWrr:%[0-9]+]]:gpr32 = SUBSWrr [[MOVi32imm ]], [[COPY]], implicit-def $nzcv
144
+ ; CHECK: [[COPY2 :%[0-9]+]]:gpr32 = COPY $wzr
145
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
146
+ ; CHECK: [[SUBSWrr:%[0-9]+]]:gpr32 = SUBSWrr [[COPY2 ]], [[COPY]], implicit-def $nzcv
147
147
; CHECK: $wzr = SUBSWrr [[SUBSWrr]], [[COPY1]], implicit-def $nzcv
148
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVi32imm ]], 11, implicit $nzcv
148
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY2 ]], 11, implicit $nzcv
149
149
; CHECK: $w0 = COPY [[CSELWr]]
150
150
; CHECK: RET_ReallyLR implicit $w0
151
151
%0:gpr(s32) = COPY $w0
@@ -174,10 +174,11 @@ body: |
174
174
; CHECK: liveins: $x0, $x1
175
175
; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY $x0
176
176
; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY $x1
177
- ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = COPY $xzr
178
- ; CHECK: [[MOVi64imm1:%[0-9]+]]:gpr64 = MOVi64imm 1
177
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr64 = COPY $xzr
178
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1
179
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[MOVi32imm]], %subreg.sub_32
179
180
; CHECK: $xzr = ADDSXrr [[COPY]], [[COPY1]], implicit-def $nzcv
180
- ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[MOVi64imm1 ]], [[MOVi64imm ]], 1, implicit $nzcv
181
+ ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[SUBREG_TO_REG ]], [[COPY2 ]], 1, implicit $nzcv
181
182
; CHECK: $x0 = COPY [[CSELXr]]
182
183
; CHECK: RET_ReallyLR implicit $x0
183
184
%0:gpr(s64) = COPY $x0
@@ -206,10 +207,11 @@ body: |
206
207
; CHECK: liveins: $x0, $x1
207
208
; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY $x0
208
209
; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY $x1
209
- ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = COPY $xzr
210
- ; CHECK: [[MOVi64imm1:%[0-9]+]]:gpr64 = MOVi64imm 1
210
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr64 = COPY $xzr
211
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1
212
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[MOVi32imm]], %subreg.sub_32
211
213
; CHECK: $xzr = ADDSXrr [[COPY]], [[COPY1]], implicit-def $nzcv
212
- ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[MOVi64imm1 ]], [[MOVi64imm ]], 1, implicit $nzcv
214
+ ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[SUBREG_TO_REG ]], [[COPY2 ]], 1, implicit $nzcv
213
215
; CHECK: $x0 = COPY [[CSELXr]]
214
216
; CHECK: RET_ReallyLR implicit $x0
215
217
%0:gpr(s64) = COPY $x0
@@ -238,11 +240,12 @@ body: |
238
240
; CHECK: liveins: $x0, $x1
239
241
; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY $x0
240
242
; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY $x1
241
- ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = COPY $xzr
242
- ; CHECK: [[MOVi64imm1:%[0-9]+]]:gpr64 = MOVi64imm 1
243
- ; CHECK: [[SUBSXrr:%[0-9]+]]:gpr64 = SUBSXrr [[MOVi64imm]], [[COPY1]], implicit-def $nzcv
243
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr64 = COPY $xzr
244
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1
245
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[MOVi32imm]], %subreg.sub_32
246
+ ; CHECK: [[SUBSXrr:%[0-9]+]]:gpr64 = SUBSXrr [[COPY2]], [[COPY1]], implicit-def $nzcv
244
247
; CHECK: $xzr = SUBSXrr [[COPY]], [[SUBSXrr]], implicit-def $nzcv
245
- ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[MOVi64imm1 ]], [[MOVi64imm ]], 11, implicit $nzcv
248
+ ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[SUBREG_TO_REG ]], [[COPY2 ]], 11, implicit $nzcv
246
249
; CHECK: $x0 = COPY [[CSELXr]]
247
250
; CHECK: RET_ReallyLR implicit $x0
248
251
%0:gpr(s64) = COPY $x0
@@ -271,11 +274,12 @@ body: |
271
274
; CHECK: liveins: $x0, $x1
272
275
; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY $x0
273
276
; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY $x1
274
- ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = COPY $xzr
275
- ; CHECK: [[MOVi64imm1:%[0-9]+]]:gpr64 = MOVi64imm 1
276
- ; CHECK: [[SUBSXrr:%[0-9]+]]:gpr64 = SUBSXrr [[MOVi64imm]], [[COPY]], implicit-def $nzcv
277
+ ; CHECK: [[COPY2:%[0-9]+]]:gpr64 = COPY $xzr
278
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1
279
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[MOVi32imm]], %subreg.sub_32
280
+ ; CHECK: [[SUBSXrr:%[0-9]+]]:gpr64 = SUBSXrr [[COPY2]], [[COPY]], implicit-def $nzcv
277
281
; CHECK: $xzr = SUBSXrr [[SUBSXrr]], [[COPY1]], implicit-def $nzcv
278
- ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[MOVi64imm1 ]], [[MOVi64imm ]], 11, implicit $nzcv
282
+ ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[SUBREG_TO_REG ]], [[COPY2 ]], 11, implicit $nzcv
279
283
; CHECK: $x0 = COPY [[CSELXr]]
280
284
; CHECK: RET_ReallyLR implicit $x0
281
285
%0:gpr(s64) = COPY $x0
@@ -302,10 +306,10 @@ body: |
302
306
; CHECK-LABEL: name: tst_s32
303
307
; CHECK: liveins: $w0, $w1
304
308
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w1
305
- ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = COPY $wzr
306
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
307
- ; CHECK: $wzr = ANDSWrr [[MOVi32imm ]], [[COPY]], implicit-def $nzcv
308
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVi32imm ]], 0, implicit $nzcv
309
+ ; CHECK: [[COPY1 :%[0-9]+]]:gpr32 = COPY $wzr
310
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
311
+ ; CHECK: $wzr = ANDSWrr [[COPY1 ]], [[COPY]], implicit-def $nzcv
312
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY1 ]], 0, implicit $nzcv
309
313
; CHECK: $w0 = COPY [[CSELWr]]
310
314
; CHECK: RET_ReallyLR implicit $w0
311
315
%0:gpr(s32) = COPY $w0
@@ -333,10 +337,11 @@ body: |
333
337
; CHECK-LABEL: name: tst_s64
334
338
; CHECK: liveins: $x0, $x1
335
339
; CHECK: [[COPY:%[0-9]+]]:gpr64 = COPY $x1
336
- ; CHECK: [[MOVi64imm:%[0-9]+]]:gpr64 = COPY $xzr
337
- ; CHECK: [[MOVi64imm1:%[0-9]+]]:gpr64 = MOVi64imm 1
338
- ; CHECK: $xzr = ANDSXrr [[MOVi64imm]], [[COPY]], implicit-def $nzcv
339
- ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[MOVi64imm1]], [[MOVi64imm]], 0, implicit $nzcv
340
+ ; CHECK: [[COPY1:%[0-9]+]]:gpr64 = COPY $xzr
341
+ ; CHECK: [[MOVi32imm:%[0-9]+]]:gpr32 = MOVi32imm 1
342
+ ; CHECK: [[SUBREG_TO_REG:%[0-9]+]]:gpr64 = SUBREG_TO_REG 0, [[MOVi32imm]], %subreg.sub_32
343
+ ; CHECK: $xzr = ANDSXrr [[COPY1]], [[COPY]], implicit-def $nzcv
344
+ ; CHECK: [[CSELXr:%[0-9]+]]:gpr64 = CSELXr [[SUBREG_TO_REG]], [[COPY1]], 0, implicit $nzcv
340
345
; CHECK: $x0 = COPY [[CSELXr]]
341
346
; CHECK: RET_ReallyLR implicit $x0
342
347
%0:gpr(s64) = COPY $x0
@@ -364,11 +369,11 @@ body: |
364
369
; CHECK-LABEL: name: no_tst_unsigned_compare
365
370
; CHECK: liveins: $w0, $w1
366
371
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w1
367
- ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = COPY $wzr
368
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
369
- ; CHECK: [[ANDWrr:%[0-9]+]]:gpr32common = ANDWrr [[MOVi32imm ]], [[COPY]]
372
+ ; CHECK: [[COPY1 :%[0-9]+]]:gpr32 = COPY $wzr
373
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
374
+ ; CHECK: [[ANDWrr:%[0-9]+]]:gpr32common = ANDWrr [[COPY1 ]], [[COPY]]
370
375
; CHECK: $wzr = SUBSWri [[ANDWrr]], 0, 0, implicit-def $nzcv
371
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVi32imm ]], 8, implicit $nzcv
376
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY1 ]], 8, implicit $nzcv
372
377
; CHECK: $w0 = COPY [[CSELWr]]
373
378
; CHECK: RET_ReallyLR implicit $w0
374
379
%0:gpr(s32) = COPY $w0
@@ -396,11 +401,11 @@ body: |
396
401
; CHECK-LABEL: name: no_tst_nonzero
397
402
; CHECK: liveins: $w0, $w1
398
403
; CHECK: [[COPY:%[0-9]+]]:gpr32 = COPY $w1
399
- ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = COPY $wzr
400
- ; CHECK: [[MOVi32imm1 :%[0-9]+]]:gpr32 = MOVi32imm 1
401
- ; CHECK: [[ANDWrr:%[0-9]+]]:gpr32common = ANDWrr [[MOVi32imm ]], [[COPY]]
404
+ ; CHECK: [[COPY1 :%[0-9]+]]:gpr32 = COPY $wzr
405
+ ; CHECK: [[MOVi32imm :%[0-9]+]]:gpr32 = MOVi32imm 1
406
+ ; CHECK: [[ANDWrr:%[0-9]+]]:gpr32common = ANDWrr [[COPY1 ]], [[COPY]]
402
407
; CHECK: $wzr = SUBSWri [[ANDWrr]], 42, 0, implicit-def $nzcv
403
- ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm1 ]], [[MOVi32imm ]], 8, implicit $nzcv
408
+ ; CHECK: [[CSELWr:%[0-9]+]]:gpr32 = CSELWr [[MOVi32imm ]], [[COPY1 ]], 8, implicit $nzcv
404
409
; CHECK: $w0 = COPY [[CSELWr]]
405
410
; CHECK: RET_ReallyLR implicit $w0
406
411
%0:gpr(s32) = COPY $w0
0 commit comments