66# No more registers shall be defined
77---
88name : main
9- alignment : 1
10- exposesReturnsTwice : false
11- legalized : false
12- regBankSelected : false
13- selected : false
149tracksRegLiveness : true
1510registers :
16- - { id: 1, class: sreg_32_xm0, preferred-register: '%1' }
17- - { id: 2, class: vreg_64, preferred-register: '%2' }
18- - { id: 3, class: vreg_64 }
19- - { id: 4, class: vreg_64 }
20- - { id: 5, class: vreg_64 }
21- - { id: 6, class: vreg_96 }
22- - { id: 7, class: vreg_96 }
23- - { id: 8, class: vreg_128 }
24- - { id: 9, class: vreg_128 }
25- liveins :
26- - { reg: '$sgpr6', virtual-reg: '%1' }
27- frameInfo :
28- isFrameAddressTaken : false
29- isReturnAddressTaken : false
30- hasStackMap : false
31- hasPatchPoint : false
32- stackSize : 0
33- offsetAdjustment : 0
34- maxAlignment : 0
35- adjustsStack : false
36- hasCalls : false
37- maxCallFrameSize : 0
38- hasOpaqueSPAdjustment : false
39- hasVAStart : false
40- hasMustTailInVarArgFunc : false
11+ - { id: 0, class: sreg_32_xm0, preferred-register: '%0' }
12+ - { id: 1, class: vreg_64, preferred-register: '%1' }
4113body : |
42- bb.0.entry :
14+ bb.0:
4315 liveins: $sgpr0, $vgpr0_vgpr1
4416
4517 ; CHECK-LABEL: name: main
@@ -59,20 +31,21 @@ body: |
5931 ; CHECK-NEXT: undef [[COPY3:%[0-9]+]].sub0_sub1_sub2:vreg_128 = COPY [[DEF2]]
6032 ; CHECK-NEXT: [[COPY3:%[0-9]+]].sub3:vreg_128 = COPY [[DEF]].sub0
6133 ; CHECK-NEXT: FLAT_STORE_DWORDX4 $vgpr0_vgpr1, [[COPY3]], 0, 0, implicit $exec, implicit $flat_scr
62- %3 = IMPLICIT_DEF
63- undef %4 .sub0 = COPY $sgpr0
64- %4 .sub1 = COPY %3 .sub0
65- undef %5 .sub0 = COPY %4 .sub1
66- %5 .sub1 = COPY %4 .sub0
67- FLAT_STORE_DWORDX2 $vgpr0_vgpr1, killed %5 , 0, 0, implicit $exec, implicit $flat_scr
34+ %2:vreg_64 = IMPLICIT_DEF
35+ undef %3 .sub0:vreg_64 = COPY $sgpr0
36+ %3 .sub1:vreg_64 = COPY %2 .sub0
37+ undef %4 .sub0:vreg_64 = COPY %3 .sub1
38+ %4 .sub1:vreg_64 = COPY %3 .sub0
39+ FLAT_STORE_DWORDX2 $vgpr0_vgpr1, killed %4 , 0, 0, implicit $exec, implicit $flat_scr
6840
69- %6 = IMPLICIT_DEF
70- undef %7.sub0_sub1 = COPY %6
71- %7.sub2 = COPY %3.sub0
72- FLAT_STORE_DWORDX3 $vgpr0_vgpr1, killed %7, 0, 0, implicit $exec, implicit $flat_scr
41+ %5:vreg_96 = IMPLICIT_DEF
42+ undef %6.sub0_sub1:vreg_96 = COPY %5
43+ %6.sub2:vreg_96 = COPY %2.sub0
44+ FLAT_STORE_DWORDX3 $vgpr0_vgpr1, killed %6, 0, 0, implicit $exec, implicit $flat_scr
45+
46+ %7:vreg_128 = IMPLICIT_DEF
47+ undef %8.sub0_sub1_sub2:vreg_128 = COPY %7
48+ %8.sub3:vreg_128 = COPY %2.sub0
49+ FLAT_STORE_DWORDX4 $vgpr0_vgpr1, killed %8, 0, 0, implicit $exec, implicit $flat_scr
7350
74- %8 = IMPLICIT_DEF
75- undef %9.sub0_sub1_sub2 = COPY %8
76- %9.sub3 = COPY %3.sub0
77- FLAT_STORE_DWORDX4 $vgpr0_vgpr1, killed %9, 0, 0, implicit $exec, implicit $flat_scr
7851 ...
0 commit comments