|
8 | 8 | # 32 bit.
|
9 | 9 |
|
10 | 10 | # CHECK-LABEL: name: test1
|
11 |
| -# CHECK: [[TMP:%[0-9]+]]:gpr32common = SUBWrr killed %3, %4 |
| 11 | +# CHECK: [[TMP:%[0-9]+]]:gpr32 = SUBWrr killed %3, %4 |
12 | 12 | # CHECK-NEXT: %7:gpr32 = SUBWrr killed [[TMP]], %5
|
13 | 13 |
|
14 | 14 | name: test1
|
@@ -41,7 +41,7 @@ body: |
|
41 | 41 | # 64 bit.
|
42 | 42 |
|
43 | 43 | # CHECK-LABEL: name: test2
|
44 |
| -# CHECK: [[TMP:%[0-9]+]]:gpr64common = SUBXrr killed %3, %4 |
| 44 | +# CHECK: [[TMP:%[0-9]+]]:gpr64 = SUBXrr killed %3, %4 |
45 | 45 | # CHECK-NEXT: %7:gpr64 = SUBXrr killed [[TMP]], %5
|
46 | 46 |
|
47 | 47 | name: test2
|
@@ -107,7 +107,7 @@ body: |
|
107 | 107 | # Dead define of flag registers should not block transformation.
|
108 | 108 |
|
109 | 109 | # CHECK-LABEL: name: test4
|
110 |
| -# CHECK: [[TMP:%[0-9]+]]:gpr64common = SUBXrr killed %3, %4 |
| 110 | +# CHECK: [[TMP:%[0-9]+]]:gpr64 = SUBXrr killed %3, %4 |
111 | 111 | # CHECK-NEXT: %7:gpr64 = SUBXrr killed [[TMP]], %5
|
112 | 112 |
|
113 | 113 | name: test4
|
@@ -264,3 +264,36 @@ body: |
|
264 | 264 | RET_ReallyLR implicit $x0
|
265 | 265 |
|
266 | 266 | ...
|
| 267 | +--- |
| 268 | +# WZR use |
| 269 | + |
| 270 | +# CHECK-LABEL: name: wzr |
| 271 | +# CHECK: [[TMP:%[0-9]+]]:gpr32 = SUBWrr killed $wzr, %4 |
| 272 | +# CHECK-NEXT: %7:gpr32 = SUBWrr killed [[TMP]], %5 |
| 273 | + |
| 274 | +name: wzr |
| 275 | +registers: |
| 276 | + - { id: 0, class: gpr32common } |
| 277 | + - { id: 1, class: gpr32 } |
| 278 | + - { id: 2, class: gpr32 } |
| 279 | + - { id: 3, class: gpr32common } |
| 280 | + - { id: 4, class: gpr32common } |
| 281 | + - { id: 5, class: gpr32 } |
| 282 | + - { id: 6, class: gpr32 } |
| 283 | + - { id: 7, class: gpr32 } |
| 284 | + - { id: 8, class: gpr32 } |
| 285 | +body: | |
| 286 | + bb.0: |
| 287 | + %2:gpr32 = COPY $w2 |
| 288 | + %1:gpr32 = COPY $w1 |
| 289 | + %0:gpr32common = COPY $w0 |
| 290 | + %3:gpr32common = ORRWri %2:gpr32, 1600 |
| 291 | + %4:gpr32common = ADDWri %0:gpr32common, 100, 0 |
| 292 | + %5:gpr32 = EORWrs %1:gpr32, %4:gpr32common, 8 |
| 293 | + %6:gpr32 = ADDWrr %5:gpr32, %4:gpr32common |
| 294 | + %7:gpr32 = SUBWrr killed $wzr, killed %6:gpr32 |
| 295 | + %8:gpr32 = EORWrs killed %7:gpr32, %5:gpr32, 141 |
| 296 | + $w0 = COPY %8:gpr32 |
| 297 | + RET_ReallyLR implicit $w0 |
| 298 | +
|
| 299 | +... |
0 commit comments