xref: /llvm-project/llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll (revision 5a81a559d69fb84e1e8ef623ac4b642081c14c51)
1; NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2
2; RUN: llc -global-isel=1 -global-isel-abort=2 -mtriple=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=GISEL-GFX11 %s
3; RUN: llc -global-isel=1 -global-isel-abort=2 -mtriple=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize64 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=GISEL-GFX11 %s
4; RUN: llc -global-isel=1 -global-isel-abort=2 -mtriple=amdgcn -mcpu=gfx1030 -mattr=+wavefrontsize32 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=GISEL-GFX10 %s
5; RUN: llc -global-isel=1 -global-isel-abort=2 -mtriple=amdgcn -mcpu=gfx1030 -mattr=+wavefrontsize64 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=GISEL-GFX10 %s
6; RUN: llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=DAGISEL-GFX11 %s
7; RUN: llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize64 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=DAGISEL-GFX11 %s
8; RUN: llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1030 -mattr=+wavefrontsize32 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=DAGISEL-GFX10 %s
9; RUN: llc -global-isel=0 -mtriple=amdgcn -mcpu=gfx1030 -mattr=+wavefrontsize64 -stop-after=finalize-isel -verify-machineinstrs < %s | FileCheck -check-prefix=DAGISEL-GFX10 %s
10
11; Test formal argument lowering as well as calls to amdgpu_gfx functions.
12
13declare amdgpu_gfx void @use(...)
14
15define amdgpu_cs_chain void @amdgpu_cs_chain_cc(<4 x i32> inreg %a, <4 x i32> %b) {
16  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc
17  ; GISEL-GFX11: bb.1 (%ir-block.0):
18  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $vgpr8, $vgpr9, $vgpr10, $vgpr11
19  ; GISEL-GFX11-NEXT: {{  $}}
20  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
21  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
22  ; GISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
23  ; GISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
24  ; GISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr8
25  ; GISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr9
26  ; GISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr10
27  ; GISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr11
28  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
29  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
30  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
31  ; GISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY2]]
32  ; GISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY3]]
33  ; GISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY4]]
34  ; GISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY5]]
35  ; GISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY6]]
36  ; GISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY7]]
37  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
38  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
39  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7
40  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
41  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
42  ;
43  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc
44  ; GISEL-GFX10: bb.1 (%ir-block.0):
45  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $vgpr8, $vgpr9, $vgpr10, $vgpr11
46  ; GISEL-GFX10-NEXT: {{  $}}
47  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
48  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
49  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
50  ; GISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
51  ; GISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr8
52  ; GISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr9
53  ; GISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr10
54  ; GISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr11
55  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
56  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
57  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
58  ; GISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY2]]
59  ; GISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY3]]
60  ; GISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY4]]
61  ; GISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY5]]
62  ; GISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY6]]
63  ; GISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY7]]
64  ; GISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
65  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY8]]
66  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
67  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
68  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $sgpr0_sgpr1_sgpr2_sgpr3
69  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
70  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
71  ;
72  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc
73  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
74  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $vgpr8, $vgpr9, $vgpr10, $vgpr11
75  ; DAGISEL-GFX11-NEXT: {{  $}}
76  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr11
77  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr10
78  ; DAGISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr9
79  ; DAGISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr8
80  ; DAGISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:sgpr_32 = COPY $sgpr3
81  ; DAGISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:sgpr_32 = COPY $sgpr2
82  ; DAGISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:sgpr_32 = COPY $sgpr1
83  ; DAGISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:sgpr_32 = COPY $sgpr0
84  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
85  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
86  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
87  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY7]]
88  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY6]]
89  ; DAGISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY5]]
90  ; DAGISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY4]]
91  ; DAGISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY3]]
92  ; DAGISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY2]]
93  ; DAGISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY1]]
94  ; DAGISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY]]
95  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7
96  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
97  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
98  ;
99  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc
100  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
101  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $vgpr8, $vgpr9, $vgpr10, $vgpr11
102  ; DAGISEL-GFX10-NEXT: {{  $}}
103  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr11
104  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr10
105  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr9
106  ; DAGISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr8
107  ; DAGISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:sgpr_32 = COPY $sgpr3
108  ; DAGISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:sgpr_32 = COPY $sgpr2
109  ; DAGISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:sgpr_32 = COPY $sgpr1
110  ; DAGISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:sgpr_32 = COPY $sgpr0
111  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
112  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
113  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
114  ; DAGISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
115  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY8]]
116  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY7]]
117  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY6]]
118  ; DAGISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY5]]
119  ; DAGISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY4]]
120  ; DAGISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY3]]
121  ; DAGISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY2]]
122  ; DAGISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY1]]
123  ; DAGISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY]]
124  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7
125  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
126  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
127  call amdgpu_gfx void @use(<4 x i32> %a, <4 x i32> %b)
128  ret void
129}
130
131define amdgpu_cs_chain void @amdgpu_cs_chain_cc_ptr(ptr inreg %a, ptr %b, ptr addrspace(1) inreg %a1, ptr addrspace(1) %b1, ptr addrspace(3) inreg %a3, ptr addrspace(3) %b3, ptr addrspace(5) inreg %a5, ptr addrspace(5) %b5) {
132  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_ptr
133  ; GISEL-GFX11: bb.1 (%ir-block.0):
134  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13
135  ; GISEL-GFX11-NEXT: {{  $}}
136  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
137  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
138  ; GISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr8
139  ; GISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr9
140  ; GISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr2
141  ; GISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr3
142  ; GISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr10
143  ; GISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr11
144  ; GISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:sreg_32 = COPY $sgpr4
145  ; GISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr12
146  ; GISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:sreg_32 = COPY $sgpr5
147  ; GISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr13
148  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
149  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
150  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
151  ; GISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY2]]
152  ; GISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY3]]
153  ; GISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY4]]
154  ; GISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY5]]
155  ; GISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY6]]
156  ; GISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY7]]
157  ; GISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY8]]
158  ; GISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY9]]
159  ; GISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY10]]
160  ; GISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY11]]
161  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
162  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
163  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11
164  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
165  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
166  ;
167  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_ptr
168  ; GISEL-GFX10: bb.1 (%ir-block.0):
169  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13
170  ; GISEL-GFX10-NEXT: {{  $}}
171  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
172  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
173  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr8
174  ; GISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr9
175  ; GISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr2
176  ; GISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr3
177  ; GISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr10
178  ; GISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr11
179  ; GISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:sreg_32 = COPY $sgpr4
180  ; GISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr12
181  ; GISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:sreg_32 = COPY $sgpr5
182  ; GISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr13
183  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
184  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
185  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
186  ; GISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY2]]
187  ; GISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY3]]
188  ; GISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY4]]
189  ; GISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY5]]
190  ; GISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY6]]
191  ; GISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY7]]
192  ; GISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY8]]
193  ; GISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY9]]
194  ; GISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY10]]
195  ; GISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY11]]
196  ; GISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
197  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY12]]
198  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
199  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
200  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $sgpr0_sgpr1_sgpr2_sgpr3
201  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
202  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
203  ;
204  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_ptr
205  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
206  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $vgpr8, $vgpr9, $sgpr2, $sgpr3, $vgpr10, $vgpr11, $sgpr4, $vgpr12, $sgpr5, $vgpr13
207  ; DAGISEL-GFX11-NEXT: {{  $}}
208  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr13
209  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr5
210  ; DAGISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr12
211  ; DAGISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:sgpr_32 = COPY $sgpr4
212  ; DAGISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr11
213  ; DAGISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr10
214  ; DAGISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:sgpr_32 = COPY $sgpr3
215  ; DAGISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:sgpr_32 = COPY $sgpr2
216  ; DAGISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr9
217  ; DAGISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr8
218  ; DAGISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:sgpr_32 = COPY $sgpr1
219  ; DAGISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:sgpr_32 = COPY $sgpr0
220  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
221  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
222  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
223  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY11]]
224  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY10]]
225  ; DAGISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY9]]
226  ; DAGISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY8]]
227  ; DAGISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY7]]
228  ; DAGISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY6]]
229  ; DAGISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY5]]
230  ; DAGISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY4]]
231  ; DAGISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY3]]
232  ; DAGISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY2]]
233  ; DAGISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY1]]
234  ; DAGISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY]]
235  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11
236  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
237  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
238  ;
239  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_ptr
240  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
241  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $vgpr8, $vgpr9, $sgpr2, $sgpr3, $vgpr10, $vgpr11, $sgpr4, $vgpr12, $sgpr5, $vgpr13
242  ; DAGISEL-GFX10-NEXT: {{  $}}
243  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr13
244  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr5
245  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr12
246  ; DAGISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:sgpr_32 = COPY $sgpr4
247  ; DAGISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr11
248  ; DAGISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr10
249  ; DAGISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:sgpr_32 = COPY $sgpr3
250  ; DAGISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:sgpr_32 = COPY $sgpr2
251  ; DAGISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr9
252  ; DAGISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr8
253  ; DAGISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:sgpr_32 = COPY $sgpr1
254  ; DAGISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:sgpr_32 = COPY $sgpr0
255  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
256  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
257  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
258  ; DAGISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
259  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY12]]
260  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY11]]
261  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY10]]
262  ; DAGISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY9]]
263  ; DAGISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY8]]
264  ; DAGISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY7]]
265  ; DAGISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY6]]
266  ; DAGISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY5]]
267  ; DAGISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY4]]
268  ; DAGISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY3]]
269  ; DAGISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY2]]
270  ; DAGISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY1]]
271  ; DAGISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY]]
272  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11
273  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
274  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
275  call amdgpu_gfx void @use(ptr %a, ptr %b, ptr addrspace(1) %a1, ptr addrspace(1) %b1, ptr addrspace(3) %a3, ptr addrspace(3) %b3, ptr addrspace(5) %a5, ptr addrspace(5) %b5)
276  ret void
277}
278
279define amdgpu_cs_chain void @amdgpu_cs_chain_cc_struct( {ptr, i32, <4 x i32>} inreg %a, {ptr, i32, <4 x i32>} %b) {
280  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_struct
281  ; GISEL-GFX11: bb.1 (%ir-block.0):
282  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14
283  ; GISEL-GFX11-NEXT: {{  $}}
284  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
285  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
286  ; GISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
287  ; GISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
288  ; GISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr4
289  ; GISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr5
290  ; GISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:sreg_32 = COPY $sgpr6
291  ; GISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr8
292  ; GISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr9
293  ; GISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr10
294  ; GISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:vgpr_32 = COPY $vgpr11
295  ; GISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr12
296  ; GISEL-GFX11-NEXT:   [[COPY12:%[0-9]+]]:vgpr_32 = COPY $vgpr13
297  ; GISEL-GFX11-NEXT:   [[COPY13:%[0-9]+]]:vgpr_32 = COPY $vgpr14
298  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
299  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
300  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
301  ; GISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY2]]
302  ; GISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY3]]
303  ; GISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY4]]
304  ; GISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY5]]
305  ; GISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY6]]
306  ; GISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY7]]
307  ; GISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY8]]
308  ; GISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY9]]
309  ; GISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY10]]
310  ; GISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY11]]
311  ; GISEL-GFX11-NEXT:   $vgpr12 = COPY [[COPY12]]
312  ; GISEL-GFX11-NEXT:   $vgpr13 = COPY [[COPY13]]
313  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
314  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
315  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13
316  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
317  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
318  ;
319  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_struct
320  ; GISEL-GFX10: bb.1 (%ir-block.0):
321  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14
322  ; GISEL-GFX10-NEXT: {{  $}}
323  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
324  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
325  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
326  ; GISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
327  ; GISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr4
328  ; GISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr5
329  ; GISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:sreg_32 = COPY $sgpr6
330  ; GISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr8
331  ; GISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr9
332  ; GISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr10
333  ; GISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:vgpr_32 = COPY $vgpr11
334  ; GISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr12
335  ; GISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:vgpr_32 = COPY $vgpr13
336  ; GISEL-GFX10-NEXT:   [[COPY13:%[0-9]+]]:vgpr_32 = COPY $vgpr14
337  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
338  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
339  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
340  ; GISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY2]]
341  ; GISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY3]]
342  ; GISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY4]]
343  ; GISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY5]]
344  ; GISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY6]]
345  ; GISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY7]]
346  ; GISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY8]]
347  ; GISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY9]]
348  ; GISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY10]]
349  ; GISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY11]]
350  ; GISEL-GFX10-NEXT:   $vgpr12 = COPY [[COPY12]]
351  ; GISEL-GFX10-NEXT:   $vgpr13 = COPY [[COPY13]]
352  ; GISEL-GFX10-NEXT:   [[COPY14:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
353  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY14]]
354  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
355  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
356  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $sgpr0_sgpr1_sgpr2_sgpr3
357  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
358  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
359  ;
360  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_struct
361  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
362  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14
363  ; DAGISEL-GFX11-NEXT: {{  $}}
364  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr14
365  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr13
366  ; DAGISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr12
367  ; DAGISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr11
368  ; DAGISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr10
369  ; DAGISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr9
370  ; DAGISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr8
371  ; DAGISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:sgpr_32 = COPY $sgpr6
372  ; DAGISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:sgpr_32 = COPY $sgpr5
373  ; DAGISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:sgpr_32 = COPY $sgpr4
374  ; DAGISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:sgpr_32 = COPY $sgpr3
375  ; DAGISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:sgpr_32 = COPY $sgpr2
376  ; DAGISEL-GFX11-NEXT:   [[COPY12:%[0-9]+]]:sgpr_32 = COPY $sgpr1
377  ; DAGISEL-GFX11-NEXT:   [[COPY13:%[0-9]+]]:sgpr_32 = COPY $sgpr0
378  ; DAGISEL-GFX11-NEXT:   [[REG_SEQUENCE:%[0-9]+]]:sgpr_64 = REG_SEQUENCE [[COPY13]], %subreg.sub0, [[COPY12]], %subreg.sub1
379  ; DAGISEL-GFX11-NEXT:   [[COPY14:%[0-9]+]]:sreg_32 = COPY [[REG_SEQUENCE]].sub1
380  ; DAGISEL-GFX11-NEXT:   [[DEF:%[0-9]+]]:sgpr_32 = IMPLICIT_DEF
381  ; DAGISEL-GFX11-NEXT:   [[DEF1:%[0-9]+]]:sgpr_32 = IMPLICIT_DEF
382  ; DAGISEL-GFX11-NEXT:   [[REG_SEQUENCE1:%[0-9]+]]:vreg_64 = REG_SEQUENCE [[COPY6]], %subreg.sub0, [[COPY5]], %subreg.sub1
383  ; DAGISEL-GFX11-NEXT:   [[COPY15:%[0-9]+]]:vgpr_32 = COPY [[REG_SEQUENCE1]].sub1
384  ; DAGISEL-GFX11-NEXT:   [[COPY16:%[0-9]+]]:sreg_32 = COPY [[REG_SEQUENCE]].sub0
385  ; DAGISEL-GFX11-NEXT:   [[COPY17:%[0-9]+]]:vgpr_32 = COPY [[REG_SEQUENCE1]].sub0
386  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
387  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
388  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
389  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY16]]
390  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY14]]
391  ; DAGISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY11]]
392  ; DAGISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY10]]
393  ; DAGISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY9]]
394  ; DAGISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY8]]
395  ; DAGISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY7]]
396  ; DAGISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY17]]
397  ; DAGISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY15]]
398  ; DAGISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY4]]
399  ; DAGISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY3]]
400  ; DAGISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY2]]
401  ; DAGISEL-GFX11-NEXT:   $vgpr12 = COPY [[COPY1]]
402  ; DAGISEL-GFX11-NEXT:   $vgpr13 = COPY [[COPY]]
403  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13
404  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
405  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
406  ;
407  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_struct
408  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
409  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14
410  ; DAGISEL-GFX10-NEXT: {{  $}}
411  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr14
412  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr13
413  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr12
414  ; DAGISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr11
415  ; DAGISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr10
416  ; DAGISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr9
417  ; DAGISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr8
418  ; DAGISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:sgpr_32 = COPY $sgpr6
419  ; DAGISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:sgpr_32 = COPY $sgpr5
420  ; DAGISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:sgpr_32 = COPY $sgpr4
421  ; DAGISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:sgpr_32 = COPY $sgpr3
422  ; DAGISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:sgpr_32 = COPY $sgpr2
423  ; DAGISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:sgpr_32 = COPY $sgpr1
424  ; DAGISEL-GFX10-NEXT:   [[COPY13:%[0-9]+]]:sgpr_32 = COPY $sgpr0
425  ; DAGISEL-GFX10-NEXT:   [[REG_SEQUENCE:%[0-9]+]]:sgpr_64 = REG_SEQUENCE [[COPY13]], %subreg.sub0, [[COPY12]], %subreg.sub1
426  ; DAGISEL-GFX10-NEXT:   [[COPY14:%[0-9]+]]:sreg_32 = COPY [[REG_SEQUENCE]].sub1
427  ; DAGISEL-GFX10-NEXT:   [[DEF:%[0-9]+]]:sgpr_32 = IMPLICIT_DEF
428  ; DAGISEL-GFX10-NEXT:   [[DEF1:%[0-9]+]]:sgpr_32 = IMPLICIT_DEF
429  ; DAGISEL-GFX10-NEXT:   [[REG_SEQUENCE1:%[0-9]+]]:vreg_64 = REG_SEQUENCE [[COPY6]], %subreg.sub0, [[COPY5]], %subreg.sub1
430  ; DAGISEL-GFX10-NEXT:   [[COPY15:%[0-9]+]]:vgpr_32 = COPY [[REG_SEQUENCE1]].sub1
431  ; DAGISEL-GFX10-NEXT:   [[COPY16:%[0-9]+]]:sreg_32 = COPY [[REG_SEQUENCE]].sub0
432  ; DAGISEL-GFX10-NEXT:   [[COPY17:%[0-9]+]]:vgpr_32 = COPY [[REG_SEQUENCE1]].sub0
433  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
434  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
435  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
436  ; DAGISEL-GFX10-NEXT:   [[COPY18:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
437  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY18]]
438  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY16]]
439  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY14]]
440  ; DAGISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY11]]
441  ; DAGISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY10]]
442  ; DAGISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY9]]
443  ; DAGISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY8]]
444  ; DAGISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY7]]
445  ; DAGISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY17]]
446  ; DAGISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY15]]
447  ; DAGISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY4]]
448  ; DAGISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY3]]
449  ; DAGISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY2]]
450  ; DAGISEL-GFX10-NEXT:   $vgpr12 = COPY [[COPY1]]
451  ; DAGISEL-GFX10-NEXT:   $vgpr13 = COPY [[COPY]]
452  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13
453  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
454  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
455  call amdgpu_gfx void @use({ptr, i32, <4 x i32>} %a, {ptr, i32, <4 x i32>} %b)
456  ret void
457}
458
459define amdgpu_cs_chain void @amdgpu_cs_chain_cc_float(float inreg %a, float %b) {
460  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_float
461  ; GISEL-GFX11: bb.1 (%ir-block.0):
462  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
463  ; GISEL-GFX11-NEXT: {{  $}}
464  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
465  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr8
466  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
467  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
468  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
469  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
470  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
471  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
472  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
473  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
474  ;
475  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_float
476  ; GISEL-GFX10: bb.1 (%ir-block.0):
477  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
478  ; GISEL-GFX10-NEXT: {{  $}}
479  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
480  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr8
481  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
482  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
483  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
484  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
485  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
486  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
487  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
488  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $sgpr0_sgpr1_sgpr2_sgpr3
489  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
490  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
491  ;
492  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_float
493  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
494  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
495  ; DAGISEL-GFX11-NEXT: {{  $}}
496  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
497  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
498  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
499  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
500  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
501  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY1]]
502  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY]]
503  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
504  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
505  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
506  ;
507  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_float
508  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
509  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
510  ; DAGISEL-GFX10-NEXT: {{  $}}
511  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
512  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
513  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
514  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
515  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
516  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
517  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
518  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY1]]
519  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY]]
520  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1
521  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
522  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
523  call amdgpu_gfx void @use(float %a, float %b)
524  ret void
525}
526
527define amdgpu_cs_chain void @amdgpu_cs_chain_cc_half(half inreg %a, half %b) {
528  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_half
529  ; GISEL-GFX11: bb.1 (%ir-block.0):
530  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
531  ; GISEL-GFX11-NEXT: {{  $}}
532  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
533  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr8
534  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
535  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
536  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
537  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
538  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
539  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
540  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
541  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
542  ;
543  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_half
544  ; GISEL-GFX10: bb.1 (%ir-block.0):
545  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
546  ; GISEL-GFX10-NEXT: {{  $}}
547  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
548  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr8
549  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
550  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
551  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
552  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
553  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
554  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
555  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
556  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $sgpr0_sgpr1_sgpr2_sgpr3
557  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
558  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
559  ;
560  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_half
561  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
562  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
563  ; DAGISEL-GFX11-NEXT: {{  $}}
564  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
565  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
566  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
567  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
568  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
569  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY1]]
570  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY]]
571  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
572  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
573  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
574  ;
575  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_half
576  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
577  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
578  ; DAGISEL-GFX10-NEXT: {{  $}}
579  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
580  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
581  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
582  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
583  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
584  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
585  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
586  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY1]]
587  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY]]
588  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1
589  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
590  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
591  call amdgpu_gfx void @use(half %a, half %b)
592  ret void
593}
594
595define amdgpu_cs_chain void @amdgpu_cs_chain_cc_bfloat(bfloat inreg %a, bfloat %b) {
596  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_bfloat
597  ; GISEL-GFX11: bb.0 (%ir-block.0):
598  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
599  ; GISEL-GFX11-NEXT: {{  $}}
600  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
601  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
602  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
603  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
604  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
605  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY1]]
606  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY]]
607  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
608  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
609  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
610  ;
611  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_bfloat
612  ; GISEL-GFX10: bb.0 (%ir-block.0):
613  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
614  ; GISEL-GFX10-NEXT: {{  $}}
615  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
616  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
617  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
618  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
619  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
620  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
621  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
622  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY1]]
623  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY]]
624  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1
625  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
626  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
627  ;
628  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_bfloat
629  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
630  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
631  ; DAGISEL-GFX11-NEXT: {{  $}}
632  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
633  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
634  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
635  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
636  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
637  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY1]]
638  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY]]
639  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
640  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
641  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
642  ;
643  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_bfloat
644  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
645  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
646  ; DAGISEL-GFX10-NEXT: {{  $}}
647  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
648  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
649  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
650  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
651  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
652  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
653  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
654  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY1]]
655  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY]]
656  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1
657  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
658  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
659  call amdgpu_gfx void @use(bfloat %a, bfloat %b)
660  ret void
661}
662
663define amdgpu_cs_chain void @amdgpu_cs_chain_cc_i16(i16 inreg %a, i16 %b) {
664  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_i16
665  ; GISEL-GFX11: bb.1 (%ir-block.0):
666  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
667  ; GISEL-GFX11-NEXT: {{  $}}
668  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
669  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr8
670  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
671  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
672  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
673  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
674  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
675  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
676  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
677  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
678  ;
679  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_i16
680  ; GISEL-GFX10: bb.1 (%ir-block.0):
681  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
682  ; GISEL-GFX10-NEXT: {{  $}}
683  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
684  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr8
685  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
686  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
687  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
688  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
689  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
690  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
691  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
692  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $sgpr0_sgpr1_sgpr2_sgpr3
693  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
694  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
695  ;
696  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_i16
697  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
698  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $vgpr8
699  ; DAGISEL-GFX11-NEXT: {{  $}}
700  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
701  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
702  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
703  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
704  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
705  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY1]]
706  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY]]
707  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1
708  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
709  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
710  ;
711  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_i16
712  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
713  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $vgpr8
714  ; DAGISEL-GFX10-NEXT: {{  $}}
715  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr8
716  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sgpr_32 = COPY $sgpr0
717  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
718  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
719  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
720  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
721  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY2]]
722  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY1]]
723  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY]]
724  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1
725  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
726  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
727  call amdgpu_gfx void @use(i16 %a, i16 %b)
728  ret void
729}
730
731define amdgpu_cs_chain void @amdgpu_cs_chain_cc_v16i16(<16 x i16> inreg %a, <16 x i16> %b) {
732  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_v16i16
733  ; GISEL-GFX11: bb.1 (%ir-block.0):
734  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15
735  ; GISEL-GFX11-NEXT: {{  $}}
736  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
737  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
738  ; GISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
739  ; GISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
740  ; GISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr4
741  ; GISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr5
742  ; GISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:sreg_32 = COPY $sgpr6
743  ; GISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:sreg_32 = COPY $sgpr7
744  ; GISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr8
745  ; GISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr9
746  ; GISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:vgpr_32 = COPY $vgpr10
747  ; GISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr11
748  ; GISEL-GFX11-NEXT:   [[COPY12:%[0-9]+]]:vgpr_32 = COPY $vgpr12
749  ; GISEL-GFX11-NEXT:   [[COPY13:%[0-9]+]]:vgpr_32 = COPY $vgpr13
750  ; GISEL-GFX11-NEXT:   [[COPY14:%[0-9]+]]:vgpr_32 = COPY $vgpr14
751  ; GISEL-GFX11-NEXT:   [[COPY15:%[0-9]+]]:vgpr_32 = COPY $vgpr15
752  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
753  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
754  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
755  ; GISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY2]]
756  ; GISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY3]]
757  ; GISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY4]]
758  ; GISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY5]]
759  ; GISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY6]]
760  ; GISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY7]]
761  ; GISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY8]]
762  ; GISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY9]]
763  ; GISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY10]]
764  ; GISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY11]]
765  ; GISEL-GFX11-NEXT:   $vgpr12 = COPY [[COPY12]]
766  ; GISEL-GFX11-NEXT:   $vgpr13 = COPY [[COPY13]]
767  ; GISEL-GFX11-NEXT:   $vgpr14 = COPY [[COPY14]]
768  ; GISEL-GFX11-NEXT:   $vgpr15 = COPY [[COPY15]]
769  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
770  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
771  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15
772  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
773  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
774  ;
775  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_v16i16
776  ; GISEL-GFX10: bb.1 (%ir-block.0):
777  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15
778  ; GISEL-GFX10-NEXT: {{  $}}
779  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
780  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
781  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
782  ; GISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
783  ; GISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr4
784  ; GISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr5
785  ; GISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:sreg_32 = COPY $sgpr6
786  ; GISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:sreg_32 = COPY $sgpr7
787  ; GISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr8
788  ; GISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr9
789  ; GISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:vgpr_32 = COPY $vgpr10
790  ; GISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr11
791  ; GISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:vgpr_32 = COPY $vgpr12
792  ; GISEL-GFX10-NEXT:   [[COPY13:%[0-9]+]]:vgpr_32 = COPY $vgpr13
793  ; GISEL-GFX10-NEXT:   [[COPY14:%[0-9]+]]:vgpr_32 = COPY $vgpr14
794  ; GISEL-GFX10-NEXT:   [[COPY15:%[0-9]+]]:vgpr_32 = COPY $vgpr15
795  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
796  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
797  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
798  ; GISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY2]]
799  ; GISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY3]]
800  ; GISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY4]]
801  ; GISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY5]]
802  ; GISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY6]]
803  ; GISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY7]]
804  ; GISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY8]]
805  ; GISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY9]]
806  ; GISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY10]]
807  ; GISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY11]]
808  ; GISEL-GFX10-NEXT:   $vgpr12 = COPY [[COPY12]]
809  ; GISEL-GFX10-NEXT:   $vgpr13 = COPY [[COPY13]]
810  ; GISEL-GFX10-NEXT:   $vgpr14 = COPY [[COPY14]]
811  ; GISEL-GFX10-NEXT:   $vgpr15 = COPY [[COPY15]]
812  ; GISEL-GFX10-NEXT:   [[COPY16:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
813  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY16]]
814  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
815  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
816  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15, implicit $sgpr0_sgpr1_sgpr2_sgpr3
817  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
818  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
819  ;
820  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_cc_v16i16
821  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
822  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15
823  ; DAGISEL-GFX11-NEXT: {{  $}}
824  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr15
825  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr14
826  ; DAGISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr13
827  ; DAGISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr12
828  ; DAGISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr11
829  ; DAGISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr10
830  ; DAGISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr9
831  ; DAGISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr8
832  ; DAGISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:sgpr_32 = COPY $sgpr7
833  ; DAGISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:sgpr_32 = COPY $sgpr6
834  ; DAGISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:sgpr_32 = COPY $sgpr5
835  ; DAGISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:sgpr_32 = COPY $sgpr4
836  ; DAGISEL-GFX11-NEXT:   [[COPY12:%[0-9]+]]:sgpr_32 = COPY $sgpr3
837  ; DAGISEL-GFX11-NEXT:   [[COPY13:%[0-9]+]]:sgpr_32 = COPY $sgpr2
838  ; DAGISEL-GFX11-NEXT:   [[COPY14:%[0-9]+]]:sgpr_32 = COPY $sgpr1
839  ; DAGISEL-GFX11-NEXT:   [[COPY15:%[0-9]+]]:sgpr_32 = COPY $sgpr0
840  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
841  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
842  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
843  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY15]]
844  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY14]]
845  ; DAGISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY13]]
846  ; DAGISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY12]]
847  ; DAGISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY11]]
848  ; DAGISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY10]]
849  ; DAGISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY9]]
850  ; DAGISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY8]]
851  ; DAGISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY7]]
852  ; DAGISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY6]]
853  ; DAGISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY5]]
854  ; DAGISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY4]]
855  ; DAGISEL-GFX11-NEXT:   $vgpr12 = COPY [[COPY3]]
856  ; DAGISEL-GFX11-NEXT:   $vgpr13 = COPY [[COPY2]]
857  ; DAGISEL-GFX11-NEXT:   $vgpr14 = COPY [[COPY1]]
858  ; DAGISEL-GFX11-NEXT:   $vgpr15 = COPY [[COPY]]
859  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15
860  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
861  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
862  ;
863  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_cc_v16i16
864  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
865  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15
866  ; DAGISEL-GFX10-NEXT: {{  $}}
867  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr15
868  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr14
869  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr13
870  ; DAGISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr12
871  ; DAGISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr11
872  ; DAGISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr10
873  ; DAGISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr9
874  ; DAGISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr8
875  ; DAGISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:sgpr_32 = COPY $sgpr7
876  ; DAGISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:sgpr_32 = COPY $sgpr6
877  ; DAGISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:sgpr_32 = COPY $sgpr5
878  ; DAGISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:sgpr_32 = COPY $sgpr4
879  ; DAGISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:sgpr_32 = COPY $sgpr3
880  ; DAGISEL-GFX10-NEXT:   [[COPY13:%[0-9]+]]:sgpr_32 = COPY $sgpr2
881  ; DAGISEL-GFX10-NEXT:   [[COPY14:%[0-9]+]]:sgpr_32 = COPY $sgpr1
882  ; DAGISEL-GFX10-NEXT:   [[COPY15:%[0-9]+]]:sgpr_32 = COPY $sgpr0
883  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
884  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
885  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
886  ; DAGISEL-GFX10-NEXT:   [[COPY16:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
887  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY16]]
888  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY15]]
889  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY14]]
890  ; DAGISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY13]]
891  ; DAGISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY12]]
892  ; DAGISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY11]]
893  ; DAGISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY10]]
894  ; DAGISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY9]]
895  ; DAGISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY8]]
896  ; DAGISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY7]]
897  ; DAGISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY6]]
898  ; DAGISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY5]]
899  ; DAGISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY4]]
900  ; DAGISEL-GFX10-NEXT:   $vgpr12 = COPY [[COPY3]]
901  ; DAGISEL-GFX10-NEXT:   $vgpr13 = COPY [[COPY2]]
902  ; DAGISEL-GFX10-NEXT:   $vgpr14 = COPY [[COPY1]]
903  ; DAGISEL-GFX10-NEXT:   $vgpr15 = COPY [[COPY]]
904  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15
905  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
906  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
907  call amdgpu_gfx void @use(<16 x i16> %a, <16 x i16> %b)
908  ret void
909}
910
911; Test that we can pass more than 32 SGPRs (but less than 48, so it works for GFX10).
912; Also an arbitrary (large) number of VGPRS.
913define amdgpu_cs_chain void @amdgpu_cs_chain_many_regs(<36 x i32> inreg %a, <128 x i32> %b) {
914  ; GISEL-GFX11-LABEL: name: amdgpu_cs_chain_many_regs
915  ; GISEL-GFX11: bb.1 (%ir-block.0):
916  ; GISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $sgpr8, $sgpr9, $sgpr10, $sgpr11, $sgpr12, $sgpr13, $sgpr14, $sgpr15, $sgpr16, $sgpr17, $sgpr18, $sgpr19, $sgpr20, $sgpr21, $sgpr22, $sgpr23, $sgpr24, $sgpr25, $sgpr26, $sgpr27, $sgpr28, $sgpr29, $sgpr30, $sgpr31, $sgpr32, $sgpr33, $sgpr34, $sgpr35, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr40, $vgpr41, $vgpr42, $vgpr43, $vgpr44, $vgpr45, $vgpr46, $vgpr47, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr56, $vgpr57, $vgpr58, $vgpr59, $vgpr60, $vgpr61, $vgpr62, $vgpr63, $vgpr64, $vgpr65, $vgpr66, $vgpr67, $vgpr68, $vgpr69, $vgpr70, $vgpr71, $vgpr72, $vgpr73, $vgpr74, $vgpr75, $vgpr76, $vgpr77, $vgpr78, $vgpr79, $vgpr80, $vgpr81, $vgpr82, $vgpr83, $vgpr84, $vgpr85, $vgpr86, $vgpr87, $vgpr88, $vgpr89, $vgpr90, $vgpr91, $vgpr92, $vgpr93, $vgpr94, $vgpr95, $vgpr96, $vgpr97, $vgpr98, $vgpr99, $vgpr100, $vgpr101, $vgpr102, $vgpr103, $vgpr104, $vgpr105, $vgpr106, $vgpr107, $vgpr108, $vgpr109, $vgpr110, $vgpr111, $vgpr112, $vgpr113, $vgpr114, $vgpr115, $vgpr116, $vgpr117, $vgpr118, $vgpr119, $vgpr120, $vgpr121, $vgpr122, $vgpr123, $vgpr124, $vgpr125, $vgpr126, $vgpr127, $vgpr128, $vgpr129, $vgpr130, $vgpr131, $vgpr132, $vgpr133, $vgpr134, $vgpr135
917  ; GISEL-GFX11-NEXT: {{  $}}
918  ; GISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
919  ; GISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
920  ; GISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
921  ; GISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
922  ; GISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr4
923  ; GISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr5
924  ; GISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:sreg_32 = COPY $sgpr6
925  ; GISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:sreg_32 = COPY $sgpr7
926  ; GISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:sreg_32 = COPY $sgpr8
927  ; GISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:sreg_32 = COPY $sgpr9
928  ; GISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:sreg_32 = COPY $sgpr10
929  ; GISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:sreg_32 = COPY $sgpr11
930  ; GISEL-GFX11-NEXT:   [[COPY12:%[0-9]+]]:sreg_32 = COPY $sgpr12
931  ; GISEL-GFX11-NEXT:   [[COPY13:%[0-9]+]]:sreg_32 = COPY $sgpr13
932  ; GISEL-GFX11-NEXT:   [[COPY14:%[0-9]+]]:sreg_32 = COPY $sgpr14
933  ; GISEL-GFX11-NEXT:   [[COPY15:%[0-9]+]]:sreg_32 = COPY $sgpr15
934  ; GISEL-GFX11-NEXT:   [[COPY16:%[0-9]+]]:sreg_32 = COPY $sgpr16
935  ; GISEL-GFX11-NEXT:   [[COPY17:%[0-9]+]]:sreg_32 = COPY $sgpr17
936  ; GISEL-GFX11-NEXT:   [[COPY18:%[0-9]+]]:sreg_32 = COPY $sgpr18
937  ; GISEL-GFX11-NEXT:   [[COPY19:%[0-9]+]]:sreg_32 = COPY $sgpr19
938  ; GISEL-GFX11-NEXT:   [[COPY20:%[0-9]+]]:sreg_32 = COPY $sgpr20
939  ; GISEL-GFX11-NEXT:   [[COPY21:%[0-9]+]]:sreg_32 = COPY $sgpr21
940  ; GISEL-GFX11-NEXT:   [[COPY22:%[0-9]+]]:sreg_32 = COPY $sgpr22
941  ; GISEL-GFX11-NEXT:   [[COPY23:%[0-9]+]]:sreg_32 = COPY $sgpr23
942  ; GISEL-GFX11-NEXT:   [[COPY24:%[0-9]+]]:sreg_32 = COPY $sgpr24
943  ; GISEL-GFX11-NEXT:   [[COPY25:%[0-9]+]]:sreg_32 = COPY $sgpr25
944  ; GISEL-GFX11-NEXT:   [[COPY26:%[0-9]+]]:sreg_32 = COPY $sgpr26
945  ; GISEL-GFX11-NEXT:   [[COPY27:%[0-9]+]]:sreg_32 = COPY $sgpr27
946  ; GISEL-GFX11-NEXT:   [[COPY28:%[0-9]+]]:sreg_32 = COPY $sgpr28
947  ; GISEL-GFX11-NEXT:   [[COPY29:%[0-9]+]]:sreg_32 = COPY $sgpr29
948  ; GISEL-GFX11-NEXT:   [[COPY30:%[0-9]+]]:sreg_32 = COPY $sgpr30
949  ; GISEL-GFX11-NEXT:   [[COPY31:%[0-9]+]]:sreg_32 = COPY $sgpr31
950  ; GISEL-GFX11-NEXT:   [[COPY32:%[0-9]+]]:sreg_32 = COPY $sgpr32
951  ; GISEL-GFX11-NEXT:   [[COPY33:%[0-9]+]]:sreg_32 = COPY $sgpr33
952  ; GISEL-GFX11-NEXT:   [[COPY34:%[0-9]+]]:sreg_32 = COPY $sgpr34
953  ; GISEL-GFX11-NEXT:   [[COPY35:%[0-9]+]]:sreg_32 = COPY $sgpr35
954  ; GISEL-GFX11-NEXT:   [[COPY36:%[0-9]+]]:vgpr_32 = COPY $vgpr8
955  ; GISEL-GFX11-NEXT:   [[COPY37:%[0-9]+]]:vgpr_32 = COPY $vgpr9
956  ; GISEL-GFX11-NEXT:   [[COPY38:%[0-9]+]]:vgpr_32 = COPY $vgpr10
957  ; GISEL-GFX11-NEXT:   [[COPY39:%[0-9]+]]:vgpr_32 = COPY $vgpr11
958  ; GISEL-GFX11-NEXT:   [[COPY40:%[0-9]+]]:vgpr_32 = COPY $vgpr12
959  ; GISEL-GFX11-NEXT:   [[COPY41:%[0-9]+]]:vgpr_32 = COPY $vgpr13
960  ; GISEL-GFX11-NEXT:   [[COPY42:%[0-9]+]]:vgpr_32 = COPY $vgpr14
961  ; GISEL-GFX11-NEXT:   [[COPY43:%[0-9]+]]:vgpr_32 = COPY $vgpr15
962  ; GISEL-GFX11-NEXT:   [[COPY44:%[0-9]+]]:vgpr_32 = COPY $vgpr16
963  ; GISEL-GFX11-NEXT:   [[COPY45:%[0-9]+]]:vgpr_32 = COPY $vgpr17
964  ; GISEL-GFX11-NEXT:   [[COPY46:%[0-9]+]]:vgpr_32 = COPY $vgpr18
965  ; GISEL-GFX11-NEXT:   [[COPY47:%[0-9]+]]:vgpr_32 = COPY $vgpr19
966  ; GISEL-GFX11-NEXT:   [[COPY48:%[0-9]+]]:vgpr_32 = COPY $vgpr20
967  ; GISEL-GFX11-NEXT:   [[COPY49:%[0-9]+]]:vgpr_32 = COPY $vgpr21
968  ; GISEL-GFX11-NEXT:   [[COPY50:%[0-9]+]]:vgpr_32 = COPY $vgpr22
969  ; GISEL-GFX11-NEXT:   [[COPY51:%[0-9]+]]:vgpr_32 = COPY $vgpr23
970  ; GISEL-GFX11-NEXT:   [[COPY52:%[0-9]+]]:vgpr_32 = COPY $vgpr24
971  ; GISEL-GFX11-NEXT:   [[COPY53:%[0-9]+]]:vgpr_32 = COPY $vgpr25
972  ; GISEL-GFX11-NEXT:   [[COPY54:%[0-9]+]]:vgpr_32 = COPY $vgpr26
973  ; GISEL-GFX11-NEXT:   [[COPY55:%[0-9]+]]:vgpr_32 = COPY $vgpr27
974  ; GISEL-GFX11-NEXT:   [[COPY56:%[0-9]+]]:vgpr_32 = COPY $vgpr28
975  ; GISEL-GFX11-NEXT:   [[COPY57:%[0-9]+]]:vgpr_32 = COPY $vgpr29
976  ; GISEL-GFX11-NEXT:   [[COPY58:%[0-9]+]]:vgpr_32 = COPY $vgpr30
977  ; GISEL-GFX11-NEXT:   [[COPY59:%[0-9]+]]:vgpr_32 = COPY $vgpr31
978  ; GISEL-GFX11-NEXT:   [[COPY60:%[0-9]+]]:vgpr_32 = COPY $vgpr32
979  ; GISEL-GFX11-NEXT:   [[COPY61:%[0-9]+]]:vgpr_32 = COPY $vgpr33
980  ; GISEL-GFX11-NEXT:   [[COPY62:%[0-9]+]]:vgpr_32 = COPY $vgpr34
981  ; GISEL-GFX11-NEXT:   [[COPY63:%[0-9]+]]:vgpr_32 = COPY $vgpr35
982  ; GISEL-GFX11-NEXT:   [[COPY64:%[0-9]+]]:vgpr_32 = COPY $vgpr36
983  ; GISEL-GFX11-NEXT:   [[COPY65:%[0-9]+]]:vgpr_32 = COPY $vgpr37
984  ; GISEL-GFX11-NEXT:   [[COPY66:%[0-9]+]]:vgpr_32 = COPY $vgpr38
985  ; GISEL-GFX11-NEXT:   [[COPY67:%[0-9]+]]:vgpr_32 = COPY $vgpr39
986  ; GISEL-GFX11-NEXT:   [[COPY68:%[0-9]+]]:vgpr_32 = COPY $vgpr40
987  ; GISEL-GFX11-NEXT:   [[COPY69:%[0-9]+]]:vgpr_32 = COPY $vgpr41
988  ; GISEL-GFX11-NEXT:   [[COPY70:%[0-9]+]]:vgpr_32 = COPY $vgpr42
989  ; GISEL-GFX11-NEXT:   [[COPY71:%[0-9]+]]:vgpr_32 = COPY $vgpr43
990  ; GISEL-GFX11-NEXT:   [[COPY72:%[0-9]+]]:vgpr_32 = COPY $vgpr44
991  ; GISEL-GFX11-NEXT:   [[COPY73:%[0-9]+]]:vgpr_32 = COPY $vgpr45
992  ; GISEL-GFX11-NEXT:   [[COPY74:%[0-9]+]]:vgpr_32 = COPY $vgpr46
993  ; GISEL-GFX11-NEXT:   [[COPY75:%[0-9]+]]:vgpr_32 = COPY $vgpr47
994  ; GISEL-GFX11-NEXT:   [[COPY76:%[0-9]+]]:vgpr_32 = COPY $vgpr48
995  ; GISEL-GFX11-NEXT:   [[COPY77:%[0-9]+]]:vgpr_32 = COPY $vgpr49
996  ; GISEL-GFX11-NEXT:   [[COPY78:%[0-9]+]]:vgpr_32 = COPY $vgpr50
997  ; GISEL-GFX11-NEXT:   [[COPY79:%[0-9]+]]:vgpr_32 = COPY $vgpr51
998  ; GISEL-GFX11-NEXT:   [[COPY80:%[0-9]+]]:vgpr_32 = COPY $vgpr52
999  ; GISEL-GFX11-NEXT:   [[COPY81:%[0-9]+]]:vgpr_32 = COPY $vgpr53
1000  ; GISEL-GFX11-NEXT:   [[COPY82:%[0-9]+]]:vgpr_32 = COPY $vgpr54
1001  ; GISEL-GFX11-NEXT:   [[COPY83:%[0-9]+]]:vgpr_32 = COPY $vgpr55
1002  ; GISEL-GFX11-NEXT:   [[COPY84:%[0-9]+]]:vgpr_32 = COPY $vgpr56
1003  ; GISEL-GFX11-NEXT:   [[COPY85:%[0-9]+]]:vgpr_32 = COPY $vgpr57
1004  ; GISEL-GFX11-NEXT:   [[COPY86:%[0-9]+]]:vgpr_32 = COPY $vgpr58
1005  ; GISEL-GFX11-NEXT:   [[COPY87:%[0-9]+]]:vgpr_32 = COPY $vgpr59
1006  ; GISEL-GFX11-NEXT:   [[COPY88:%[0-9]+]]:vgpr_32 = COPY $vgpr60
1007  ; GISEL-GFX11-NEXT:   [[COPY89:%[0-9]+]]:vgpr_32 = COPY $vgpr61
1008  ; GISEL-GFX11-NEXT:   [[COPY90:%[0-9]+]]:vgpr_32 = COPY $vgpr62
1009  ; GISEL-GFX11-NEXT:   [[COPY91:%[0-9]+]]:vgpr_32 = COPY $vgpr63
1010  ; GISEL-GFX11-NEXT:   [[COPY92:%[0-9]+]]:vgpr_32 = COPY $vgpr64
1011  ; GISEL-GFX11-NEXT:   [[COPY93:%[0-9]+]]:vgpr_32 = COPY $vgpr65
1012  ; GISEL-GFX11-NEXT:   [[COPY94:%[0-9]+]]:vgpr_32 = COPY $vgpr66
1013  ; GISEL-GFX11-NEXT:   [[COPY95:%[0-9]+]]:vgpr_32 = COPY $vgpr67
1014  ; GISEL-GFX11-NEXT:   [[COPY96:%[0-9]+]]:vgpr_32 = COPY $vgpr68
1015  ; GISEL-GFX11-NEXT:   [[COPY97:%[0-9]+]]:vgpr_32 = COPY $vgpr69
1016  ; GISEL-GFX11-NEXT:   [[COPY98:%[0-9]+]]:vgpr_32 = COPY $vgpr70
1017  ; GISEL-GFX11-NEXT:   [[COPY99:%[0-9]+]]:vgpr_32 = COPY $vgpr71
1018  ; GISEL-GFX11-NEXT:   [[COPY100:%[0-9]+]]:vgpr_32 = COPY $vgpr72
1019  ; GISEL-GFX11-NEXT:   [[COPY101:%[0-9]+]]:vgpr_32 = COPY $vgpr73
1020  ; GISEL-GFX11-NEXT:   [[COPY102:%[0-9]+]]:vgpr_32 = COPY $vgpr74
1021  ; GISEL-GFX11-NEXT:   [[COPY103:%[0-9]+]]:vgpr_32 = COPY $vgpr75
1022  ; GISEL-GFX11-NEXT:   [[COPY104:%[0-9]+]]:vgpr_32 = COPY $vgpr76
1023  ; GISEL-GFX11-NEXT:   [[COPY105:%[0-9]+]]:vgpr_32 = COPY $vgpr77
1024  ; GISEL-GFX11-NEXT:   [[COPY106:%[0-9]+]]:vgpr_32 = COPY $vgpr78
1025  ; GISEL-GFX11-NEXT:   [[COPY107:%[0-9]+]]:vgpr_32 = COPY $vgpr79
1026  ; GISEL-GFX11-NEXT:   [[COPY108:%[0-9]+]]:vgpr_32 = COPY $vgpr80
1027  ; GISEL-GFX11-NEXT:   [[COPY109:%[0-9]+]]:vgpr_32 = COPY $vgpr81
1028  ; GISEL-GFX11-NEXT:   [[COPY110:%[0-9]+]]:vgpr_32 = COPY $vgpr82
1029  ; GISEL-GFX11-NEXT:   [[COPY111:%[0-9]+]]:vgpr_32 = COPY $vgpr83
1030  ; GISEL-GFX11-NEXT:   [[COPY112:%[0-9]+]]:vgpr_32 = COPY $vgpr84
1031  ; GISEL-GFX11-NEXT:   [[COPY113:%[0-9]+]]:vgpr_32 = COPY $vgpr85
1032  ; GISEL-GFX11-NEXT:   [[COPY114:%[0-9]+]]:vgpr_32 = COPY $vgpr86
1033  ; GISEL-GFX11-NEXT:   [[COPY115:%[0-9]+]]:vgpr_32 = COPY $vgpr87
1034  ; GISEL-GFX11-NEXT:   [[COPY116:%[0-9]+]]:vgpr_32 = COPY $vgpr88
1035  ; GISEL-GFX11-NEXT:   [[COPY117:%[0-9]+]]:vgpr_32 = COPY $vgpr89
1036  ; GISEL-GFX11-NEXT:   [[COPY118:%[0-9]+]]:vgpr_32 = COPY $vgpr90
1037  ; GISEL-GFX11-NEXT:   [[COPY119:%[0-9]+]]:vgpr_32 = COPY $vgpr91
1038  ; GISEL-GFX11-NEXT:   [[COPY120:%[0-9]+]]:vgpr_32 = COPY $vgpr92
1039  ; GISEL-GFX11-NEXT:   [[COPY121:%[0-9]+]]:vgpr_32 = COPY $vgpr93
1040  ; GISEL-GFX11-NEXT:   [[COPY122:%[0-9]+]]:vgpr_32 = COPY $vgpr94
1041  ; GISEL-GFX11-NEXT:   [[COPY123:%[0-9]+]]:vgpr_32 = COPY $vgpr95
1042  ; GISEL-GFX11-NEXT:   [[COPY124:%[0-9]+]]:vgpr_32 = COPY $vgpr96
1043  ; GISEL-GFX11-NEXT:   [[COPY125:%[0-9]+]]:vgpr_32 = COPY $vgpr97
1044  ; GISEL-GFX11-NEXT:   [[COPY126:%[0-9]+]]:vgpr_32 = COPY $vgpr98
1045  ; GISEL-GFX11-NEXT:   [[COPY127:%[0-9]+]]:vgpr_32 = COPY $vgpr99
1046  ; GISEL-GFX11-NEXT:   [[COPY128:%[0-9]+]]:vgpr_32 = COPY $vgpr100
1047  ; GISEL-GFX11-NEXT:   [[COPY129:%[0-9]+]]:vgpr_32 = COPY $vgpr101
1048  ; GISEL-GFX11-NEXT:   [[COPY130:%[0-9]+]]:vgpr_32 = COPY $vgpr102
1049  ; GISEL-GFX11-NEXT:   [[COPY131:%[0-9]+]]:vgpr_32 = COPY $vgpr103
1050  ; GISEL-GFX11-NEXT:   [[COPY132:%[0-9]+]]:vgpr_32 = COPY $vgpr104
1051  ; GISEL-GFX11-NEXT:   [[COPY133:%[0-9]+]]:vgpr_32 = COPY $vgpr105
1052  ; GISEL-GFX11-NEXT:   [[COPY134:%[0-9]+]]:vgpr_32 = COPY $vgpr106
1053  ; GISEL-GFX11-NEXT:   [[COPY135:%[0-9]+]]:vgpr_32 = COPY $vgpr107
1054  ; GISEL-GFX11-NEXT:   [[COPY136:%[0-9]+]]:vgpr_32 = COPY $vgpr108
1055  ; GISEL-GFX11-NEXT:   [[COPY137:%[0-9]+]]:vgpr_32 = COPY $vgpr109
1056  ; GISEL-GFX11-NEXT:   [[COPY138:%[0-9]+]]:vgpr_32 = COPY $vgpr110
1057  ; GISEL-GFX11-NEXT:   [[COPY139:%[0-9]+]]:vgpr_32 = COPY $vgpr111
1058  ; GISEL-GFX11-NEXT:   [[COPY140:%[0-9]+]]:vgpr_32 = COPY $vgpr112
1059  ; GISEL-GFX11-NEXT:   [[COPY141:%[0-9]+]]:vgpr_32 = COPY $vgpr113
1060  ; GISEL-GFX11-NEXT:   [[COPY142:%[0-9]+]]:vgpr_32 = COPY $vgpr114
1061  ; GISEL-GFX11-NEXT:   [[COPY143:%[0-9]+]]:vgpr_32 = COPY $vgpr115
1062  ; GISEL-GFX11-NEXT:   [[COPY144:%[0-9]+]]:vgpr_32 = COPY $vgpr116
1063  ; GISEL-GFX11-NEXT:   [[COPY145:%[0-9]+]]:vgpr_32 = COPY $vgpr117
1064  ; GISEL-GFX11-NEXT:   [[COPY146:%[0-9]+]]:vgpr_32 = COPY $vgpr118
1065  ; GISEL-GFX11-NEXT:   [[COPY147:%[0-9]+]]:vgpr_32 = COPY $vgpr119
1066  ; GISEL-GFX11-NEXT:   [[COPY148:%[0-9]+]]:vgpr_32 = COPY $vgpr120
1067  ; GISEL-GFX11-NEXT:   [[COPY149:%[0-9]+]]:vgpr_32 = COPY $vgpr121
1068  ; GISEL-GFX11-NEXT:   [[COPY150:%[0-9]+]]:vgpr_32 = COPY $vgpr122
1069  ; GISEL-GFX11-NEXT:   [[COPY151:%[0-9]+]]:vgpr_32 = COPY $vgpr123
1070  ; GISEL-GFX11-NEXT:   [[COPY152:%[0-9]+]]:vgpr_32 = COPY $vgpr124
1071  ; GISEL-GFX11-NEXT:   [[COPY153:%[0-9]+]]:vgpr_32 = COPY $vgpr125
1072  ; GISEL-GFX11-NEXT:   [[COPY154:%[0-9]+]]:vgpr_32 = COPY $vgpr126
1073  ; GISEL-GFX11-NEXT:   [[COPY155:%[0-9]+]]:vgpr_32 = COPY $vgpr127
1074  ; GISEL-GFX11-NEXT:   [[COPY156:%[0-9]+]]:vgpr_32 = COPY $vgpr128
1075  ; GISEL-GFX11-NEXT:   [[COPY157:%[0-9]+]]:vgpr_32 = COPY $vgpr129
1076  ; GISEL-GFX11-NEXT:   [[COPY158:%[0-9]+]]:vgpr_32 = COPY $vgpr130
1077  ; GISEL-GFX11-NEXT:   [[COPY159:%[0-9]+]]:vgpr_32 = COPY $vgpr131
1078  ; GISEL-GFX11-NEXT:   [[COPY160:%[0-9]+]]:vgpr_32 = COPY $vgpr132
1079  ; GISEL-GFX11-NEXT:   [[COPY161:%[0-9]+]]:vgpr_32 = COPY $vgpr133
1080  ; GISEL-GFX11-NEXT:   [[COPY162:%[0-9]+]]:vgpr_32 = COPY $vgpr134
1081  ; GISEL-GFX11-NEXT:   [[COPY163:%[0-9]+]]:vgpr_32 = COPY $vgpr135
1082  ; GISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
1083  ; GISEL-GFX11-NEXT:   [[COPY164:%[0-9]+]]:sreg_32_xexec_hi = COPY $sgpr32
1084  ; GISEL-GFX11-NEXT:   [[COPY165:%[0-9]+]]:vgpr_32 = COPY [[COPY32]]
1085  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY165]], [[COPY164]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack, align 16, addrspace 5)
1086  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 4
1087  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_]], implicit-def dead $scc
1088  ; GISEL-GFX11-NEXT:   [[COPY166:%[0-9]+]]:vgpr_32 = COPY [[COPY33]]
1089  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY166]], [[S_ADD_U32_]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 4, addrspace 5)
1090  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_1:%[0-9]+]]:sreg_32 = S_MOV_B32 8
1091  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_1:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_1]], implicit-def dead $scc
1092  ; GISEL-GFX11-NEXT:   [[COPY167:%[0-9]+]]:vgpr_32 = COPY [[COPY34]]
1093  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY167]], [[S_ADD_U32_1]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 8, align 8, addrspace 5)
1094  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_2:%[0-9]+]]:sreg_32 = S_MOV_B32 12
1095  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_2:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_2]], implicit-def dead $scc
1096  ; GISEL-GFX11-NEXT:   [[COPY168:%[0-9]+]]:vgpr_32 = COPY [[COPY35]]
1097  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY168]], [[S_ADD_U32_2]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 12, addrspace 5)
1098  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_3:%[0-9]+]]:sreg_32 = S_MOV_B32 16
1099  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_3:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_3]], implicit-def dead $scc
1100  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY36]], [[S_ADD_U32_3]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 16, align 16, addrspace 5)
1101  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_4:%[0-9]+]]:sreg_32 = S_MOV_B32 20
1102  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_4:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_4]], implicit-def dead $scc
1103  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY37]], [[S_ADD_U32_4]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 20, addrspace 5)
1104  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_5:%[0-9]+]]:sreg_32 = S_MOV_B32 24
1105  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_5:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_5]], implicit-def dead $scc
1106  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY38]], [[S_ADD_U32_5]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 24, align 8, addrspace 5)
1107  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_6:%[0-9]+]]:sreg_32 = S_MOV_B32 28
1108  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_6:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_6]], implicit-def dead $scc
1109  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY39]], [[S_ADD_U32_6]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 28, addrspace 5)
1110  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_7:%[0-9]+]]:sreg_32 = S_MOV_B32 32
1111  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_7:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_7]], implicit-def dead $scc
1112  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY40]], [[S_ADD_U32_7]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 32, align 16, addrspace 5)
1113  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_8:%[0-9]+]]:sreg_32 = S_MOV_B32 36
1114  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_8:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_8]], implicit-def dead $scc
1115  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY41]], [[S_ADD_U32_8]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 36, addrspace 5)
1116  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_9:%[0-9]+]]:sreg_32 = S_MOV_B32 40
1117  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_9:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_9]], implicit-def dead $scc
1118  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY42]], [[S_ADD_U32_9]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 40, align 8, addrspace 5)
1119  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_10:%[0-9]+]]:sreg_32 = S_MOV_B32 44
1120  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_10:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_10]], implicit-def dead $scc
1121  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY43]], [[S_ADD_U32_10]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 44, addrspace 5)
1122  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_11:%[0-9]+]]:sreg_32 = S_MOV_B32 48
1123  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_11:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_11]], implicit-def dead $scc
1124  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY44]], [[S_ADD_U32_11]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 48, align 16, addrspace 5)
1125  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_12:%[0-9]+]]:sreg_32 = S_MOV_B32 52
1126  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_12:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_12]], implicit-def dead $scc
1127  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY45]], [[S_ADD_U32_12]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 52, addrspace 5)
1128  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_13:%[0-9]+]]:sreg_32 = S_MOV_B32 56
1129  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_13:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_13]], implicit-def dead $scc
1130  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY46]], [[S_ADD_U32_13]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 56, align 8, addrspace 5)
1131  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_14:%[0-9]+]]:sreg_32 = S_MOV_B32 60
1132  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_14:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_14]], implicit-def dead $scc
1133  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY47]], [[S_ADD_U32_14]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 60, addrspace 5)
1134  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_15:%[0-9]+]]:sreg_32 = S_MOV_B32 64
1135  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_15:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_15]], implicit-def dead $scc
1136  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY48]], [[S_ADD_U32_15]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 64, align 16, addrspace 5)
1137  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_16:%[0-9]+]]:sreg_32 = S_MOV_B32 68
1138  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_16:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_16]], implicit-def dead $scc
1139  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY49]], [[S_ADD_U32_16]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 68, addrspace 5)
1140  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_17:%[0-9]+]]:sreg_32 = S_MOV_B32 72
1141  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_17:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_17]], implicit-def dead $scc
1142  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY50]], [[S_ADD_U32_17]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 72, align 8, addrspace 5)
1143  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_18:%[0-9]+]]:sreg_32 = S_MOV_B32 76
1144  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_18:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_18]], implicit-def dead $scc
1145  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY51]], [[S_ADD_U32_18]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 76, addrspace 5)
1146  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_19:%[0-9]+]]:sreg_32 = S_MOV_B32 80
1147  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_19:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_19]], implicit-def dead $scc
1148  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY52]], [[S_ADD_U32_19]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 80, align 16, addrspace 5)
1149  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_20:%[0-9]+]]:sreg_32 = S_MOV_B32 84
1150  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_20:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_20]], implicit-def dead $scc
1151  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY53]], [[S_ADD_U32_20]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 84, addrspace 5)
1152  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_21:%[0-9]+]]:sreg_32 = S_MOV_B32 88
1153  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_21:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_21]], implicit-def dead $scc
1154  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY54]], [[S_ADD_U32_21]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 88, align 8, addrspace 5)
1155  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_22:%[0-9]+]]:sreg_32 = S_MOV_B32 92
1156  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_22:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_22]], implicit-def dead $scc
1157  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY55]], [[S_ADD_U32_22]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 92, addrspace 5)
1158  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_23:%[0-9]+]]:sreg_32 = S_MOV_B32 96
1159  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_23:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_23]], implicit-def dead $scc
1160  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY56]], [[S_ADD_U32_23]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 96, align 16, addrspace 5)
1161  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_24:%[0-9]+]]:sreg_32 = S_MOV_B32 100
1162  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_24:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_24]], implicit-def dead $scc
1163  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY57]], [[S_ADD_U32_24]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 100, addrspace 5)
1164  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_25:%[0-9]+]]:sreg_32 = S_MOV_B32 104
1165  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_25:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_25]], implicit-def dead $scc
1166  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY58]], [[S_ADD_U32_25]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 104, align 8, addrspace 5)
1167  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_26:%[0-9]+]]:sreg_32 = S_MOV_B32 108
1168  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_26:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_26]], implicit-def dead $scc
1169  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY59]], [[S_ADD_U32_26]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 108, addrspace 5)
1170  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_27:%[0-9]+]]:sreg_32 = S_MOV_B32 112
1171  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_27:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_27]], implicit-def dead $scc
1172  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY60]], [[S_ADD_U32_27]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 112, align 16, addrspace 5)
1173  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_28:%[0-9]+]]:sreg_32 = S_MOV_B32 116
1174  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_28:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_28]], implicit-def dead $scc
1175  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY61]], [[S_ADD_U32_28]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 116, addrspace 5)
1176  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_29:%[0-9]+]]:sreg_32 = S_MOV_B32 120
1177  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_29:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_29]], implicit-def dead $scc
1178  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY62]], [[S_ADD_U32_29]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 120, align 8, addrspace 5)
1179  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_30:%[0-9]+]]:sreg_32 = S_MOV_B32 124
1180  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_30:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_30]], implicit-def dead $scc
1181  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY63]], [[S_ADD_U32_30]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 124, addrspace 5)
1182  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_31:%[0-9]+]]:sreg_32 = S_MOV_B32 128
1183  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_31:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_31]], implicit-def dead $scc
1184  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY64]], [[S_ADD_U32_31]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 128, align 16, addrspace 5)
1185  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_32:%[0-9]+]]:sreg_32 = S_MOV_B32 132
1186  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_32:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_32]], implicit-def dead $scc
1187  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY65]], [[S_ADD_U32_32]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 132, addrspace 5)
1188  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_33:%[0-9]+]]:sreg_32 = S_MOV_B32 136
1189  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_33:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_33]], implicit-def dead $scc
1190  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY66]], [[S_ADD_U32_33]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 136, align 8, addrspace 5)
1191  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_34:%[0-9]+]]:sreg_32 = S_MOV_B32 140
1192  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_34:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_34]], implicit-def dead $scc
1193  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY67]], [[S_ADD_U32_34]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 140, addrspace 5)
1194  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_35:%[0-9]+]]:sreg_32 = S_MOV_B32 144
1195  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_35:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_35]], implicit-def dead $scc
1196  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY68]], [[S_ADD_U32_35]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 144, align 16, addrspace 5)
1197  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_36:%[0-9]+]]:sreg_32 = S_MOV_B32 148
1198  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_36:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_36]], implicit-def dead $scc
1199  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY69]], [[S_ADD_U32_36]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 148, addrspace 5)
1200  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_37:%[0-9]+]]:sreg_32 = S_MOV_B32 152
1201  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_37:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_37]], implicit-def dead $scc
1202  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY70]], [[S_ADD_U32_37]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 152, align 8, addrspace 5)
1203  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_38:%[0-9]+]]:sreg_32 = S_MOV_B32 156
1204  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_38:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_38]], implicit-def dead $scc
1205  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY71]], [[S_ADD_U32_38]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 156, addrspace 5)
1206  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_39:%[0-9]+]]:sreg_32 = S_MOV_B32 160
1207  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_39:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_39]], implicit-def dead $scc
1208  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY72]], [[S_ADD_U32_39]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 160, align 16, addrspace 5)
1209  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_40:%[0-9]+]]:sreg_32 = S_MOV_B32 164
1210  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_40:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_40]], implicit-def dead $scc
1211  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY73]], [[S_ADD_U32_40]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 164, addrspace 5)
1212  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_41:%[0-9]+]]:sreg_32 = S_MOV_B32 168
1213  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_41:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_41]], implicit-def dead $scc
1214  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY74]], [[S_ADD_U32_41]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 168, align 8, addrspace 5)
1215  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_42:%[0-9]+]]:sreg_32 = S_MOV_B32 172
1216  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_42:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_42]], implicit-def dead $scc
1217  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY75]], [[S_ADD_U32_42]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 172, addrspace 5)
1218  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_43:%[0-9]+]]:sreg_32 = S_MOV_B32 176
1219  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_43:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_43]], implicit-def dead $scc
1220  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY76]], [[S_ADD_U32_43]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 176, align 16, addrspace 5)
1221  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_44:%[0-9]+]]:sreg_32 = S_MOV_B32 180
1222  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_44:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_44]], implicit-def dead $scc
1223  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY77]], [[S_ADD_U32_44]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 180, addrspace 5)
1224  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_45:%[0-9]+]]:sreg_32 = S_MOV_B32 184
1225  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_45:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_45]], implicit-def dead $scc
1226  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY78]], [[S_ADD_U32_45]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 184, align 8, addrspace 5)
1227  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_46:%[0-9]+]]:sreg_32 = S_MOV_B32 188
1228  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_46:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_46]], implicit-def dead $scc
1229  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY79]], [[S_ADD_U32_46]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 188, addrspace 5)
1230  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_47:%[0-9]+]]:sreg_32 = S_MOV_B32 192
1231  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_47:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_47]], implicit-def dead $scc
1232  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY80]], [[S_ADD_U32_47]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 192, align 16, addrspace 5)
1233  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_48:%[0-9]+]]:sreg_32 = S_MOV_B32 196
1234  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_48:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_48]], implicit-def dead $scc
1235  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY81]], [[S_ADD_U32_48]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 196, addrspace 5)
1236  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_49:%[0-9]+]]:sreg_32 = S_MOV_B32 200
1237  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_49:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_49]], implicit-def dead $scc
1238  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY82]], [[S_ADD_U32_49]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 200, align 8, addrspace 5)
1239  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_50:%[0-9]+]]:sreg_32 = S_MOV_B32 204
1240  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_50:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_50]], implicit-def dead $scc
1241  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY83]], [[S_ADD_U32_50]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 204, addrspace 5)
1242  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_51:%[0-9]+]]:sreg_32 = S_MOV_B32 208
1243  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_51:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_51]], implicit-def dead $scc
1244  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY84]], [[S_ADD_U32_51]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 208, align 16, addrspace 5)
1245  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_52:%[0-9]+]]:sreg_32 = S_MOV_B32 212
1246  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_52:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_52]], implicit-def dead $scc
1247  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY85]], [[S_ADD_U32_52]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 212, addrspace 5)
1248  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_53:%[0-9]+]]:sreg_32 = S_MOV_B32 216
1249  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_53:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_53]], implicit-def dead $scc
1250  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY86]], [[S_ADD_U32_53]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 216, align 8, addrspace 5)
1251  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_54:%[0-9]+]]:sreg_32 = S_MOV_B32 220
1252  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_54:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_54]], implicit-def dead $scc
1253  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY87]], [[S_ADD_U32_54]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 220, addrspace 5)
1254  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_55:%[0-9]+]]:sreg_32 = S_MOV_B32 224
1255  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_55:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_55]], implicit-def dead $scc
1256  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY88]], [[S_ADD_U32_55]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 224, align 16, addrspace 5)
1257  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_56:%[0-9]+]]:sreg_32 = S_MOV_B32 228
1258  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_56:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_56]], implicit-def dead $scc
1259  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY89]], [[S_ADD_U32_56]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 228, addrspace 5)
1260  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_57:%[0-9]+]]:sreg_32 = S_MOV_B32 232
1261  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_57:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_57]], implicit-def dead $scc
1262  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY90]], [[S_ADD_U32_57]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 232, align 8, addrspace 5)
1263  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_58:%[0-9]+]]:sreg_32 = S_MOV_B32 236
1264  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_58:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_58]], implicit-def dead $scc
1265  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY91]], [[S_ADD_U32_58]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 236, addrspace 5)
1266  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_59:%[0-9]+]]:sreg_32 = S_MOV_B32 240
1267  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_59:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_59]], implicit-def dead $scc
1268  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY92]], [[S_ADD_U32_59]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 240, align 16, addrspace 5)
1269  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_60:%[0-9]+]]:sreg_32 = S_MOV_B32 244
1270  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_60:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_60]], implicit-def dead $scc
1271  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY93]], [[S_ADD_U32_60]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 244, addrspace 5)
1272  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_61:%[0-9]+]]:sreg_32 = S_MOV_B32 248
1273  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_61:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_61]], implicit-def dead $scc
1274  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY94]], [[S_ADD_U32_61]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 248, align 8, addrspace 5)
1275  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_62:%[0-9]+]]:sreg_32 = S_MOV_B32 252
1276  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_62:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_62]], implicit-def dead $scc
1277  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY95]], [[S_ADD_U32_62]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 252, addrspace 5)
1278  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_63:%[0-9]+]]:sreg_32 = S_MOV_B32 256
1279  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_63:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_63]], implicit-def dead $scc
1280  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY96]], [[S_ADD_U32_63]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 256, align 16, addrspace 5)
1281  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_64:%[0-9]+]]:sreg_32 = S_MOV_B32 260
1282  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_64:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_64]], implicit-def dead $scc
1283  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY97]], [[S_ADD_U32_64]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 260, addrspace 5)
1284  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_65:%[0-9]+]]:sreg_32 = S_MOV_B32 264
1285  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_65:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_65]], implicit-def dead $scc
1286  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY98]], [[S_ADD_U32_65]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 264, align 8, addrspace 5)
1287  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_66:%[0-9]+]]:sreg_32 = S_MOV_B32 268
1288  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_66:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_66]], implicit-def dead $scc
1289  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY99]], [[S_ADD_U32_66]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 268, addrspace 5)
1290  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_67:%[0-9]+]]:sreg_32 = S_MOV_B32 272
1291  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_67:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_67]], implicit-def dead $scc
1292  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY100]], [[S_ADD_U32_67]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 272, align 16, addrspace 5)
1293  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_68:%[0-9]+]]:sreg_32 = S_MOV_B32 276
1294  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_68:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_68]], implicit-def dead $scc
1295  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY101]], [[S_ADD_U32_68]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 276, addrspace 5)
1296  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_69:%[0-9]+]]:sreg_32 = S_MOV_B32 280
1297  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_69:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_69]], implicit-def dead $scc
1298  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY102]], [[S_ADD_U32_69]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 280, align 8, addrspace 5)
1299  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_70:%[0-9]+]]:sreg_32 = S_MOV_B32 284
1300  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_70:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_70]], implicit-def dead $scc
1301  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY103]], [[S_ADD_U32_70]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 284, addrspace 5)
1302  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_71:%[0-9]+]]:sreg_32 = S_MOV_B32 288
1303  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_71:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_71]], implicit-def dead $scc
1304  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY104]], [[S_ADD_U32_71]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 288, align 16, addrspace 5)
1305  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_72:%[0-9]+]]:sreg_32 = S_MOV_B32 292
1306  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_72:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_72]], implicit-def dead $scc
1307  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY105]], [[S_ADD_U32_72]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 292, addrspace 5)
1308  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_73:%[0-9]+]]:sreg_32 = S_MOV_B32 296
1309  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_73:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_73]], implicit-def dead $scc
1310  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY106]], [[S_ADD_U32_73]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 296, align 8, addrspace 5)
1311  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_74:%[0-9]+]]:sreg_32 = S_MOV_B32 300
1312  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_74:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_74]], implicit-def dead $scc
1313  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY107]], [[S_ADD_U32_74]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 300, addrspace 5)
1314  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_75:%[0-9]+]]:sreg_32 = S_MOV_B32 304
1315  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_75:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_75]], implicit-def dead $scc
1316  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY108]], [[S_ADD_U32_75]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 304, align 16, addrspace 5)
1317  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_76:%[0-9]+]]:sreg_32 = S_MOV_B32 308
1318  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_76:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_76]], implicit-def dead $scc
1319  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY109]], [[S_ADD_U32_76]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 308, addrspace 5)
1320  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_77:%[0-9]+]]:sreg_32 = S_MOV_B32 312
1321  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_77:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_77]], implicit-def dead $scc
1322  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY110]], [[S_ADD_U32_77]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 312, align 8, addrspace 5)
1323  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_78:%[0-9]+]]:sreg_32 = S_MOV_B32 316
1324  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_78:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_78]], implicit-def dead $scc
1325  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY111]], [[S_ADD_U32_78]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 316, addrspace 5)
1326  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_79:%[0-9]+]]:sreg_32 = S_MOV_B32 320
1327  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_79:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_79]], implicit-def dead $scc
1328  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY112]], [[S_ADD_U32_79]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 320, align 16, addrspace 5)
1329  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_80:%[0-9]+]]:sreg_32 = S_MOV_B32 324
1330  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_80:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_80]], implicit-def dead $scc
1331  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY113]], [[S_ADD_U32_80]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 324, addrspace 5)
1332  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_81:%[0-9]+]]:sreg_32 = S_MOV_B32 328
1333  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_81:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_81]], implicit-def dead $scc
1334  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY114]], [[S_ADD_U32_81]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 328, align 8, addrspace 5)
1335  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_82:%[0-9]+]]:sreg_32 = S_MOV_B32 332
1336  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_82:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_82]], implicit-def dead $scc
1337  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY115]], [[S_ADD_U32_82]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 332, addrspace 5)
1338  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_83:%[0-9]+]]:sreg_32 = S_MOV_B32 336
1339  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_83:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_83]], implicit-def dead $scc
1340  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY116]], [[S_ADD_U32_83]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 336, align 16, addrspace 5)
1341  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_84:%[0-9]+]]:sreg_32 = S_MOV_B32 340
1342  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_84:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_84]], implicit-def dead $scc
1343  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY117]], [[S_ADD_U32_84]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 340, addrspace 5)
1344  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_85:%[0-9]+]]:sreg_32 = S_MOV_B32 344
1345  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_85:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_85]], implicit-def dead $scc
1346  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY118]], [[S_ADD_U32_85]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 344, align 8, addrspace 5)
1347  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_86:%[0-9]+]]:sreg_32 = S_MOV_B32 348
1348  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_86:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_86]], implicit-def dead $scc
1349  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY119]], [[S_ADD_U32_86]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 348, addrspace 5)
1350  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_87:%[0-9]+]]:sreg_32 = S_MOV_B32 352
1351  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_87:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_87]], implicit-def dead $scc
1352  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY120]], [[S_ADD_U32_87]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 352, align 16, addrspace 5)
1353  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_88:%[0-9]+]]:sreg_32 = S_MOV_B32 356
1354  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_88:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_88]], implicit-def dead $scc
1355  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY121]], [[S_ADD_U32_88]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 356, addrspace 5)
1356  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_89:%[0-9]+]]:sreg_32 = S_MOV_B32 360
1357  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_89:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_89]], implicit-def dead $scc
1358  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY122]], [[S_ADD_U32_89]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 360, align 8, addrspace 5)
1359  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_90:%[0-9]+]]:sreg_32 = S_MOV_B32 364
1360  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_90:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_90]], implicit-def dead $scc
1361  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY123]], [[S_ADD_U32_90]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 364, addrspace 5)
1362  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_91:%[0-9]+]]:sreg_32 = S_MOV_B32 368
1363  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_91:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_91]], implicit-def dead $scc
1364  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY124]], [[S_ADD_U32_91]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 368, align 16, addrspace 5)
1365  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_92:%[0-9]+]]:sreg_32 = S_MOV_B32 372
1366  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_92:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_92]], implicit-def dead $scc
1367  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY125]], [[S_ADD_U32_92]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 372, addrspace 5)
1368  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_93:%[0-9]+]]:sreg_32 = S_MOV_B32 376
1369  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_93:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_93]], implicit-def dead $scc
1370  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY126]], [[S_ADD_U32_93]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 376, align 8, addrspace 5)
1371  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_94:%[0-9]+]]:sreg_32 = S_MOV_B32 380
1372  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_94:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_94]], implicit-def dead $scc
1373  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY127]], [[S_ADD_U32_94]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 380, addrspace 5)
1374  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_95:%[0-9]+]]:sreg_32 = S_MOV_B32 384
1375  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_95:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_95]], implicit-def dead $scc
1376  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY128]], [[S_ADD_U32_95]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 384, align 16, addrspace 5)
1377  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_96:%[0-9]+]]:sreg_32 = S_MOV_B32 388
1378  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_96:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_96]], implicit-def dead $scc
1379  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY129]], [[S_ADD_U32_96]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 388, addrspace 5)
1380  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_97:%[0-9]+]]:sreg_32 = S_MOV_B32 392
1381  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_97:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_97]], implicit-def dead $scc
1382  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY130]], [[S_ADD_U32_97]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 392, align 8, addrspace 5)
1383  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_98:%[0-9]+]]:sreg_32 = S_MOV_B32 396
1384  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_98:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_98]], implicit-def dead $scc
1385  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY131]], [[S_ADD_U32_98]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 396, addrspace 5)
1386  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_99:%[0-9]+]]:sreg_32 = S_MOV_B32 400
1387  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_99:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_99]], implicit-def dead $scc
1388  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY132]], [[S_ADD_U32_99]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 400, align 16, addrspace 5)
1389  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_100:%[0-9]+]]:sreg_32 = S_MOV_B32 404
1390  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_100:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_100]], implicit-def dead $scc
1391  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY133]], [[S_ADD_U32_100]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 404, addrspace 5)
1392  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_101:%[0-9]+]]:sreg_32 = S_MOV_B32 408
1393  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_101:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_101]], implicit-def dead $scc
1394  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY134]], [[S_ADD_U32_101]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 408, align 8, addrspace 5)
1395  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_102:%[0-9]+]]:sreg_32 = S_MOV_B32 412
1396  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_102:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_102]], implicit-def dead $scc
1397  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY135]], [[S_ADD_U32_102]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 412, addrspace 5)
1398  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_103:%[0-9]+]]:sreg_32 = S_MOV_B32 416
1399  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_103:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_103]], implicit-def dead $scc
1400  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY136]], [[S_ADD_U32_103]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 416, align 16, addrspace 5)
1401  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_104:%[0-9]+]]:sreg_32 = S_MOV_B32 420
1402  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_104:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_104]], implicit-def dead $scc
1403  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY137]], [[S_ADD_U32_104]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 420, addrspace 5)
1404  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_105:%[0-9]+]]:sreg_32 = S_MOV_B32 424
1405  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_105:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_105]], implicit-def dead $scc
1406  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY138]], [[S_ADD_U32_105]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 424, align 8, addrspace 5)
1407  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_106:%[0-9]+]]:sreg_32 = S_MOV_B32 428
1408  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_106:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_106]], implicit-def dead $scc
1409  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY139]], [[S_ADD_U32_106]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 428, addrspace 5)
1410  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_107:%[0-9]+]]:sreg_32 = S_MOV_B32 432
1411  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_107:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_107]], implicit-def dead $scc
1412  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY140]], [[S_ADD_U32_107]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 432, align 16, addrspace 5)
1413  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_108:%[0-9]+]]:sreg_32 = S_MOV_B32 436
1414  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_108:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_108]], implicit-def dead $scc
1415  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY141]], [[S_ADD_U32_108]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 436, addrspace 5)
1416  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_109:%[0-9]+]]:sreg_32 = S_MOV_B32 440
1417  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_109:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_109]], implicit-def dead $scc
1418  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY142]], [[S_ADD_U32_109]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 440, align 8, addrspace 5)
1419  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_110:%[0-9]+]]:sreg_32 = S_MOV_B32 444
1420  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_110:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_110]], implicit-def dead $scc
1421  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY143]], [[S_ADD_U32_110]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 444, addrspace 5)
1422  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_111:%[0-9]+]]:sreg_32 = S_MOV_B32 448
1423  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_111:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_111]], implicit-def dead $scc
1424  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY144]], [[S_ADD_U32_111]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 448, align 16, addrspace 5)
1425  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_112:%[0-9]+]]:sreg_32 = S_MOV_B32 452
1426  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_112:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_112]], implicit-def dead $scc
1427  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY145]], [[S_ADD_U32_112]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 452, addrspace 5)
1428  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_113:%[0-9]+]]:sreg_32 = S_MOV_B32 456
1429  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_113:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_113]], implicit-def dead $scc
1430  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY146]], [[S_ADD_U32_113]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 456, align 8, addrspace 5)
1431  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_114:%[0-9]+]]:sreg_32 = S_MOV_B32 460
1432  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_114:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_114]], implicit-def dead $scc
1433  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY147]], [[S_ADD_U32_114]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 460, addrspace 5)
1434  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_115:%[0-9]+]]:sreg_32 = S_MOV_B32 464
1435  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_115:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_115]], implicit-def dead $scc
1436  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY148]], [[S_ADD_U32_115]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 464, align 16, addrspace 5)
1437  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_116:%[0-9]+]]:sreg_32 = S_MOV_B32 468
1438  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_116:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_116]], implicit-def dead $scc
1439  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY149]], [[S_ADD_U32_116]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 468, addrspace 5)
1440  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_117:%[0-9]+]]:sreg_32 = S_MOV_B32 472
1441  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_117:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_117]], implicit-def dead $scc
1442  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY150]], [[S_ADD_U32_117]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 472, align 8, addrspace 5)
1443  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_118:%[0-9]+]]:sreg_32 = S_MOV_B32 476
1444  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_118:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_118]], implicit-def dead $scc
1445  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY151]], [[S_ADD_U32_118]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 476, addrspace 5)
1446  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_119:%[0-9]+]]:sreg_32 = S_MOV_B32 480
1447  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_119:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_119]], implicit-def dead $scc
1448  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY152]], [[S_ADD_U32_119]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 480, align 16, addrspace 5)
1449  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_120:%[0-9]+]]:sreg_32 = S_MOV_B32 484
1450  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_120:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_120]], implicit-def dead $scc
1451  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY153]], [[S_ADD_U32_120]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 484, addrspace 5)
1452  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_121:%[0-9]+]]:sreg_32 = S_MOV_B32 488
1453  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_121:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_121]], implicit-def dead $scc
1454  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY154]], [[S_ADD_U32_121]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 488, align 8, addrspace 5)
1455  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_122:%[0-9]+]]:sreg_32 = S_MOV_B32 492
1456  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_122:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_122]], implicit-def dead $scc
1457  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY155]], [[S_ADD_U32_122]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 492, addrspace 5)
1458  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_123:%[0-9]+]]:sreg_32 = S_MOV_B32 496
1459  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_123:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_123]], implicit-def dead $scc
1460  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY156]], [[S_ADD_U32_123]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 496, align 16, addrspace 5)
1461  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_124:%[0-9]+]]:sreg_32 = S_MOV_B32 500
1462  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_124:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_124]], implicit-def dead $scc
1463  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY157]], [[S_ADD_U32_124]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 500, addrspace 5)
1464  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_125:%[0-9]+]]:sreg_32 = S_MOV_B32 504
1465  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_125:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_125]], implicit-def dead $scc
1466  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY158]], [[S_ADD_U32_125]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 504, align 8, addrspace 5)
1467  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_126:%[0-9]+]]:sreg_32 = S_MOV_B32 508
1468  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_126:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_126]], implicit-def dead $scc
1469  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY159]], [[S_ADD_U32_126]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 508, addrspace 5)
1470  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_127:%[0-9]+]]:sreg_32 = S_MOV_B32 512
1471  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_127:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_127]], implicit-def dead $scc
1472  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY160]], [[S_ADD_U32_127]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 512, align 16, addrspace 5)
1473  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_128:%[0-9]+]]:sreg_32 = S_MOV_B32 516
1474  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_128:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_128]], implicit-def dead $scc
1475  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY161]], [[S_ADD_U32_128]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 516, addrspace 5)
1476  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_129:%[0-9]+]]:sreg_32 = S_MOV_B32 520
1477  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_129:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_129]], implicit-def dead $scc
1478  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY162]], [[S_ADD_U32_129]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 520, align 8, addrspace 5)
1479  ; GISEL-GFX11-NEXT:   [[S_MOV_B32_130:%[0-9]+]]:sreg_32 = S_MOV_B32 524
1480  ; GISEL-GFX11-NEXT:   [[S_ADD_U32_130:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_U32 [[COPY164]], [[S_MOV_B32_130]], implicit-def dead $scc
1481  ; GISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY163]], [[S_ADD_U32_130]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 524, addrspace 5)
1482  ; GISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY]]
1483  ; GISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY1]]
1484  ; GISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY2]]
1485  ; GISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY3]]
1486  ; GISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY4]]
1487  ; GISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY5]]
1488  ; GISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY6]]
1489  ; GISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY7]]
1490  ; GISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY8]]
1491  ; GISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY9]]
1492  ; GISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY10]]
1493  ; GISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY11]]
1494  ; GISEL-GFX11-NEXT:   $vgpr12 = COPY [[COPY12]]
1495  ; GISEL-GFX11-NEXT:   $vgpr13 = COPY [[COPY13]]
1496  ; GISEL-GFX11-NEXT:   $vgpr14 = COPY [[COPY14]]
1497  ; GISEL-GFX11-NEXT:   $vgpr15 = COPY [[COPY15]]
1498  ; GISEL-GFX11-NEXT:   $vgpr16 = COPY [[COPY16]]
1499  ; GISEL-GFX11-NEXT:   $vgpr17 = COPY [[COPY17]]
1500  ; GISEL-GFX11-NEXT:   $vgpr18 = COPY [[COPY18]]
1501  ; GISEL-GFX11-NEXT:   $vgpr19 = COPY [[COPY19]]
1502  ; GISEL-GFX11-NEXT:   $vgpr20 = COPY [[COPY20]]
1503  ; GISEL-GFX11-NEXT:   $vgpr21 = COPY [[COPY21]]
1504  ; GISEL-GFX11-NEXT:   $vgpr22 = COPY [[COPY22]]
1505  ; GISEL-GFX11-NEXT:   $vgpr23 = COPY [[COPY23]]
1506  ; GISEL-GFX11-NEXT:   $vgpr24 = COPY [[COPY24]]
1507  ; GISEL-GFX11-NEXT:   $vgpr25 = COPY [[COPY25]]
1508  ; GISEL-GFX11-NEXT:   $vgpr26 = COPY [[COPY26]]
1509  ; GISEL-GFX11-NEXT:   $vgpr27 = COPY [[COPY27]]
1510  ; GISEL-GFX11-NEXT:   $vgpr28 = COPY [[COPY28]]
1511  ; GISEL-GFX11-NEXT:   $vgpr29 = COPY [[COPY29]]
1512  ; GISEL-GFX11-NEXT:   $vgpr30 = COPY [[COPY30]]
1513  ; GISEL-GFX11-NEXT:   $vgpr31 = COPY [[COPY31]]
1514  ; GISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
1515  ; GISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
1516  ; GISEL-GFX11-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15, implicit $vgpr16, implicit $vgpr17, implicit $vgpr18, implicit $vgpr19, implicit $vgpr20, implicit $vgpr21, implicit $vgpr22, implicit $vgpr23, implicit $vgpr24, implicit $vgpr25, implicit $vgpr26, implicit $vgpr27, implicit $vgpr28, implicit $vgpr29, implicit $vgpr30, implicit $vgpr31
1517  ; GISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 528, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
1518  ; GISEL-GFX11-NEXT:   S_ENDPGM 0
1519  ;
1520  ; GISEL-GFX10-LABEL: name: amdgpu_cs_chain_many_regs
1521  ; GISEL-GFX10: bb.1 (%ir-block.0):
1522  ; GISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $sgpr8, $sgpr9, $sgpr10, $sgpr11, $sgpr12, $sgpr13, $sgpr14, $sgpr15, $sgpr16, $sgpr17, $sgpr18, $sgpr19, $sgpr20, $sgpr21, $sgpr22, $sgpr23, $sgpr24, $sgpr25, $sgpr26, $sgpr27, $sgpr28, $sgpr29, $sgpr30, $sgpr31, $sgpr32, $sgpr33, $sgpr34, $sgpr35, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr40, $vgpr41, $vgpr42, $vgpr43, $vgpr44, $vgpr45, $vgpr46, $vgpr47, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr56, $vgpr57, $vgpr58, $vgpr59, $vgpr60, $vgpr61, $vgpr62, $vgpr63, $vgpr64, $vgpr65, $vgpr66, $vgpr67, $vgpr68, $vgpr69, $vgpr70, $vgpr71, $vgpr72, $vgpr73, $vgpr74, $vgpr75, $vgpr76, $vgpr77, $vgpr78, $vgpr79, $vgpr80, $vgpr81, $vgpr82, $vgpr83, $vgpr84, $vgpr85, $vgpr86, $vgpr87, $vgpr88, $vgpr89, $vgpr90, $vgpr91, $vgpr92, $vgpr93, $vgpr94, $vgpr95, $vgpr96, $vgpr97, $vgpr98, $vgpr99, $vgpr100, $vgpr101, $vgpr102, $vgpr103, $vgpr104, $vgpr105, $vgpr106, $vgpr107, $vgpr108, $vgpr109, $vgpr110, $vgpr111, $vgpr112, $vgpr113, $vgpr114, $vgpr115, $vgpr116, $vgpr117, $vgpr118, $vgpr119, $vgpr120, $vgpr121, $vgpr122, $vgpr123, $vgpr124, $vgpr125, $vgpr126, $vgpr127, $vgpr128, $vgpr129, $vgpr130, $vgpr131, $vgpr132, $vgpr133, $vgpr134, $vgpr135
1523  ; GISEL-GFX10-NEXT: {{  $}}
1524  ; GISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:sreg_32 = COPY $sgpr0
1525  ; GISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:sreg_32 = COPY $sgpr1
1526  ; GISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:sreg_32 = COPY $sgpr2
1527  ; GISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:sreg_32 = COPY $sgpr3
1528  ; GISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:sreg_32 = COPY $sgpr4
1529  ; GISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:sreg_32 = COPY $sgpr5
1530  ; GISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:sreg_32 = COPY $sgpr6
1531  ; GISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:sreg_32 = COPY $sgpr7
1532  ; GISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:sreg_32 = COPY $sgpr8
1533  ; GISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:sreg_32 = COPY $sgpr9
1534  ; GISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:sreg_32 = COPY $sgpr10
1535  ; GISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:sreg_32 = COPY $sgpr11
1536  ; GISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:sreg_32 = COPY $sgpr12
1537  ; GISEL-GFX10-NEXT:   [[COPY13:%[0-9]+]]:sreg_32 = COPY $sgpr13
1538  ; GISEL-GFX10-NEXT:   [[COPY14:%[0-9]+]]:sreg_32 = COPY $sgpr14
1539  ; GISEL-GFX10-NEXT:   [[COPY15:%[0-9]+]]:sreg_32 = COPY $sgpr15
1540  ; GISEL-GFX10-NEXT:   [[COPY16:%[0-9]+]]:sreg_32 = COPY $sgpr16
1541  ; GISEL-GFX10-NEXT:   [[COPY17:%[0-9]+]]:sreg_32 = COPY $sgpr17
1542  ; GISEL-GFX10-NEXT:   [[COPY18:%[0-9]+]]:sreg_32 = COPY $sgpr18
1543  ; GISEL-GFX10-NEXT:   [[COPY19:%[0-9]+]]:sreg_32 = COPY $sgpr19
1544  ; GISEL-GFX10-NEXT:   [[COPY20:%[0-9]+]]:sreg_32 = COPY $sgpr20
1545  ; GISEL-GFX10-NEXT:   [[COPY21:%[0-9]+]]:sreg_32 = COPY $sgpr21
1546  ; GISEL-GFX10-NEXT:   [[COPY22:%[0-9]+]]:sreg_32 = COPY $sgpr22
1547  ; GISEL-GFX10-NEXT:   [[COPY23:%[0-9]+]]:sreg_32 = COPY $sgpr23
1548  ; GISEL-GFX10-NEXT:   [[COPY24:%[0-9]+]]:sreg_32 = COPY $sgpr24
1549  ; GISEL-GFX10-NEXT:   [[COPY25:%[0-9]+]]:sreg_32 = COPY $sgpr25
1550  ; GISEL-GFX10-NEXT:   [[COPY26:%[0-9]+]]:sreg_32 = COPY $sgpr26
1551  ; GISEL-GFX10-NEXT:   [[COPY27:%[0-9]+]]:sreg_32 = COPY $sgpr27
1552  ; GISEL-GFX10-NEXT:   [[COPY28:%[0-9]+]]:sreg_32 = COPY $sgpr28
1553  ; GISEL-GFX10-NEXT:   [[COPY29:%[0-9]+]]:sreg_32 = COPY $sgpr29
1554  ; GISEL-GFX10-NEXT:   [[COPY30:%[0-9]+]]:sreg_32 = COPY $sgpr30
1555  ; GISEL-GFX10-NEXT:   [[COPY31:%[0-9]+]]:sreg_32 = COPY $sgpr31
1556  ; GISEL-GFX10-NEXT:   [[COPY32:%[0-9]+]]:sreg_32 = COPY $sgpr32
1557  ; GISEL-GFX10-NEXT:   [[COPY33:%[0-9]+]]:sreg_32 = COPY $sgpr33
1558  ; GISEL-GFX10-NEXT:   [[COPY34:%[0-9]+]]:sreg_32 = COPY $sgpr34
1559  ; GISEL-GFX10-NEXT:   [[COPY35:%[0-9]+]]:sreg_32 = COPY $sgpr35
1560  ; GISEL-GFX10-NEXT:   [[COPY36:%[0-9]+]]:vgpr_32 = COPY $vgpr8
1561  ; GISEL-GFX10-NEXT:   [[COPY37:%[0-9]+]]:vgpr_32 = COPY $vgpr9
1562  ; GISEL-GFX10-NEXT:   [[COPY38:%[0-9]+]]:vgpr_32 = COPY $vgpr10
1563  ; GISEL-GFX10-NEXT:   [[COPY39:%[0-9]+]]:vgpr_32 = COPY $vgpr11
1564  ; GISEL-GFX10-NEXT:   [[COPY40:%[0-9]+]]:vgpr_32 = COPY $vgpr12
1565  ; GISEL-GFX10-NEXT:   [[COPY41:%[0-9]+]]:vgpr_32 = COPY $vgpr13
1566  ; GISEL-GFX10-NEXT:   [[COPY42:%[0-9]+]]:vgpr_32 = COPY $vgpr14
1567  ; GISEL-GFX10-NEXT:   [[COPY43:%[0-9]+]]:vgpr_32 = COPY $vgpr15
1568  ; GISEL-GFX10-NEXT:   [[COPY44:%[0-9]+]]:vgpr_32 = COPY $vgpr16
1569  ; GISEL-GFX10-NEXT:   [[COPY45:%[0-9]+]]:vgpr_32 = COPY $vgpr17
1570  ; GISEL-GFX10-NEXT:   [[COPY46:%[0-9]+]]:vgpr_32 = COPY $vgpr18
1571  ; GISEL-GFX10-NEXT:   [[COPY47:%[0-9]+]]:vgpr_32 = COPY $vgpr19
1572  ; GISEL-GFX10-NEXT:   [[COPY48:%[0-9]+]]:vgpr_32 = COPY $vgpr20
1573  ; GISEL-GFX10-NEXT:   [[COPY49:%[0-9]+]]:vgpr_32 = COPY $vgpr21
1574  ; GISEL-GFX10-NEXT:   [[COPY50:%[0-9]+]]:vgpr_32 = COPY $vgpr22
1575  ; GISEL-GFX10-NEXT:   [[COPY51:%[0-9]+]]:vgpr_32 = COPY $vgpr23
1576  ; GISEL-GFX10-NEXT:   [[COPY52:%[0-9]+]]:vgpr_32 = COPY $vgpr24
1577  ; GISEL-GFX10-NEXT:   [[COPY53:%[0-9]+]]:vgpr_32 = COPY $vgpr25
1578  ; GISEL-GFX10-NEXT:   [[COPY54:%[0-9]+]]:vgpr_32 = COPY $vgpr26
1579  ; GISEL-GFX10-NEXT:   [[COPY55:%[0-9]+]]:vgpr_32 = COPY $vgpr27
1580  ; GISEL-GFX10-NEXT:   [[COPY56:%[0-9]+]]:vgpr_32 = COPY $vgpr28
1581  ; GISEL-GFX10-NEXT:   [[COPY57:%[0-9]+]]:vgpr_32 = COPY $vgpr29
1582  ; GISEL-GFX10-NEXT:   [[COPY58:%[0-9]+]]:vgpr_32 = COPY $vgpr30
1583  ; GISEL-GFX10-NEXT:   [[COPY59:%[0-9]+]]:vgpr_32 = COPY $vgpr31
1584  ; GISEL-GFX10-NEXT:   [[COPY60:%[0-9]+]]:vgpr_32 = COPY $vgpr32
1585  ; GISEL-GFX10-NEXT:   [[COPY61:%[0-9]+]]:vgpr_32 = COPY $vgpr33
1586  ; GISEL-GFX10-NEXT:   [[COPY62:%[0-9]+]]:vgpr_32 = COPY $vgpr34
1587  ; GISEL-GFX10-NEXT:   [[COPY63:%[0-9]+]]:vgpr_32 = COPY $vgpr35
1588  ; GISEL-GFX10-NEXT:   [[COPY64:%[0-9]+]]:vgpr_32 = COPY $vgpr36
1589  ; GISEL-GFX10-NEXT:   [[COPY65:%[0-9]+]]:vgpr_32 = COPY $vgpr37
1590  ; GISEL-GFX10-NEXT:   [[COPY66:%[0-9]+]]:vgpr_32 = COPY $vgpr38
1591  ; GISEL-GFX10-NEXT:   [[COPY67:%[0-9]+]]:vgpr_32 = COPY $vgpr39
1592  ; GISEL-GFX10-NEXT:   [[COPY68:%[0-9]+]]:vgpr_32 = COPY $vgpr40
1593  ; GISEL-GFX10-NEXT:   [[COPY69:%[0-9]+]]:vgpr_32 = COPY $vgpr41
1594  ; GISEL-GFX10-NEXT:   [[COPY70:%[0-9]+]]:vgpr_32 = COPY $vgpr42
1595  ; GISEL-GFX10-NEXT:   [[COPY71:%[0-9]+]]:vgpr_32 = COPY $vgpr43
1596  ; GISEL-GFX10-NEXT:   [[COPY72:%[0-9]+]]:vgpr_32 = COPY $vgpr44
1597  ; GISEL-GFX10-NEXT:   [[COPY73:%[0-9]+]]:vgpr_32 = COPY $vgpr45
1598  ; GISEL-GFX10-NEXT:   [[COPY74:%[0-9]+]]:vgpr_32 = COPY $vgpr46
1599  ; GISEL-GFX10-NEXT:   [[COPY75:%[0-9]+]]:vgpr_32 = COPY $vgpr47
1600  ; GISEL-GFX10-NEXT:   [[COPY76:%[0-9]+]]:vgpr_32 = COPY $vgpr48
1601  ; GISEL-GFX10-NEXT:   [[COPY77:%[0-9]+]]:vgpr_32 = COPY $vgpr49
1602  ; GISEL-GFX10-NEXT:   [[COPY78:%[0-9]+]]:vgpr_32 = COPY $vgpr50
1603  ; GISEL-GFX10-NEXT:   [[COPY79:%[0-9]+]]:vgpr_32 = COPY $vgpr51
1604  ; GISEL-GFX10-NEXT:   [[COPY80:%[0-9]+]]:vgpr_32 = COPY $vgpr52
1605  ; GISEL-GFX10-NEXT:   [[COPY81:%[0-9]+]]:vgpr_32 = COPY $vgpr53
1606  ; GISEL-GFX10-NEXT:   [[COPY82:%[0-9]+]]:vgpr_32 = COPY $vgpr54
1607  ; GISEL-GFX10-NEXT:   [[COPY83:%[0-9]+]]:vgpr_32 = COPY $vgpr55
1608  ; GISEL-GFX10-NEXT:   [[COPY84:%[0-9]+]]:vgpr_32 = COPY $vgpr56
1609  ; GISEL-GFX10-NEXT:   [[COPY85:%[0-9]+]]:vgpr_32 = COPY $vgpr57
1610  ; GISEL-GFX10-NEXT:   [[COPY86:%[0-9]+]]:vgpr_32 = COPY $vgpr58
1611  ; GISEL-GFX10-NEXT:   [[COPY87:%[0-9]+]]:vgpr_32 = COPY $vgpr59
1612  ; GISEL-GFX10-NEXT:   [[COPY88:%[0-9]+]]:vgpr_32 = COPY $vgpr60
1613  ; GISEL-GFX10-NEXT:   [[COPY89:%[0-9]+]]:vgpr_32 = COPY $vgpr61
1614  ; GISEL-GFX10-NEXT:   [[COPY90:%[0-9]+]]:vgpr_32 = COPY $vgpr62
1615  ; GISEL-GFX10-NEXT:   [[COPY91:%[0-9]+]]:vgpr_32 = COPY $vgpr63
1616  ; GISEL-GFX10-NEXT:   [[COPY92:%[0-9]+]]:vgpr_32 = COPY $vgpr64
1617  ; GISEL-GFX10-NEXT:   [[COPY93:%[0-9]+]]:vgpr_32 = COPY $vgpr65
1618  ; GISEL-GFX10-NEXT:   [[COPY94:%[0-9]+]]:vgpr_32 = COPY $vgpr66
1619  ; GISEL-GFX10-NEXT:   [[COPY95:%[0-9]+]]:vgpr_32 = COPY $vgpr67
1620  ; GISEL-GFX10-NEXT:   [[COPY96:%[0-9]+]]:vgpr_32 = COPY $vgpr68
1621  ; GISEL-GFX10-NEXT:   [[COPY97:%[0-9]+]]:vgpr_32 = COPY $vgpr69
1622  ; GISEL-GFX10-NEXT:   [[COPY98:%[0-9]+]]:vgpr_32 = COPY $vgpr70
1623  ; GISEL-GFX10-NEXT:   [[COPY99:%[0-9]+]]:vgpr_32 = COPY $vgpr71
1624  ; GISEL-GFX10-NEXT:   [[COPY100:%[0-9]+]]:vgpr_32 = COPY $vgpr72
1625  ; GISEL-GFX10-NEXT:   [[COPY101:%[0-9]+]]:vgpr_32 = COPY $vgpr73
1626  ; GISEL-GFX10-NEXT:   [[COPY102:%[0-9]+]]:vgpr_32 = COPY $vgpr74
1627  ; GISEL-GFX10-NEXT:   [[COPY103:%[0-9]+]]:vgpr_32 = COPY $vgpr75
1628  ; GISEL-GFX10-NEXT:   [[COPY104:%[0-9]+]]:vgpr_32 = COPY $vgpr76
1629  ; GISEL-GFX10-NEXT:   [[COPY105:%[0-9]+]]:vgpr_32 = COPY $vgpr77
1630  ; GISEL-GFX10-NEXT:   [[COPY106:%[0-9]+]]:vgpr_32 = COPY $vgpr78
1631  ; GISEL-GFX10-NEXT:   [[COPY107:%[0-9]+]]:vgpr_32 = COPY $vgpr79
1632  ; GISEL-GFX10-NEXT:   [[COPY108:%[0-9]+]]:vgpr_32 = COPY $vgpr80
1633  ; GISEL-GFX10-NEXT:   [[COPY109:%[0-9]+]]:vgpr_32 = COPY $vgpr81
1634  ; GISEL-GFX10-NEXT:   [[COPY110:%[0-9]+]]:vgpr_32 = COPY $vgpr82
1635  ; GISEL-GFX10-NEXT:   [[COPY111:%[0-9]+]]:vgpr_32 = COPY $vgpr83
1636  ; GISEL-GFX10-NEXT:   [[COPY112:%[0-9]+]]:vgpr_32 = COPY $vgpr84
1637  ; GISEL-GFX10-NEXT:   [[COPY113:%[0-9]+]]:vgpr_32 = COPY $vgpr85
1638  ; GISEL-GFX10-NEXT:   [[COPY114:%[0-9]+]]:vgpr_32 = COPY $vgpr86
1639  ; GISEL-GFX10-NEXT:   [[COPY115:%[0-9]+]]:vgpr_32 = COPY $vgpr87
1640  ; GISEL-GFX10-NEXT:   [[COPY116:%[0-9]+]]:vgpr_32 = COPY $vgpr88
1641  ; GISEL-GFX10-NEXT:   [[COPY117:%[0-9]+]]:vgpr_32 = COPY $vgpr89
1642  ; GISEL-GFX10-NEXT:   [[COPY118:%[0-9]+]]:vgpr_32 = COPY $vgpr90
1643  ; GISEL-GFX10-NEXT:   [[COPY119:%[0-9]+]]:vgpr_32 = COPY $vgpr91
1644  ; GISEL-GFX10-NEXT:   [[COPY120:%[0-9]+]]:vgpr_32 = COPY $vgpr92
1645  ; GISEL-GFX10-NEXT:   [[COPY121:%[0-9]+]]:vgpr_32 = COPY $vgpr93
1646  ; GISEL-GFX10-NEXT:   [[COPY122:%[0-9]+]]:vgpr_32 = COPY $vgpr94
1647  ; GISEL-GFX10-NEXT:   [[COPY123:%[0-9]+]]:vgpr_32 = COPY $vgpr95
1648  ; GISEL-GFX10-NEXT:   [[COPY124:%[0-9]+]]:vgpr_32 = COPY $vgpr96
1649  ; GISEL-GFX10-NEXT:   [[COPY125:%[0-9]+]]:vgpr_32 = COPY $vgpr97
1650  ; GISEL-GFX10-NEXT:   [[COPY126:%[0-9]+]]:vgpr_32 = COPY $vgpr98
1651  ; GISEL-GFX10-NEXT:   [[COPY127:%[0-9]+]]:vgpr_32 = COPY $vgpr99
1652  ; GISEL-GFX10-NEXT:   [[COPY128:%[0-9]+]]:vgpr_32 = COPY $vgpr100
1653  ; GISEL-GFX10-NEXT:   [[COPY129:%[0-9]+]]:vgpr_32 = COPY $vgpr101
1654  ; GISEL-GFX10-NEXT:   [[COPY130:%[0-9]+]]:vgpr_32 = COPY $vgpr102
1655  ; GISEL-GFX10-NEXT:   [[COPY131:%[0-9]+]]:vgpr_32 = COPY $vgpr103
1656  ; GISEL-GFX10-NEXT:   [[COPY132:%[0-9]+]]:vgpr_32 = COPY $vgpr104
1657  ; GISEL-GFX10-NEXT:   [[COPY133:%[0-9]+]]:vgpr_32 = COPY $vgpr105
1658  ; GISEL-GFX10-NEXT:   [[COPY134:%[0-9]+]]:vgpr_32 = COPY $vgpr106
1659  ; GISEL-GFX10-NEXT:   [[COPY135:%[0-9]+]]:vgpr_32 = COPY $vgpr107
1660  ; GISEL-GFX10-NEXT:   [[COPY136:%[0-9]+]]:vgpr_32 = COPY $vgpr108
1661  ; GISEL-GFX10-NEXT:   [[COPY137:%[0-9]+]]:vgpr_32 = COPY $vgpr109
1662  ; GISEL-GFX10-NEXT:   [[COPY138:%[0-9]+]]:vgpr_32 = COPY $vgpr110
1663  ; GISEL-GFX10-NEXT:   [[COPY139:%[0-9]+]]:vgpr_32 = COPY $vgpr111
1664  ; GISEL-GFX10-NEXT:   [[COPY140:%[0-9]+]]:vgpr_32 = COPY $vgpr112
1665  ; GISEL-GFX10-NEXT:   [[COPY141:%[0-9]+]]:vgpr_32 = COPY $vgpr113
1666  ; GISEL-GFX10-NEXT:   [[COPY142:%[0-9]+]]:vgpr_32 = COPY $vgpr114
1667  ; GISEL-GFX10-NEXT:   [[COPY143:%[0-9]+]]:vgpr_32 = COPY $vgpr115
1668  ; GISEL-GFX10-NEXT:   [[COPY144:%[0-9]+]]:vgpr_32 = COPY $vgpr116
1669  ; GISEL-GFX10-NEXT:   [[COPY145:%[0-9]+]]:vgpr_32 = COPY $vgpr117
1670  ; GISEL-GFX10-NEXT:   [[COPY146:%[0-9]+]]:vgpr_32 = COPY $vgpr118
1671  ; GISEL-GFX10-NEXT:   [[COPY147:%[0-9]+]]:vgpr_32 = COPY $vgpr119
1672  ; GISEL-GFX10-NEXT:   [[COPY148:%[0-9]+]]:vgpr_32 = COPY $vgpr120
1673  ; GISEL-GFX10-NEXT:   [[COPY149:%[0-9]+]]:vgpr_32 = COPY $vgpr121
1674  ; GISEL-GFX10-NEXT:   [[COPY150:%[0-9]+]]:vgpr_32 = COPY $vgpr122
1675  ; GISEL-GFX10-NEXT:   [[COPY151:%[0-9]+]]:vgpr_32 = COPY $vgpr123
1676  ; GISEL-GFX10-NEXT:   [[COPY152:%[0-9]+]]:vgpr_32 = COPY $vgpr124
1677  ; GISEL-GFX10-NEXT:   [[COPY153:%[0-9]+]]:vgpr_32 = COPY $vgpr125
1678  ; GISEL-GFX10-NEXT:   [[COPY154:%[0-9]+]]:vgpr_32 = COPY $vgpr126
1679  ; GISEL-GFX10-NEXT:   [[COPY155:%[0-9]+]]:vgpr_32 = COPY $vgpr127
1680  ; GISEL-GFX10-NEXT:   [[COPY156:%[0-9]+]]:vgpr_32 = COPY $vgpr128
1681  ; GISEL-GFX10-NEXT:   [[COPY157:%[0-9]+]]:vgpr_32 = COPY $vgpr129
1682  ; GISEL-GFX10-NEXT:   [[COPY158:%[0-9]+]]:vgpr_32 = COPY $vgpr130
1683  ; GISEL-GFX10-NEXT:   [[COPY159:%[0-9]+]]:vgpr_32 = COPY $vgpr131
1684  ; GISEL-GFX10-NEXT:   [[COPY160:%[0-9]+]]:vgpr_32 = COPY $vgpr132
1685  ; GISEL-GFX10-NEXT:   [[COPY161:%[0-9]+]]:vgpr_32 = COPY $vgpr133
1686  ; GISEL-GFX10-NEXT:   [[COPY162:%[0-9]+]]:vgpr_32 = COPY $vgpr134
1687  ; GISEL-GFX10-NEXT:   [[COPY163:%[0-9]+]]:vgpr_32 = COPY $vgpr135
1688  ; GISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
1689  ; GISEL-GFX10-NEXT:   [[COPY164:%[0-9]+]]:vgpr_32 = COPY [[COPY32]]
1690  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY164]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 0, 0, 0, implicit $exec :: (store (s32) into stack, align 16, addrspace 5)
1691  ; GISEL-GFX10-NEXT:   [[COPY165:%[0-9]+]]:vgpr_32 = COPY [[COPY33]]
1692  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY165]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 4, 0, 0, implicit $exec :: (store (s32) into stack + 4, addrspace 5)
1693  ; GISEL-GFX10-NEXT:   [[COPY166:%[0-9]+]]:vgpr_32 = COPY [[COPY34]]
1694  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY166]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 8, 0, 0, implicit $exec :: (store (s32) into stack + 8, align 8, addrspace 5)
1695  ; GISEL-GFX10-NEXT:   [[COPY167:%[0-9]+]]:vgpr_32 = COPY [[COPY35]]
1696  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY167]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 12, 0, 0, implicit $exec :: (store (s32) into stack + 12, addrspace 5)
1697  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY36]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 16, 0, 0, implicit $exec :: (store (s32) into stack + 16, align 16, addrspace 5)
1698  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY37]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 20, 0, 0, implicit $exec :: (store (s32) into stack + 20, addrspace 5)
1699  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY38]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 24, 0, 0, implicit $exec :: (store (s32) into stack + 24, align 8, addrspace 5)
1700  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY39]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 28, 0, 0, implicit $exec :: (store (s32) into stack + 28, addrspace 5)
1701  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY40]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 32, 0, 0, implicit $exec :: (store (s32) into stack + 32, align 16, addrspace 5)
1702  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY41]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 36, 0, 0, implicit $exec :: (store (s32) into stack + 36, addrspace 5)
1703  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY42]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 40, 0, 0, implicit $exec :: (store (s32) into stack + 40, align 8, addrspace 5)
1704  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY43]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 44, 0, 0, implicit $exec :: (store (s32) into stack + 44, addrspace 5)
1705  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY44]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 48, 0, 0, implicit $exec :: (store (s32) into stack + 48, align 16, addrspace 5)
1706  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY45]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 52, 0, 0, implicit $exec :: (store (s32) into stack + 52, addrspace 5)
1707  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY46]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 56, 0, 0, implicit $exec :: (store (s32) into stack + 56, align 8, addrspace 5)
1708  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY47]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 60, 0, 0, implicit $exec :: (store (s32) into stack + 60, addrspace 5)
1709  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY48]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 64, 0, 0, implicit $exec :: (store (s32) into stack + 64, align 16, addrspace 5)
1710  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY49]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 68, 0, 0, implicit $exec :: (store (s32) into stack + 68, addrspace 5)
1711  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY50]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 72, 0, 0, implicit $exec :: (store (s32) into stack + 72, align 8, addrspace 5)
1712  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY51]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 76, 0, 0, implicit $exec :: (store (s32) into stack + 76, addrspace 5)
1713  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY52]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 80, 0, 0, implicit $exec :: (store (s32) into stack + 80, align 16, addrspace 5)
1714  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY53]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 84, 0, 0, implicit $exec :: (store (s32) into stack + 84, addrspace 5)
1715  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY54]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 88, 0, 0, implicit $exec :: (store (s32) into stack + 88, align 8, addrspace 5)
1716  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY55]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 92, 0, 0, implicit $exec :: (store (s32) into stack + 92, addrspace 5)
1717  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY56]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 96, 0, 0, implicit $exec :: (store (s32) into stack + 96, align 16, addrspace 5)
1718  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY57]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 100, 0, 0, implicit $exec :: (store (s32) into stack + 100, addrspace 5)
1719  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY58]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 104, 0, 0, implicit $exec :: (store (s32) into stack + 104, align 8, addrspace 5)
1720  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY59]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 108, 0, 0, implicit $exec :: (store (s32) into stack + 108, addrspace 5)
1721  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY60]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 112, 0, 0, implicit $exec :: (store (s32) into stack + 112, align 16, addrspace 5)
1722  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY61]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 116, 0, 0, implicit $exec :: (store (s32) into stack + 116, addrspace 5)
1723  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY62]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 120, 0, 0, implicit $exec :: (store (s32) into stack + 120, align 8, addrspace 5)
1724  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY63]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 124, 0, 0, implicit $exec :: (store (s32) into stack + 124, addrspace 5)
1725  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY64]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 128, 0, 0, implicit $exec :: (store (s32) into stack + 128, align 16, addrspace 5)
1726  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY65]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 132, 0, 0, implicit $exec :: (store (s32) into stack + 132, addrspace 5)
1727  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY66]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 136, 0, 0, implicit $exec :: (store (s32) into stack + 136, align 8, addrspace 5)
1728  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY67]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 140, 0, 0, implicit $exec :: (store (s32) into stack + 140, addrspace 5)
1729  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY68]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 144, 0, 0, implicit $exec :: (store (s32) into stack + 144, align 16, addrspace 5)
1730  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY69]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 148, 0, 0, implicit $exec :: (store (s32) into stack + 148, addrspace 5)
1731  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY70]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 152, 0, 0, implicit $exec :: (store (s32) into stack + 152, align 8, addrspace 5)
1732  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY71]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 156, 0, 0, implicit $exec :: (store (s32) into stack + 156, addrspace 5)
1733  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY72]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 160, 0, 0, implicit $exec :: (store (s32) into stack + 160, align 16, addrspace 5)
1734  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY73]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 164, 0, 0, implicit $exec :: (store (s32) into stack + 164, addrspace 5)
1735  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY74]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 168, 0, 0, implicit $exec :: (store (s32) into stack + 168, align 8, addrspace 5)
1736  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY75]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 172, 0, 0, implicit $exec :: (store (s32) into stack + 172, addrspace 5)
1737  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY76]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 176, 0, 0, implicit $exec :: (store (s32) into stack + 176, align 16, addrspace 5)
1738  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY77]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 180, 0, 0, implicit $exec :: (store (s32) into stack + 180, addrspace 5)
1739  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY78]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 184, 0, 0, implicit $exec :: (store (s32) into stack + 184, align 8, addrspace 5)
1740  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY79]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 188, 0, 0, implicit $exec :: (store (s32) into stack + 188, addrspace 5)
1741  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY80]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 192, 0, 0, implicit $exec :: (store (s32) into stack + 192, align 16, addrspace 5)
1742  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY81]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 196, 0, 0, implicit $exec :: (store (s32) into stack + 196, addrspace 5)
1743  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY82]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 200, 0, 0, implicit $exec :: (store (s32) into stack + 200, align 8, addrspace 5)
1744  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY83]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 204, 0, 0, implicit $exec :: (store (s32) into stack + 204, addrspace 5)
1745  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY84]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 208, 0, 0, implicit $exec :: (store (s32) into stack + 208, align 16, addrspace 5)
1746  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY85]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 212, 0, 0, implicit $exec :: (store (s32) into stack + 212, addrspace 5)
1747  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY86]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 216, 0, 0, implicit $exec :: (store (s32) into stack + 216, align 8, addrspace 5)
1748  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY87]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 220, 0, 0, implicit $exec :: (store (s32) into stack + 220, addrspace 5)
1749  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY88]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 224, 0, 0, implicit $exec :: (store (s32) into stack + 224, align 16, addrspace 5)
1750  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY89]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 228, 0, 0, implicit $exec :: (store (s32) into stack + 228, addrspace 5)
1751  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY90]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 232, 0, 0, implicit $exec :: (store (s32) into stack + 232, align 8, addrspace 5)
1752  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY91]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 236, 0, 0, implicit $exec :: (store (s32) into stack + 236, addrspace 5)
1753  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY92]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 240, 0, 0, implicit $exec :: (store (s32) into stack + 240, align 16, addrspace 5)
1754  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY93]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 244, 0, 0, implicit $exec :: (store (s32) into stack + 244, addrspace 5)
1755  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY94]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 248, 0, 0, implicit $exec :: (store (s32) into stack + 248, align 8, addrspace 5)
1756  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY95]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 252, 0, 0, implicit $exec :: (store (s32) into stack + 252, addrspace 5)
1757  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY96]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 256, 0, 0, implicit $exec :: (store (s32) into stack + 256, align 16, addrspace 5)
1758  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY97]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 260, 0, 0, implicit $exec :: (store (s32) into stack + 260, addrspace 5)
1759  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY98]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 264, 0, 0, implicit $exec :: (store (s32) into stack + 264, align 8, addrspace 5)
1760  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY99]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 268, 0, 0, implicit $exec :: (store (s32) into stack + 268, addrspace 5)
1761  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY100]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 272, 0, 0, implicit $exec :: (store (s32) into stack + 272, align 16, addrspace 5)
1762  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY101]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 276, 0, 0, implicit $exec :: (store (s32) into stack + 276, addrspace 5)
1763  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY102]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 280, 0, 0, implicit $exec :: (store (s32) into stack + 280, align 8, addrspace 5)
1764  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY103]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 284, 0, 0, implicit $exec :: (store (s32) into stack + 284, addrspace 5)
1765  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY104]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 288, 0, 0, implicit $exec :: (store (s32) into stack + 288, align 16, addrspace 5)
1766  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY105]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 292, 0, 0, implicit $exec :: (store (s32) into stack + 292, addrspace 5)
1767  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY106]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 296, 0, 0, implicit $exec :: (store (s32) into stack + 296, align 8, addrspace 5)
1768  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY107]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 300, 0, 0, implicit $exec :: (store (s32) into stack + 300, addrspace 5)
1769  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY108]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 304, 0, 0, implicit $exec :: (store (s32) into stack + 304, align 16, addrspace 5)
1770  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY109]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 308, 0, 0, implicit $exec :: (store (s32) into stack + 308, addrspace 5)
1771  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY110]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 312, 0, 0, implicit $exec :: (store (s32) into stack + 312, align 8, addrspace 5)
1772  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY111]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 316, 0, 0, implicit $exec :: (store (s32) into stack + 316, addrspace 5)
1773  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY112]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 320, 0, 0, implicit $exec :: (store (s32) into stack + 320, align 16, addrspace 5)
1774  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY113]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 324, 0, 0, implicit $exec :: (store (s32) into stack + 324, addrspace 5)
1775  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY114]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 328, 0, 0, implicit $exec :: (store (s32) into stack + 328, align 8, addrspace 5)
1776  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY115]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 332, 0, 0, implicit $exec :: (store (s32) into stack + 332, addrspace 5)
1777  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY116]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 336, 0, 0, implicit $exec :: (store (s32) into stack + 336, align 16, addrspace 5)
1778  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY117]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 340, 0, 0, implicit $exec :: (store (s32) into stack + 340, addrspace 5)
1779  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY118]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 344, 0, 0, implicit $exec :: (store (s32) into stack + 344, align 8, addrspace 5)
1780  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY119]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 348, 0, 0, implicit $exec :: (store (s32) into stack + 348, addrspace 5)
1781  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY120]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 352, 0, 0, implicit $exec :: (store (s32) into stack + 352, align 16, addrspace 5)
1782  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY121]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 356, 0, 0, implicit $exec :: (store (s32) into stack + 356, addrspace 5)
1783  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY122]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 360, 0, 0, implicit $exec :: (store (s32) into stack + 360, align 8, addrspace 5)
1784  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY123]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 364, 0, 0, implicit $exec :: (store (s32) into stack + 364, addrspace 5)
1785  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY124]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 368, 0, 0, implicit $exec :: (store (s32) into stack + 368, align 16, addrspace 5)
1786  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY125]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 372, 0, 0, implicit $exec :: (store (s32) into stack + 372, addrspace 5)
1787  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY126]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 376, 0, 0, implicit $exec :: (store (s32) into stack + 376, align 8, addrspace 5)
1788  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY127]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 380, 0, 0, implicit $exec :: (store (s32) into stack + 380, addrspace 5)
1789  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY128]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 384, 0, 0, implicit $exec :: (store (s32) into stack + 384, align 16, addrspace 5)
1790  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY129]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 388, 0, 0, implicit $exec :: (store (s32) into stack + 388, addrspace 5)
1791  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY130]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 392, 0, 0, implicit $exec :: (store (s32) into stack + 392, align 8, addrspace 5)
1792  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY131]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 396, 0, 0, implicit $exec :: (store (s32) into stack + 396, addrspace 5)
1793  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY132]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 400, 0, 0, implicit $exec :: (store (s32) into stack + 400, align 16, addrspace 5)
1794  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY133]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 404, 0, 0, implicit $exec :: (store (s32) into stack + 404, addrspace 5)
1795  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY134]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 408, 0, 0, implicit $exec :: (store (s32) into stack + 408, align 8, addrspace 5)
1796  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY135]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 412, 0, 0, implicit $exec :: (store (s32) into stack + 412, addrspace 5)
1797  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY136]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 416, 0, 0, implicit $exec :: (store (s32) into stack + 416, align 16, addrspace 5)
1798  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY137]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 420, 0, 0, implicit $exec :: (store (s32) into stack + 420, addrspace 5)
1799  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY138]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 424, 0, 0, implicit $exec :: (store (s32) into stack + 424, align 8, addrspace 5)
1800  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY139]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 428, 0, 0, implicit $exec :: (store (s32) into stack + 428, addrspace 5)
1801  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY140]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 432, 0, 0, implicit $exec :: (store (s32) into stack + 432, align 16, addrspace 5)
1802  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY141]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 436, 0, 0, implicit $exec :: (store (s32) into stack + 436, addrspace 5)
1803  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY142]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 440, 0, 0, implicit $exec :: (store (s32) into stack + 440, align 8, addrspace 5)
1804  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY143]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 444, 0, 0, implicit $exec :: (store (s32) into stack + 444, addrspace 5)
1805  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY144]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 448, 0, 0, implicit $exec :: (store (s32) into stack + 448, align 16, addrspace 5)
1806  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY145]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 452, 0, 0, implicit $exec :: (store (s32) into stack + 452, addrspace 5)
1807  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY146]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 456, 0, 0, implicit $exec :: (store (s32) into stack + 456, align 8, addrspace 5)
1808  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY147]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 460, 0, 0, implicit $exec :: (store (s32) into stack + 460, addrspace 5)
1809  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY148]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 464, 0, 0, implicit $exec :: (store (s32) into stack + 464, align 16, addrspace 5)
1810  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY149]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 468, 0, 0, implicit $exec :: (store (s32) into stack + 468, addrspace 5)
1811  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY150]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 472, 0, 0, implicit $exec :: (store (s32) into stack + 472, align 8, addrspace 5)
1812  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY151]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 476, 0, 0, implicit $exec :: (store (s32) into stack + 476, addrspace 5)
1813  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY152]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 480, 0, 0, implicit $exec :: (store (s32) into stack + 480, align 16, addrspace 5)
1814  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY153]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 484, 0, 0, implicit $exec :: (store (s32) into stack + 484, addrspace 5)
1815  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY154]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 488, 0, 0, implicit $exec :: (store (s32) into stack + 488, align 8, addrspace 5)
1816  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY155]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 492, 0, 0, implicit $exec :: (store (s32) into stack + 492, addrspace 5)
1817  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY156]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 496, 0, 0, implicit $exec :: (store (s32) into stack + 496, align 16, addrspace 5)
1818  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY157]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 500, 0, 0, implicit $exec :: (store (s32) into stack + 500, addrspace 5)
1819  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY158]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 504, 0, 0, implicit $exec :: (store (s32) into stack + 504, align 8, addrspace 5)
1820  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY159]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 508, 0, 0, implicit $exec :: (store (s32) into stack + 508, addrspace 5)
1821  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY160]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 512, 0, 0, implicit $exec :: (store (s32) into stack + 512, align 16, addrspace 5)
1822  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY161]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 516, 0, 0, implicit $exec :: (store (s32) into stack + 516, addrspace 5)
1823  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY162]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 520, 0, 0, implicit $exec :: (store (s32) into stack + 520, align 8, addrspace 5)
1824  ; GISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY163]], $sgpr48_sgpr49_sgpr50_sgpr51, $sgpr32, 524, 0, 0, implicit $exec :: (store (s32) into stack + 524, addrspace 5)
1825  ; GISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY]]
1826  ; GISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY1]]
1827  ; GISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY2]]
1828  ; GISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY3]]
1829  ; GISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY4]]
1830  ; GISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY5]]
1831  ; GISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY6]]
1832  ; GISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY7]]
1833  ; GISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY8]]
1834  ; GISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY9]]
1835  ; GISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY10]]
1836  ; GISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY11]]
1837  ; GISEL-GFX10-NEXT:   $vgpr12 = COPY [[COPY12]]
1838  ; GISEL-GFX10-NEXT:   $vgpr13 = COPY [[COPY13]]
1839  ; GISEL-GFX10-NEXT:   $vgpr14 = COPY [[COPY14]]
1840  ; GISEL-GFX10-NEXT:   $vgpr15 = COPY [[COPY15]]
1841  ; GISEL-GFX10-NEXT:   $vgpr16 = COPY [[COPY16]]
1842  ; GISEL-GFX10-NEXT:   $vgpr17 = COPY [[COPY17]]
1843  ; GISEL-GFX10-NEXT:   $vgpr18 = COPY [[COPY18]]
1844  ; GISEL-GFX10-NEXT:   $vgpr19 = COPY [[COPY19]]
1845  ; GISEL-GFX10-NEXT:   $vgpr20 = COPY [[COPY20]]
1846  ; GISEL-GFX10-NEXT:   $vgpr21 = COPY [[COPY21]]
1847  ; GISEL-GFX10-NEXT:   $vgpr22 = COPY [[COPY22]]
1848  ; GISEL-GFX10-NEXT:   $vgpr23 = COPY [[COPY23]]
1849  ; GISEL-GFX10-NEXT:   $vgpr24 = COPY [[COPY24]]
1850  ; GISEL-GFX10-NEXT:   $vgpr25 = COPY [[COPY25]]
1851  ; GISEL-GFX10-NEXT:   $vgpr26 = COPY [[COPY26]]
1852  ; GISEL-GFX10-NEXT:   $vgpr27 = COPY [[COPY27]]
1853  ; GISEL-GFX10-NEXT:   $vgpr28 = COPY [[COPY28]]
1854  ; GISEL-GFX10-NEXT:   $vgpr29 = COPY [[COPY29]]
1855  ; GISEL-GFX10-NEXT:   $vgpr30 = COPY [[COPY30]]
1856  ; GISEL-GFX10-NEXT:   $vgpr31 = COPY [[COPY31]]
1857  ; GISEL-GFX10-NEXT:   [[COPY168:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
1858  ; GISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY168]]
1859  ; GISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def $scc
1860  ; GISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (p0) from got, addrspace 4)
1861  ; GISEL-GFX10-NEXT:   $sgpr30_sgpr31 = noconvergent SI_CALL [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15, implicit $vgpr16, implicit $vgpr17, implicit $vgpr18, implicit $vgpr19, implicit $vgpr20, implicit $vgpr21, implicit $vgpr22, implicit $vgpr23, implicit $vgpr24, implicit $vgpr25, implicit $vgpr26, implicit $vgpr27, implicit $vgpr28, implicit $vgpr29, implicit $vgpr30, implicit $vgpr31, implicit $sgpr0_sgpr1_sgpr2_sgpr3
1862  ; GISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 528, implicit-def $scc, implicit-def $sgpr32, implicit $sgpr32
1863  ; GISEL-GFX10-NEXT:   S_ENDPGM 0
1864  ;
1865  ; DAGISEL-GFX11-LABEL: name: amdgpu_cs_chain_many_regs
1866  ; DAGISEL-GFX11: bb.0 (%ir-block.0):
1867  ; DAGISEL-GFX11-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $sgpr8, $sgpr9, $sgpr10, $sgpr11, $sgpr12, $sgpr13, $sgpr14, $sgpr15, $sgpr16, $sgpr17, $sgpr18, $sgpr19, $sgpr20, $sgpr21, $sgpr22, $sgpr23, $sgpr24, $sgpr25, $sgpr26, $sgpr27, $sgpr28, $sgpr29, $sgpr30, $sgpr31, $sgpr32, $sgpr33, $sgpr34, $sgpr35, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr40, $vgpr41, $vgpr42, $vgpr43, $vgpr44, $vgpr45, $vgpr46, $vgpr47, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr56, $vgpr57, $vgpr58, $vgpr59, $vgpr60, $vgpr61, $vgpr62, $vgpr63, $vgpr64, $vgpr65, $vgpr66, $vgpr67, $vgpr68, $vgpr69, $vgpr70, $vgpr71, $vgpr72, $vgpr73, $vgpr74, $vgpr75, $vgpr76, $vgpr77, $vgpr78, $vgpr79, $vgpr80, $vgpr81, $vgpr82, $vgpr83, $vgpr84, $vgpr85, $vgpr86, $vgpr87, $vgpr88, $vgpr89, $vgpr90, $vgpr91, $vgpr92, $vgpr93, $vgpr94, $vgpr95, $vgpr96, $vgpr97, $vgpr98, $vgpr99, $vgpr100, $vgpr101, $vgpr102, $vgpr103, $vgpr104, $vgpr105, $vgpr106, $vgpr107, $vgpr108, $vgpr109, $vgpr110, $vgpr111, $vgpr112, $vgpr113, $vgpr114, $vgpr115, $vgpr116, $vgpr117, $vgpr118, $vgpr119, $vgpr120, $vgpr121, $vgpr122, $vgpr123, $vgpr124, $vgpr125, $vgpr126, $vgpr127, $vgpr128, $vgpr129, $vgpr130, $vgpr131, $vgpr132, $vgpr133, $vgpr134, $vgpr135
1868  ; DAGISEL-GFX11-NEXT: {{  $}}
1869  ; DAGISEL-GFX11-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr135
1870  ; DAGISEL-GFX11-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr134
1871  ; DAGISEL-GFX11-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr133
1872  ; DAGISEL-GFX11-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr132
1873  ; DAGISEL-GFX11-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr131
1874  ; DAGISEL-GFX11-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr130
1875  ; DAGISEL-GFX11-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr129
1876  ; DAGISEL-GFX11-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr128
1877  ; DAGISEL-GFX11-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr127
1878  ; DAGISEL-GFX11-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr126
1879  ; DAGISEL-GFX11-NEXT:   [[COPY10:%[0-9]+]]:vgpr_32 = COPY $vgpr125
1880  ; DAGISEL-GFX11-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr124
1881  ; DAGISEL-GFX11-NEXT:   [[COPY12:%[0-9]+]]:vgpr_32 = COPY $vgpr123
1882  ; DAGISEL-GFX11-NEXT:   [[COPY13:%[0-9]+]]:vgpr_32 = COPY $vgpr122
1883  ; DAGISEL-GFX11-NEXT:   [[COPY14:%[0-9]+]]:vgpr_32 = COPY $vgpr121
1884  ; DAGISEL-GFX11-NEXT:   [[COPY15:%[0-9]+]]:vgpr_32 = COPY $vgpr120
1885  ; DAGISEL-GFX11-NEXT:   [[COPY16:%[0-9]+]]:vgpr_32 = COPY $vgpr119
1886  ; DAGISEL-GFX11-NEXT:   [[COPY17:%[0-9]+]]:vgpr_32 = COPY $vgpr118
1887  ; DAGISEL-GFX11-NEXT:   [[COPY18:%[0-9]+]]:vgpr_32 = COPY $vgpr117
1888  ; DAGISEL-GFX11-NEXT:   [[COPY19:%[0-9]+]]:vgpr_32 = COPY $vgpr116
1889  ; DAGISEL-GFX11-NEXT:   [[COPY20:%[0-9]+]]:vgpr_32 = COPY $vgpr115
1890  ; DAGISEL-GFX11-NEXT:   [[COPY21:%[0-9]+]]:vgpr_32 = COPY $vgpr114
1891  ; DAGISEL-GFX11-NEXT:   [[COPY22:%[0-9]+]]:vgpr_32 = COPY $vgpr113
1892  ; DAGISEL-GFX11-NEXT:   [[COPY23:%[0-9]+]]:vgpr_32 = COPY $vgpr112
1893  ; DAGISEL-GFX11-NEXT:   [[COPY24:%[0-9]+]]:vgpr_32 = COPY $vgpr111
1894  ; DAGISEL-GFX11-NEXT:   [[COPY25:%[0-9]+]]:vgpr_32 = COPY $vgpr110
1895  ; DAGISEL-GFX11-NEXT:   [[COPY26:%[0-9]+]]:vgpr_32 = COPY $vgpr109
1896  ; DAGISEL-GFX11-NEXT:   [[COPY27:%[0-9]+]]:vgpr_32 = COPY $vgpr108
1897  ; DAGISEL-GFX11-NEXT:   [[COPY28:%[0-9]+]]:vgpr_32 = COPY $vgpr107
1898  ; DAGISEL-GFX11-NEXT:   [[COPY29:%[0-9]+]]:vgpr_32 = COPY $vgpr106
1899  ; DAGISEL-GFX11-NEXT:   [[COPY30:%[0-9]+]]:vgpr_32 = COPY $vgpr105
1900  ; DAGISEL-GFX11-NEXT:   [[COPY31:%[0-9]+]]:vgpr_32 = COPY $vgpr104
1901  ; DAGISEL-GFX11-NEXT:   [[COPY32:%[0-9]+]]:vgpr_32 = COPY $vgpr103
1902  ; DAGISEL-GFX11-NEXT:   [[COPY33:%[0-9]+]]:vgpr_32 = COPY $vgpr102
1903  ; DAGISEL-GFX11-NEXT:   [[COPY34:%[0-9]+]]:vgpr_32 = COPY $vgpr101
1904  ; DAGISEL-GFX11-NEXT:   [[COPY35:%[0-9]+]]:vgpr_32 = COPY $vgpr100
1905  ; DAGISEL-GFX11-NEXT:   [[COPY36:%[0-9]+]]:vgpr_32 = COPY $vgpr99
1906  ; DAGISEL-GFX11-NEXT:   [[COPY37:%[0-9]+]]:vgpr_32 = COPY $vgpr98
1907  ; DAGISEL-GFX11-NEXT:   [[COPY38:%[0-9]+]]:vgpr_32 = COPY $vgpr97
1908  ; DAGISEL-GFX11-NEXT:   [[COPY39:%[0-9]+]]:vgpr_32 = COPY $vgpr96
1909  ; DAGISEL-GFX11-NEXT:   [[COPY40:%[0-9]+]]:vgpr_32 = COPY $vgpr95
1910  ; DAGISEL-GFX11-NEXT:   [[COPY41:%[0-9]+]]:vgpr_32 = COPY $vgpr94
1911  ; DAGISEL-GFX11-NEXT:   [[COPY42:%[0-9]+]]:vgpr_32 = COPY $vgpr93
1912  ; DAGISEL-GFX11-NEXT:   [[COPY43:%[0-9]+]]:vgpr_32 = COPY $vgpr92
1913  ; DAGISEL-GFX11-NEXT:   [[COPY44:%[0-9]+]]:vgpr_32 = COPY $vgpr91
1914  ; DAGISEL-GFX11-NEXT:   [[COPY45:%[0-9]+]]:vgpr_32 = COPY $vgpr90
1915  ; DAGISEL-GFX11-NEXT:   [[COPY46:%[0-9]+]]:vgpr_32 = COPY $vgpr89
1916  ; DAGISEL-GFX11-NEXT:   [[COPY47:%[0-9]+]]:vgpr_32 = COPY $vgpr88
1917  ; DAGISEL-GFX11-NEXT:   [[COPY48:%[0-9]+]]:vgpr_32 = COPY $vgpr87
1918  ; DAGISEL-GFX11-NEXT:   [[COPY49:%[0-9]+]]:vgpr_32 = COPY $vgpr86
1919  ; DAGISEL-GFX11-NEXT:   [[COPY50:%[0-9]+]]:vgpr_32 = COPY $vgpr85
1920  ; DAGISEL-GFX11-NEXT:   [[COPY51:%[0-9]+]]:vgpr_32 = COPY $vgpr84
1921  ; DAGISEL-GFX11-NEXT:   [[COPY52:%[0-9]+]]:vgpr_32 = COPY $vgpr83
1922  ; DAGISEL-GFX11-NEXT:   [[COPY53:%[0-9]+]]:vgpr_32 = COPY $vgpr82
1923  ; DAGISEL-GFX11-NEXT:   [[COPY54:%[0-9]+]]:vgpr_32 = COPY $vgpr81
1924  ; DAGISEL-GFX11-NEXT:   [[COPY55:%[0-9]+]]:vgpr_32 = COPY $vgpr80
1925  ; DAGISEL-GFX11-NEXT:   [[COPY56:%[0-9]+]]:vgpr_32 = COPY $vgpr79
1926  ; DAGISEL-GFX11-NEXT:   [[COPY57:%[0-9]+]]:vgpr_32 = COPY $vgpr78
1927  ; DAGISEL-GFX11-NEXT:   [[COPY58:%[0-9]+]]:vgpr_32 = COPY $vgpr77
1928  ; DAGISEL-GFX11-NEXT:   [[COPY59:%[0-9]+]]:vgpr_32 = COPY $vgpr76
1929  ; DAGISEL-GFX11-NEXT:   [[COPY60:%[0-9]+]]:vgpr_32 = COPY $vgpr75
1930  ; DAGISEL-GFX11-NEXT:   [[COPY61:%[0-9]+]]:vgpr_32 = COPY $vgpr74
1931  ; DAGISEL-GFX11-NEXT:   [[COPY62:%[0-9]+]]:vgpr_32 = COPY $vgpr73
1932  ; DAGISEL-GFX11-NEXT:   [[COPY63:%[0-9]+]]:vgpr_32 = COPY $vgpr72
1933  ; DAGISEL-GFX11-NEXT:   [[COPY64:%[0-9]+]]:vgpr_32 = COPY $vgpr71
1934  ; DAGISEL-GFX11-NEXT:   [[COPY65:%[0-9]+]]:vgpr_32 = COPY $vgpr70
1935  ; DAGISEL-GFX11-NEXT:   [[COPY66:%[0-9]+]]:vgpr_32 = COPY $vgpr69
1936  ; DAGISEL-GFX11-NEXT:   [[COPY67:%[0-9]+]]:vgpr_32 = COPY $vgpr68
1937  ; DAGISEL-GFX11-NEXT:   [[COPY68:%[0-9]+]]:vgpr_32 = COPY $vgpr67
1938  ; DAGISEL-GFX11-NEXT:   [[COPY69:%[0-9]+]]:vgpr_32 = COPY $vgpr66
1939  ; DAGISEL-GFX11-NEXT:   [[COPY70:%[0-9]+]]:vgpr_32 = COPY $vgpr65
1940  ; DAGISEL-GFX11-NEXT:   [[COPY71:%[0-9]+]]:vgpr_32 = COPY $vgpr64
1941  ; DAGISEL-GFX11-NEXT:   [[COPY72:%[0-9]+]]:vgpr_32 = COPY $vgpr63
1942  ; DAGISEL-GFX11-NEXT:   [[COPY73:%[0-9]+]]:vgpr_32 = COPY $vgpr62
1943  ; DAGISEL-GFX11-NEXT:   [[COPY74:%[0-9]+]]:vgpr_32 = COPY $vgpr61
1944  ; DAGISEL-GFX11-NEXT:   [[COPY75:%[0-9]+]]:vgpr_32 = COPY $vgpr60
1945  ; DAGISEL-GFX11-NEXT:   [[COPY76:%[0-9]+]]:vgpr_32 = COPY $vgpr59
1946  ; DAGISEL-GFX11-NEXT:   [[COPY77:%[0-9]+]]:vgpr_32 = COPY $vgpr58
1947  ; DAGISEL-GFX11-NEXT:   [[COPY78:%[0-9]+]]:vgpr_32 = COPY $vgpr57
1948  ; DAGISEL-GFX11-NEXT:   [[COPY79:%[0-9]+]]:vgpr_32 = COPY $vgpr56
1949  ; DAGISEL-GFX11-NEXT:   [[COPY80:%[0-9]+]]:vgpr_32 = COPY $vgpr55
1950  ; DAGISEL-GFX11-NEXT:   [[COPY81:%[0-9]+]]:vgpr_32 = COPY $vgpr54
1951  ; DAGISEL-GFX11-NEXT:   [[COPY82:%[0-9]+]]:vgpr_32 = COPY $vgpr53
1952  ; DAGISEL-GFX11-NEXT:   [[COPY83:%[0-9]+]]:vgpr_32 = COPY $vgpr52
1953  ; DAGISEL-GFX11-NEXT:   [[COPY84:%[0-9]+]]:vgpr_32 = COPY $vgpr51
1954  ; DAGISEL-GFX11-NEXT:   [[COPY85:%[0-9]+]]:vgpr_32 = COPY $vgpr50
1955  ; DAGISEL-GFX11-NEXT:   [[COPY86:%[0-9]+]]:vgpr_32 = COPY $vgpr49
1956  ; DAGISEL-GFX11-NEXT:   [[COPY87:%[0-9]+]]:vgpr_32 = COPY $vgpr48
1957  ; DAGISEL-GFX11-NEXT:   [[COPY88:%[0-9]+]]:vgpr_32 = COPY $vgpr47
1958  ; DAGISEL-GFX11-NEXT:   [[COPY89:%[0-9]+]]:vgpr_32 = COPY $vgpr46
1959  ; DAGISEL-GFX11-NEXT:   [[COPY90:%[0-9]+]]:vgpr_32 = COPY $vgpr45
1960  ; DAGISEL-GFX11-NEXT:   [[COPY91:%[0-9]+]]:vgpr_32 = COPY $vgpr44
1961  ; DAGISEL-GFX11-NEXT:   [[COPY92:%[0-9]+]]:vgpr_32 = COPY $vgpr43
1962  ; DAGISEL-GFX11-NEXT:   [[COPY93:%[0-9]+]]:vgpr_32 = COPY $vgpr42
1963  ; DAGISEL-GFX11-NEXT:   [[COPY94:%[0-9]+]]:vgpr_32 = COPY $vgpr41
1964  ; DAGISEL-GFX11-NEXT:   [[COPY95:%[0-9]+]]:vgpr_32 = COPY $vgpr40
1965  ; DAGISEL-GFX11-NEXT:   [[COPY96:%[0-9]+]]:vgpr_32 = COPY $vgpr39
1966  ; DAGISEL-GFX11-NEXT:   [[COPY97:%[0-9]+]]:vgpr_32 = COPY $vgpr38
1967  ; DAGISEL-GFX11-NEXT:   [[COPY98:%[0-9]+]]:vgpr_32 = COPY $vgpr37
1968  ; DAGISEL-GFX11-NEXT:   [[COPY99:%[0-9]+]]:vgpr_32 = COPY $vgpr36
1969  ; DAGISEL-GFX11-NEXT:   [[COPY100:%[0-9]+]]:vgpr_32 = COPY $vgpr35
1970  ; DAGISEL-GFX11-NEXT:   [[COPY101:%[0-9]+]]:vgpr_32 = COPY $vgpr34
1971  ; DAGISEL-GFX11-NEXT:   [[COPY102:%[0-9]+]]:vgpr_32 = COPY $vgpr33
1972  ; DAGISEL-GFX11-NEXT:   [[COPY103:%[0-9]+]]:vgpr_32 = COPY $vgpr32
1973  ; DAGISEL-GFX11-NEXT:   [[COPY104:%[0-9]+]]:vgpr_32 = COPY $vgpr31
1974  ; DAGISEL-GFX11-NEXT:   [[COPY105:%[0-9]+]]:vgpr_32 = COPY $vgpr30
1975  ; DAGISEL-GFX11-NEXT:   [[COPY106:%[0-9]+]]:vgpr_32 = COPY $vgpr29
1976  ; DAGISEL-GFX11-NEXT:   [[COPY107:%[0-9]+]]:vgpr_32 = COPY $vgpr28
1977  ; DAGISEL-GFX11-NEXT:   [[COPY108:%[0-9]+]]:vgpr_32 = COPY $vgpr27
1978  ; DAGISEL-GFX11-NEXT:   [[COPY109:%[0-9]+]]:vgpr_32 = COPY $vgpr26
1979  ; DAGISEL-GFX11-NEXT:   [[COPY110:%[0-9]+]]:vgpr_32 = COPY $vgpr25
1980  ; DAGISEL-GFX11-NEXT:   [[COPY111:%[0-9]+]]:vgpr_32 = COPY $vgpr24
1981  ; DAGISEL-GFX11-NEXT:   [[COPY112:%[0-9]+]]:vgpr_32 = COPY $vgpr23
1982  ; DAGISEL-GFX11-NEXT:   [[COPY113:%[0-9]+]]:vgpr_32 = COPY $vgpr22
1983  ; DAGISEL-GFX11-NEXT:   [[COPY114:%[0-9]+]]:vgpr_32 = COPY $vgpr21
1984  ; DAGISEL-GFX11-NEXT:   [[COPY115:%[0-9]+]]:vgpr_32 = COPY $vgpr20
1985  ; DAGISEL-GFX11-NEXT:   [[COPY116:%[0-9]+]]:vgpr_32 = COPY $vgpr19
1986  ; DAGISEL-GFX11-NEXT:   [[COPY117:%[0-9]+]]:vgpr_32 = COPY $vgpr18
1987  ; DAGISEL-GFX11-NEXT:   [[COPY118:%[0-9]+]]:vgpr_32 = COPY $vgpr17
1988  ; DAGISEL-GFX11-NEXT:   [[COPY119:%[0-9]+]]:vgpr_32 = COPY $vgpr16
1989  ; DAGISEL-GFX11-NEXT:   [[COPY120:%[0-9]+]]:vgpr_32 = COPY $vgpr15
1990  ; DAGISEL-GFX11-NEXT:   [[COPY121:%[0-9]+]]:vgpr_32 = COPY $vgpr14
1991  ; DAGISEL-GFX11-NEXT:   [[COPY122:%[0-9]+]]:vgpr_32 = COPY $vgpr13
1992  ; DAGISEL-GFX11-NEXT:   [[COPY123:%[0-9]+]]:vgpr_32 = COPY $vgpr12
1993  ; DAGISEL-GFX11-NEXT:   [[COPY124:%[0-9]+]]:vgpr_32 = COPY $vgpr11
1994  ; DAGISEL-GFX11-NEXT:   [[COPY125:%[0-9]+]]:vgpr_32 = COPY $vgpr10
1995  ; DAGISEL-GFX11-NEXT:   [[COPY126:%[0-9]+]]:vgpr_32 = COPY $vgpr9
1996  ; DAGISEL-GFX11-NEXT:   [[COPY127:%[0-9]+]]:vgpr_32 = COPY $vgpr8
1997  ; DAGISEL-GFX11-NEXT:   [[COPY128:%[0-9]+]]:sgpr_32 = COPY $sgpr35
1998  ; DAGISEL-GFX11-NEXT:   [[COPY129:%[0-9]+]]:sgpr_32 = COPY $sgpr34
1999  ; DAGISEL-GFX11-NEXT:   [[COPY130:%[0-9]+]]:sgpr_32 = COPY $sgpr33
2000  ; DAGISEL-GFX11-NEXT:   [[COPY131:%[0-9]+]]:sgpr_32 = COPY $sgpr32
2001  ; DAGISEL-GFX11-NEXT:   [[COPY132:%[0-9]+]]:sgpr_32 = COPY $sgpr31
2002  ; DAGISEL-GFX11-NEXT:   [[COPY133:%[0-9]+]]:sgpr_32 = COPY $sgpr30
2003  ; DAGISEL-GFX11-NEXT:   [[COPY134:%[0-9]+]]:sgpr_32 = COPY $sgpr29
2004  ; DAGISEL-GFX11-NEXT:   [[COPY135:%[0-9]+]]:sgpr_32 = COPY $sgpr28
2005  ; DAGISEL-GFX11-NEXT:   [[COPY136:%[0-9]+]]:sgpr_32 = COPY $sgpr27
2006  ; DAGISEL-GFX11-NEXT:   [[COPY137:%[0-9]+]]:sgpr_32 = COPY $sgpr26
2007  ; DAGISEL-GFX11-NEXT:   [[COPY138:%[0-9]+]]:sgpr_32 = COPY $sgpr25
2008  ; DAGISEL-GFX11-NEXT:   [[COPY139:%[0-9]+]]:sgpr_32 = COPY $sgpr24
2009  ; DAGISEL-GFX11-NEXT:   [[COPY140:%[0-9]+]]:sgpr_32 = COPY $sgpr23
2010  ; DAGISEL-GFX11-NEXT:   [[COPY141:%[0-9]+]]:sgpr_32 = COPY $sgpr22
2011  ; DAGISEL-GFX11-NEXT:   [[COPY142:%[0-9]+]]:sgpr_32 = COPY $sgpr21
2012  ; DAGISEL-GFX11-NEXT:   [[COPY143:%[0-9]+]]:sgpr_32 = COPY $sgpr20
2013  ; DAGISEL-GFX11-NEXT:   [[COPY144:%[0-9]+]]:sgpr_32 = COPY $sgpr19
2014  ; DAGISEL-GFX11-NEXT:   [[COPY145:%[0-9]+]]:sgpr_32 = COPY $sgpr18
2015  ; DAGISEL-GFX11-NEXT:   [[COPY146:%[0-9]+]]:sgpr_32 = COPY $sgpr17
2016  ; DAGISEL-GFX11-NEXT:   [[COPY147:%[0-9]+]]:sgpr_32 = COPY $sgpr16
2017  ; DAGISEL-GFX11-NEXT:   [[COPY148:%[0-9]+]]:sgpr_32 = COPY $sgpr15
2018  ; DAGISEL-GFX11-NEXT:   [[COPY149:%[0-9]+]]:sgpr_32 = COPY $sgpr14
2019  ; DAGISEL-GFX11-NEXT:   [[COPY150:%[0-9]+]]:sgpr_32 = COPY $sgpr13
2020  ; DAGISEL-GFX11-NEXT:   [[COPY151:%[0-9]+]]:sgpr_32 = COPY $sgpr12
2021  ; DAGISEL-GFX11-NEXT:   [[COPY152:%[0-9]+]]:sgpr_32 = COPY $sgpr11
2022  ; DAGISEL-GFX11-NEXT:   [[COPY153:%[0-9]+]]:sgpr_32 = COPY $sgpr10
2023  ; DAGISEL-GFX11-NEXT:   [[COPY154:%[0-9]+]]:sgpr_32 = COPY $sgpr9
2024  ; DAGISEL-GFX11-NEXT:   [[COPY155:%[0-9]+]]:sgpr_32 = COPY $sgpr8
2025  ; DAGISEL-GFX11-NEXT:   [[COPY156:%[0-9]+]]:sgpr_32 = COPY $sgpr7
2026  ; DAGISEL-GFX11-NEXT:   [[COPY157:%[0-9]+]]:sgpr_32 = COPY $sgpr6
2027  ; DAGISEL-GFX11-NEXT:   [[COPY158:%[0-9]+]]:sgpr_32 = COPY $sgpr5
2028  ; DAGISEL-GFX11-NEXT:   [[COPY159:%[0-9]+]]:sgpr_32 = COPY $sgpr4
2029  ; DAGISEL-GFX11-NEXT:   [[COPY160:%[0-9]+]]:sgpr_32 = COPY $sgpr3
2030  ; DAGISEL-GFX11-NEXT:   [[COPY161:%[0-9]+]]:sgpr_32 = COPY $sgpr2
2031  ; DAGISEL-GFX11-NEXT:   [[COPY162:%[0-9]+]]:sgpr_32 = COPY $sgpr1
2032  ; DAGISEL-GFX11-NEXT:   [[COPY163:%[0-9]+]]:sgpr_32 = COPY $sgpr0
2033  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
2034  ; DAGISEL-GFX11-NEXT:   [[COPY164:%[0-9]+]]:sreg_32_xexec_hi = COPY $sgpr32
2035  ; DAGISEL-GFX11-NEXT:   [[COPY165:%[0-9]+]]:vgpr_32 = COPY [[COPY131]]
2036  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY165]], [[COPY164]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack, align 16, addrspace 5)
2037  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_:%[0-9]+]]:sreg_32 = S_MOV_B32 524
2038  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_]], implicit-def dead $scc
2039  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY]], killed [[S_ADD_I32_]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 524, addrspace 5)
2040  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_1:%[0-9]+]]:sreg_32 = S_MOV_B32 520
2041  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_1:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_1]], implicit-def dead $scc
2042  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY1]], killed [[S_ADD_I32_1]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 520, align 8, addrspace 5)
2043  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_2:%[0-9]+]]:sreg_32 = S_MOV_B32 516
2044  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_2:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_2]], implicit-def dead $scc
2045  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY2]], killed [[S_ADD_I32_2]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 516, addrspace 5)
2046  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_3:%[0-9]+]]:sreg_32 = S_MOV_B32 512
2047  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_3:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_3]], implicit-def dead $scc
2048  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY3]], killed [[S_ADD_I32_3]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 512, align 16, addrspace 5)
2049  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_4:%[0-9]+]]:sreg_32 = S_MOV_B32 508
2050  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_4:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_4]], implicit-def dead $scc
2051  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY4]], killed [[S_ADD_I32_4]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 508, addrspace 5)
2052  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_5:%[0-9]+]]:sreg_32 = S_MOV_B32 504
2053  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_5:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_5]], implicit-def dead $scc
2054  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY5]], killed [[S_ADD_I32_5]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 504, align 8, addrspace 5)
2055  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_6:%[0-9]+]]:sreg_32 = S_MOV_B32 500
2056  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_6:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_6]], implicit-def dead $scc
2057  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY6]], killed [[S_ADD_I32_6]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 500, addrspace 5)
2058  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_7:%[0-9]+]]:sreg_32 = S_MOV_B32 496
2059  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_7:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_7]], implicit-def dead $scc
2060  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY7]], killed [[S_ADD_I32_7]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 496, align 16, addrspace 5)
2061  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_8:%[0-9]+]]:sreg_32 = S_MOV_B32 492
2062  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_8:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_8]], implicit-def dead $scc
2063  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY8]], killed [[S_ADD_I32_8]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 492, addrspace 5)
2064  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_9:%[0-9]+]]:sreg_32 = S_MOV_B32 488
2065  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_9:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_9]], implicit-def dead $scc
2066  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY9]], killed [[S_ADD_I32_9]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 488, align 8, addrspace 5)
2067  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_10:%[0-9]+]]:sreg_32 = S_MOV_B32 484
2068  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_10:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_10]], implicit-def dead $scc
2069  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY10]], killed [[S_ADD_I32_10]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 484, addrspace 5)
2070  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_11:%[0-9]+]]:sreg_32 = S_MOV_B32 480
2071  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_11:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_11]], implicit-def dead $scc
2072  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY11]], killed [[S_ADD_I32_11]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 480, align 16, addrspace 5)
2073  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_12:%[0-9]+]]:sreg_32 = S_MOV_B32 476
2074  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_12:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_12]], implicit-def dead $scc
2075  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY12]], killed [[S_ADD_I32_12]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 476, addrspace 5)
2076  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_13:%[0-9]+]]:sreg_32 = S_MOV_B32 472
2077  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_13:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_13]], implicit-def dead $scc
2078  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY13]], killed [[S_ADD_I32_13]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 472, align 8, addrspace 5)
2079  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_14:%[0-9]+]]:sreg_32 = S_MOV_B32 468
2080  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_14:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_14]], implicit-def dead $scc
2081  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY14]], killed [[S_ADD_I32_14]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 468, addrspace 5)
2082  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_15:%[0-9]+]]:sreg_32 = S_MOV_B32 464
2083  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_15:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_15]], implicit-def dead $scc
2084  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY15]], killed [[S_ADD_I32_15]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 464, align 16, addrspace 5)
2085  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_16:%[0-9]+]]:sreg_32 = S_MOV_B32 460
2086  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_16:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_16]], implicit-def dead $scc
2087  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY16]], killed [[S_ADD_I32_16]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 460, addrspace 5)
2088  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_17:%[0-9]+]]:sreg_32 = S_MOV_B32 456
2089  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_17:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_17]], implicit-def dead $scc
2090  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY17]], killed [[S_ADD_I32_17]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 456, align 8, addrspace 5)
2091  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_18:%[0-9]+]]:sreg_32 = S_MOV_B32 452
2092  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_18:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_18]], implicit-def dead $scc
2093  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY18]], killed [[S_ADD_I32_18]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 452, addrspace 5)
2094  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_19:%[0-9]+]]:sreg_32 = S_MOV_B32 448
2095  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_19:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_19]], implicit-def dead $scc
2096  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY19]], killed [[S_ADD_I32_19]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 448, align 16, addrspace 5)
2097  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_20:%[0-9]+]]:sreg_32 = S_MOV_B32 444
2098  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_20:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_20]], implicit-def dead $scc
2099  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY20]], killed [[S_ADD_I32_20]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 444, addrspace 5)
2100  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_21:%[0-9]+]]:sreg_32 = S_MOV_B32 440
2101  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_21:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_21]], implicit-def dead $scc
2102  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY21]], killed [[S_ADD_I32_21]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 440, align 8, addrspace 5)
2103  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_22:%[0-9]+]]:sreg_32 = S_MOV_B32 436
2104  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_22:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_22]], implicit-def dead $scc
2105  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY22]], killed [[S_ADD_I32_22]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 436, addrspace 5)
2106  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_23:%[0-9]+]]:sreg_32 = S_MOV_B32 432
2107  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_23:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_23]], implicit-def dead $scc
2108  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY23]], killed [[S_ADD_I32_23]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 432, align 16, addrspace 5)
2109  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_24:%[0-9]+]]:sreg_32 = S_MOV_B32 428
2110  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_24:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_24]], implicit-def dead $scc
2111  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY24]], killed [[S_ADD_I32_24]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 428, addrspace 5)
2112  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_25:%[0-9]+]]:sreg_32 = S_MOV_B32 424
2113  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_25:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_25]], implicit-def dead $scc
2114  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY25]], killed [[S_ADD_I32_25]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 424, align 8, addrspace 5)
2115  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_26:%[0-9]+]]:sreg_32 = S_MOV_B32 420
2116  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_26:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_26]], implicit-def dead $scc
2117  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY26]], killed [[S_ADD_I32_26]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 420, addrspace 5)
2118  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_27:%[0-9]+]]:sreg_32 = S_MOV_B32 416
2119  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_27:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_27]], implicit-def dead $scc
2120  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY27]], killed [[S_ADD_I32_27]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 416, align 16, addrspace 5)
2121  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_28:%[0-9]+]]:sreg_32 = S_MOV_B32 412
2122  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_28:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_28]], implicit-def dead $scc
2123  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY28]], killed [[S_ADD_I32_28]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 412, addrspace 5)
2124  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_29:%[0-9]+]]:sreg_32 = S_MOV_B32 408
2125  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_29:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_29]], implicit-def dead $scc
2126  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY29]], killed [[S_ADD_I32_29]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 408, align 8, addrspace 5)
2127  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_30:%[0-9]+]]:sreg_32 = S_MOV_B32 404
2128  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_30:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_30]], implicit-def dead $scc
2129  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY30]], killed [[S_ADD_I32_30]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 404, addrspace 5)
2130  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_31:%[0-9]+]]:sreg_32 = S_MOV_B32 400
2131  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_31:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_31]], implicit-def dead $scc
2132  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY31]], killed [[S_ADD_I32_31]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 400, align 16, addrspace 5)
2133  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_32:%[0-9]+]]:sreg_32 = S_MOV_B32 396
2134  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_32:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_32]], implicit-def dead $scc
2135  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY32]], killed [[S_ADD_I32_32]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 396, addrspace 5)
2136  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_33:%[0-9]+]]:sreg_32 = S_MOV_B32 392
2137  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_33:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_33]], implicit-def dead $scc
2138  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY33]], killed [[S_ADD_I32_33]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 392, align 8, addrspace 5)
2139  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_34:%[0-9]+]]:sreg_32 = S_MOV_B32 388
2140  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_34:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_34]], implicit-def dead $scc
2141  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY34]], killed [[S_ADD_I32_34]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 388, addrspace 5)
2142  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_35:%[0-9]+]]:sreg_32 = S_MOV_B32 384
2143  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_35:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_35]], implicit-def dead $scc
2144  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY35]], killed [[S_ADD_I32_35]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 384, align 16, addrspace 5)
2145  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_36:%[0-9]+]]:sreg_32 = S_MOV_B32 380
2146  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_36:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_36]], implicit-def dead $scc
2147  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY36]], killed [[S_ADD_I32_36]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 380, addrspace 5)
2148  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_37:%[0-9]+]]:sreg_32 = S_MOV_B32 376
2149  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_37:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_37]], implicit-def dead $scc
2150  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY37]], killed [[S_ADD_I32_37]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 376, align 8, addrspace 5)
2151  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_38:%[0-9]+]]:sreg_32 = S_MOV_B32 372
2152  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_38:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_38]], implicit-def dead $scc
2153  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY38]], killed [[S_ADD_I32_38]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 372, addrspace 5)
2154  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_39:%[0-9]+]]:sreg_32 = S_MOV_B32 368
2155  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_39:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_39]], implicit-def dead $scc
2156  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY39]], killed [[S_ADD_I32_39]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 368, align 16, addrspace 5)
2157  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_40:%[0-9]+]]:sreg_32 = S_MOV_B32 364
2158  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_40:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_40]], implicit-def dead $scc
2159  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY40]], killed [[S_ADD_I32_40]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 364, addrspace 5)
2160  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_41:%[0-9]+]]:sreg_32 = S_MOV_B32 360
2161  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_41:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_41]], implicit-def dead $scc
2162  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY41]], killed [[S_ADD_I32_41]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 360, align 8, addrspace 5)
2163  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_42:%[0-9]+]]:sreg_32 = S_MOV_B32 356
2164  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_42:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_42]], implicit-def dead $scc
2165  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY42]], killed [[S_ADD_I32_42]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 356, addrspace 5)
2166  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_43:%[0-9]+]]:sreg_32 = S_MOV_B32 352
2167  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_43:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_43]], implicit-def dead $scc
2168  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY43]], killed [[S_ADD_I32_43]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 352, align 16, addrspace 5)
2169  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_44:%[0-9]+]]:sreg_32 = S_MOV_B32 348
2170  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_44:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_44]], implicit-def dead $scc
2171  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY44]], killed [[S_ADD_I32_44]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 348, addrspace 5)
2172  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_45:%[0-9]+]]:sreg_32 = S_MOV_B32 344
2173  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_45:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_45]], implicit-def dead $scc
2174  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY45]], killed [[S_ADD_I32_45]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 344, align 8, addrspace 5)
2175  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_46:%[0-9]+]]:sreg_32 = S_MOV_B32 340
2176  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_46:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_46]], implicit-def dead $scc
2177  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY46]], killed [[S_ADD_I32_46]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 340, addrspace 5)
2178  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_47:%[0-9]+]]:sreg_32 = S_MOV_B32 336
2179  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_47:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_47]], implicit-def dead $scc
2180  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY47]], killed [[S_ADD_I32_47]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 336, align 16, addrspace 5)
2181  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_48:%[0-9]+]]:sreg_32 = S_MOV_B32 332
2182  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_48:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_48]], implicit-def dead $scc
2183  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY48]], killed [[S_ADD_I32_48]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 332, addrspace 5)
2184  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_49:%[0-9]+]]:sreg_32 = S_MOV_B32 328
2185  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_49:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_49]], implicit-def dead $scc
2186  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY49]], killed [[S_ADD_I32_49]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 328, align 8, addrspace 5)
2187  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_50:%[0-9]+]]:sreg_32 = S_MOV_B32 324
2188  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_50:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_50]], implicit-def dead $scc
2189  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY50]], killed [[S_ADD_I32_50]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 324, addrspace 5)
2190  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_51:%[0-9]+]]:sreg_32 = S_MOV_B32 320
2191  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_51:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_51]], implicit-def dead $scc
2192  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY51]], killed [[S_ADD_I32_51]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 320, align 16, addrspace 5)
2193  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_52:%[0-9]+]]:sreg_32 = S_MOV_B32 316
2194  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_52:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_52]], implicit-def dead $scc
2195  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY52]], killed [[S_ADD_I32_52]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 316, addrspace 5)
2196  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_53:%[0-9]+]]:sreg_32 = S_MOV_B32 312
2197  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_53:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_53]], implicit-def dead $scc
2198  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY53]], killed [[S_ADD_I32_53]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 312, align 8, addrspace 5)
2199  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_54:%[0-9]+]]:sreg_32 = S_MOV_B32 308
2200  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_54:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_54]], implicit-def dead $scc
2201  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY54]], killed [[S_ADD_I32_54]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 308, addrspace 5)
2202  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_55:%[0-9]+]]:sreg_32 = S_MOV_B32 304
2203  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_55:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_55]], implicit-def dead $scc
2204  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY55]], killed [[S_ADD_I32_55]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 304, align 16, addrspace 5)
2205  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_56:%[0-9]+]]:sreg_32 = S_MOV_B32 300
2206  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_56:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_56]], implicit-def dead $scc
2207  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY56]], killed [[S_ADD_I32_56]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 300, addrspace 5)
2208  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_57:%[0-9]+]]:sreg_32 = S_MOV_B32 296
2209  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_57:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_57]], implicit-def dead $scc
2210  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY57]], killed [[S_ADD_I32_57]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 296, align 8, addrspace 5)
2211  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_58:%[0-9]+]]:sreg_32 = S_MOV_B32 292
2212  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_58:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_58]], implicit-def dead $scc
2213  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY58]], killed [[S_ADD_I32_58]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 292, addrspace 5)
2214  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_59:%[0-9]+]]:sreg_32 = S_MOV_B32 288
2215  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_59:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_59]], implicit-def dead $scc
2216  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY59]], killed [[S_ADD_I32_59]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 288, align 16, addrspace 5)
2217  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_60:%[0-9]+]]:sreg_32 = S_MOV_B32 284
2218  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_60:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_60]], implicit-def dead $scc
2219  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY60]], killed [[S_ADD_I32_60]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 284, addrspace 5)
2220  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_61:%[0-9]+]]:sreg_32 = S_MOV_B32 280
2221  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_61:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_61]], implicit-def dead $scc
2222  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY61]], killed [[S_ADD_I32_61]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 280, align 8, addrspace 5)
2223  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_62:%[0-9]+]]:sreg_32 = S_MOV_B32 276
2224  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_62:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_62]], implicit-def dead $scc
2225  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY62]], killed [[S_ADD_I32_62]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 276, addrspace 5)
2226  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_63:%[0-9]+]]:sreg_32 = S_MOV_B32 272
2227  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_63:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_63]], implicit-def dead $scc
2228  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY63]], killed [[S_ADD_I32_63]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 272, align 16, addrspace 5)
2229  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_64:%[0-9]+]]:sreg_32 = S_MOV_B32 268
2230  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_64:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_64]], implicit-def dead $scc
2231  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY64]], killed [[S_ADD_I32_64]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 268, addrspace 5)
2232  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_65:%[0-9]+]]:sreg_32 = S_MOV_B32 264
2233  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_65:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_65]], implicit-def dead $scc
2234  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY65]], killed [[S_ADD_I32_65]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 264, align 8, addrspace 5)
2235  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_66:%[0-9]+]]:sreg_32 = S_MOV_B32 260
2236  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_66:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_66]], implicit-def dead $scc
2237  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY66]], killed [[S_ADD_I32_66]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 260, addrspace 5)
2238  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_67:%[0-9]+]]:sreg_32 = S_MOV_B32 256
2239  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_67:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_67]], implicit-def dead $scc
2240  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY67]], killed [[S_ADD_I32_67]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 256, align 16, addrspace 5)
2241  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_68:%[0-9]+]]:sreg_32 = S_MOV_B32 252
2242  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_68:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_68]], implicit-def dead $scc
2243  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY68]], killed [[S_ADD_I32_68]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 252, addrspace 5)
2244  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_69:%[0-9]+]]:sreg_32 = S_MOV_B32 248
2245  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_69:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_69]], implicit-def dead $scc
2246  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY69]], killed [[S_ADD_I32_69]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 248, align 8, addrspace 5)
2247  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_70:%[0-9]+]]:sreg_32 = S_MOV_B32 244
2248  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_70:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_70]], implicit-def dead $scc
2249  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY70]], killed [[S_ADD_I32_70]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 244, addrspace 5)
2250  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_71:%[0-9]+]]:sreg_32 = S_MOV_B32 240
2251  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_71:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_71]], implicit-def dead $scc
2252  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY71]], killed [[S_ADD_I32_71]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 240, align 16, addrspace 5)
2253  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_72:%[0-9]+]]:sreg_32 = S_MOV_B32 236
2254  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_72:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_72]], implicit-def dead $scc
2255  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY72]], killed [[S_ADD_I32_72]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 236, addrspace 5)
2256  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_73:%[0-9]+]]:sreg_32 = S_MOV_B32 232
2257  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_73:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_73]], implicit-def dead $scc
2258  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY73]], killed [[S_ADD_I32_73]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 232, align 8, addrspace 5)
2259  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_74:%[0-9]+]]:sreg_32 = S_MOV_B32 228
2260  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_74:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_74]], implicit-def dead $scc
2261  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY74]], killed [[S_ADD_I32_74]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 228, addrspace 5)
2262  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_75:%[0-9]+]]:sreg_32 = S_MOV_B32 224
2263  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_75:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_75]], implicit-def dead $scc
2264  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY75]], killed [[S_ADD_I32_75]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 224, align 16, addrspace 5)
2265  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_76:%[0-9]+]]:sreg_32 = S_MOV_B32 220
2266  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_76:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_76]], implicit-def dead $scc
2267  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY76]], killed [[S_ADD_I32_76]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 220, addrspace 5)
2268  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_77:%[0-9]+]]:sreg_32 = S_MOV_B32 216
2269  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_77:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_77]], implicit-def dead $scc
2270  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY77]], killed [[S_ADD_I32_77]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 216, align 8, addrspace 5)
2271  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_78:%[0-9]+]]:sreg_32 = S_MOV_B32 212
2272  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_78:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_78]], implicit-def dead $scc
2273  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY78]], killed [[S_ADD_I32_78]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 212, addrspace 5)
2274  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_79:%[0-9]+]]:sreg_32 = S_MOV_B32 208
2275  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_79:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_79]], implicit-def dead $scc
2276  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY79]], killed [[S_ADD_I32_79]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 208, align 16, addrspace 5)
2277  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_80:%[0-9]+]]:sreg_32 = S_MOV_B32 204
2278  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_80:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_80]], implicit-def dead $scc
2279  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY80]], killed [[S_ADD_I32_80]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 204, addrspace 5)
2280  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_81:%[0-9]+]]:sreg_32 = S_MOV_B32 200
2281  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_81:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_81]], implicit-def dead $scc
2282  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY81]], killed [[S_ADD_I32_81]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 200, align 8, addrspace 5)
2283  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_82:%[0-9]+]]:sreg_32 = S_MOV_B32 196
2284  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_82:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_82]], implicit-def dead $scc
2285  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY82]], killed [[S_ADD_I32_82]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 196, addrspace 5)
2286  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_83:%[0-9]+]]:sreg_32 = S_MOV_B32 192
2287  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_83:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_83]], implicit-def dead $scc
2288  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY83]], killed [[S_ADD_I32_83]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 192, align 16, addrspace 5)
2289  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_84:%[0-9]+]]:sreg_32 = S_MOV_B32 188
2290  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_84:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_84]], implicit-def dead $scc
2291  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY84]], killed [[S_ADD_I32_84]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 188, addrspace 5)
2292  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_85:%[0-9]+]]:sreg_32 = S_MOV_B32 184
2293  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_85:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_85]], implicit-def dead $scc
2294  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY85]], killed [[S_ADD_I32_85]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 184, align 8, addrspace 5)
2295  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_86:%[0-9]+]]:sreg_32 = S_MOV_B32 180
2296  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_86:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_86]], implicit-def dead $scc
2297  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY86]], killed [[S_ADD_I32_86]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 180, addrspace 5)
2298  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_87:%[0-9]+]]:sreg_32 = S_MOV_B32 176
2299  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_87:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_87]], implicit-def dead $scc
2300  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY87]], killed [[S_ADD_I32_87]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 176, align 16, addrspace 5)
2301  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_88:%[0-9]+]]:sreg_32 = S_MOV_B32 172
2302  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_88:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_88]], implicit-def dead $scc
2303  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY88]], killed [[S_ADD_I32_88]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 172, addrspace 5)
2304  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_89:%[0-9]+]]:sreg_32 = S_MOV_B32 168
2305  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_89:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_89]], implicit-def dead $scc
2306  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY89]], killed [[S_ADD_I32_89]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 168, align 8, addrspace 5)
2307  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_90:%[0-9]+]]:sreg_32 = S_MOV_B32 164
2308  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_90:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_90]], implicit-def dead $scc
2309  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY90]], killed [[S_ADD_I32_90]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 164, addrspace 5)
2310  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_91:%[0-9]+]]:sreg_32 = S_MOV_B32 160
2311  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_91:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_91]], implicit-def dead $scc
2312  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY91]], killed [[S_ADD_I32_91]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 160, align 16, addrspace 5)
2313  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_92:%[0-9]+]]:sreg_32 = S_MOV_B32 156
2314  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_92:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_92]], implicit-def dead $scc
2315  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY92]], killed [[S_ADD_I32_92]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 156, addrspace 5)
2316  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_93:%[0-9]+]]:sreg_32 = S_MOV_B32 152
2317  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_93:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_93]], implicit-def dead $scc
2318  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY93]], killed [[S_ADD_I32_93]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 152, align 8, addrspace 5)
2319  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_94:%[0-9]+]]:sreg_32 = S_MOV_B32 148
2320  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_94:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_94]], implicit-def dead $scc
2321  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY94]], killed [[S_ADD_I32_94]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 148, addrspace 5)
2322  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_95:%[0-9]+]]:sreg_32 = S_MOV_B32 144
2323  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_95:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_95]], implicit-def dead $scc
2324  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY95]], killed [[S_ADD_I32_95]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 144, align 16, addrspace 5)
2325  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_96:%[0-9]+]]:sreg_32 = S_MOV_B32 140
2326  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_96:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_96]], implicit-def dead $scc
2327  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY96]], killed [[S_ADD_I32_96]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 140, addrspace 5)
2328  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_97:%[0-9]+]]:sreg_32 = S_MOV_B32 136
2329  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_97:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_97]], implicit-def dead $scc
2330  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY97]], killed [[S_ADD_I32_97]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 136, align 8, addrspace 5)
2331  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_98:%[0-9]+]]:sreg_32 = S_MOV_B32 132
2332  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_98:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_98]], implicit-def dead $scc
2333  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY98]], killed [[S_ADD_I32_98]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 132, addrspace 5)
2334  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_99:%[0-9]+]]:sreg_32 = S_MOV_B32 128
2335  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_99:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_99]], implicit-def dead $scc
2336  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY99]], killed [[S_ADD_I32_99]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 128, align 16, addrspace 5)
2337  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_100:%[0-9]+]]:sreg_32 = S_MOV_B32 124
2338  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_100:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_100]], implicit-def dead $scc
2339  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY100]], killed [[S_ADD_I32_100]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 124, addrspace 5)
2340  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_101:%[0-9]+]]:sreg_32 = S_MOV_B32 120
2341  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_101:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_101]], implicit-def dead $scc
2342  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY101]], killed [[S_ADD_I32_101]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 120, align 8, addrspace 5)
2343  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_102:%[0-9]+]]:sreg_32 = S_MOV_B32 116
2344  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_102:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_102]], implicit-def dead $scc
2345  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY102]], killed [[S_ADD_I32_102]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 116, addrspace 5)
2346  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_103:%[0-9]+]]:sreg_32 = S_MOV_B32 112
2347  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_103:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_103]], implicit-def dead $scc
2348  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY103]], killed [[S_ADD_I32_103]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 112, align 16, addrspace 5)
2349  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_104:%[0-9]+]]:sreg_32 = S_MOV_B32 108
2350  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_104:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_104]], implicit-def dead $scc
2351  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY104]], killed [[S_ADD_I32_104]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 108, addrspace 5)
2352  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_105:%[0-9]+]]:sreg_32 = S_MOV_B32 104
2353  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_105:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_105]], implicit-def dead $scc
2354  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY105]], killed [[S_ADD_I32_105]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 104, align 8, addrspace 5)
2355  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_106:%[0-9]+]]:sreg_32 = S_MOV_B32 100
2356  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_106:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_106]], implicit-def dead $scc
2357  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY106]], killed [[S_ADD_I32_106]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 100, addrspace 5)
2358  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_107:%[0-9]+]]:sreg_32 = S_MOV_B32 96
2359  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_107:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_107]], implicit-def dead $scc
2360  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY107]], killed [[S_ADD_I32_107]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 96, align 16, addrspace 5)
2361  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_108:%[0-9]+]]:sreg_32 = S_MOV_B32 92
2362  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_108:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_108]], implicit-def dead $scc
2363  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY108]], killed [[S_ADD_I32_108]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 92, addrspace 5)
2364  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_109:%[0-9]+]]:sreg_32 = S_MOV_B32 88
2365  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_109:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_109]], implicit-def dead $scc
2366  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY109]], killed [[S_ADD_I32_109]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 88, align 8, addrspace 5)
2367  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_110:%[0-9]+]]:sreg_32 = S_MOV_B32 84
2368  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_110:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_110]], implicit-def dead $scc
2369  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY110]], killed [[S_ADD_I32_110]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 84, addrspace 5)
2370  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_111:%[0-9]+]]:sreg_32 = S_MOV_B32 80
2371  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_111:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_111]], implicit-def dead $scc
2372  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY111]], killed [[S_ADD_I32_111]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 80, align 16, addrspace 5)
2373  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_112:%[0-9]+]]:sreg_32 = S_MOV_B32 76
2374  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_112:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_112]], implicit-def dead $scc
2375  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY112]], killed [[S_ADD_I32_112]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 76, addrspace 5)
2376  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_113:%[0-9]+]]:sreg_32 = S_MOV_B32 72
2377  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_113:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_113]], implicit-def dead $scc
2378  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY113]], killed [[S_ADD_I32_113]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 72, align 8, addrspace 5)
2379  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_114:%[0-9]+]]:sreg_32 = S_MOV_B32 68
2380  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_114:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_114]], implicit-def dead $scc
2381  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY114]], killed [[S_ADD_I32_114]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 68, addrspace 5)
2382  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_115:%[0-9]+]]:sreg_32 = S_MOV_B32 64
2383  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_115:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_115]], implicit-def dead $scc
2384  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY115]], killed [[S_ADD_I32_115]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 64, align 16, addrspace 5)
2385  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_116:%[0-9]+]]:sreg_32 = S_MOV_B32 60
2386  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_116:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_116]], implicit-def dead $scc
2387  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY116]], killed [[S_ADD_I32_116]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 60, addrspace 5)
2388  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_117:%[0-9]+]]:sreg_32 = S_MOV_B32 56
2389  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_117:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_117]], implicit-def dead $scc
2390  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY117]], killed [[S_ADD_I32_117]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 56, align 8, addrspace 5)
2391  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_118:%[0-9]+]]:sreg_32 = S_MOV_B32 52
2392  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_118:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_118]], implicit-def dead $scc
2393  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY118]], killed [[S_ADD_I32_118]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 52, addrspace 5)
2394  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_119:%[0-9]+]]:sreg_32 = S_MOV_B32 48
2395  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_119:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_119]], implicit-def dead $scc
2396  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY119]], killed [[S_ADD_I32_119]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 48, align 16, addrspace 5)
2397  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_120:%[0-9]+]]:sreg_32 = S_MOV_B32 44
2398  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_120:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_120]], implicit-def dead $scc
2399  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY120]], killed [[S_ADD_I32_120]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 44, addrspace 5)
2400  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_121:%[0-9]+]]:sreg_32 = S_MOV_B32 40
2401  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_121:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_121]], implicit-def dead $scc
2402  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY121]], killed [[S_ADD_I32_121]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 40, align 8, addrspace 5)
2403  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_122:%[0-9]+]]:sreg_32 = S_MOV_B32 36
2404  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_122:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_122]], implicit-def dead $scc
2405  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY122]], killed [[S_ADD_I32_122]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 36, addrspace 5)
2406  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_123:%[0-9]+]]:sreg_32 = S_MOV_B32 32
2407  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_123:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_123]], implicit-def dead $scc
2408  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY123]], killed [[S_ADD_I32_123]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 32, align 16, addrspace 5)
2409  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_124:%[0-9]+]]:sreg_32 = S_MOV_B32 28
2410  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_124:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_124]], implicit-def dead $scc
2411  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY124]], killed [[S_ADD_I32_124]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 28, addrspace 5)
2412  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_125:%[0-9]+]]:sreg_32 = S_MOV_B32 24
2413  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_125:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_125]], implicit-def dead $scc
2414  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY125]], killed [[S_ADD_I32_125]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 24, align 8, addrspace 5)
2415  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_126:%[0-9]+]]:sreg_32 = S_MOV_B32 20
2416  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_126:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_126]], implicit-def dead $scc
2417  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY126]], killed [[S_ADD_I32_126]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 20, addrspace 5)
2418  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_127:%[0-9]+]]:sreg_32 = S_MOV_B32 16
2419  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_127:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_127]], implicit-def dead $scc
2420  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY127]], killed [[S_ADD_I32_127]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 16, align 16, addrspace 5)
2421  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_128:%[0-9]+]]:sreg_32 = S_MOV_B32 12
2422  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_128:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_128]], implicit-def dead $scc
2423  ; DAGISEL-GFX11-NEXT:   [[COPY166:%[0-9]+]]:vgpr_32 = COPY [[COPY128]]
2424  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY166]], killed [[S_ADD_I32_128]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 12, addrspace 5)
2425  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_129:%[0-9]+]]:sreg_32 = S_MOV_B32 8
2426  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_129:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_129]], implicit-def dead $scc
2427  ; DAGISEL-GFX11-NEXT:   [[COPY167:%[0-9]+]]:vgpr_32 = COPY [[COPY129]]
2428  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY167]], killed [[S_ADD_I32_129]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 8, align 8, addrspace 5)
2429  ; DAGISEL-GFX11-NEXT:   [[S_MOV_B32_130:%[0-9]+]]:sreg_32 = S_MOV_B32 4
2430  ; DAGISEL-GFX11-NEXT:   [[S_ADD_I32_130:%[0-9]+]]:sreg_32_xexec_hi = S_ADD_I32 [[COPY164]], killed [[S_MOV_B32_130]], implicit-def dead $scc
2431  ; DAGISEL-GFX11-NEXT:   [[COPY168:%[0-9]+]]:vgpr_32 = COPY [[COPY130]]
2432  ; DAGISEL-GFX11-NEXT:   SCRATCH_STORE_DWORD_SADDR [[COPY168]], killed [[S_ADD_I32_130]], 0, 0, implicit $exec, implicit $flat_scr :: (store (s32) into stack + 4, addrspace 5)
2433  ; DAGISEL-GFX11-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
2434  ; DAGISEL-GFX11-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
2435  ; DAGISEL-GFX11-NEXT:   $vgpr0 = COPY [[COPY163]]
2436  ; DAGISEL-GFX11-NEXT:   $vgpr1 = COPY [[COPY162]]
2437  ; DAGISEL-GFX11-NEXT:   $vgpr2 = COPY [[COPY161]]
2438  ; DAGISEL-GFX11-NEXT:   $vgpr3 = COPY [[COPY160]]
2439  ; DAGISEL-GFX11-NEXT:   $vgpr4 = COPY [[COPY159]]
2440  ; DAGISEL-GFX11-NEXT:   $vgpr5 = COPY [[COPY158]]
2441  ; DAGISEL-GFX11-NEXT:   $vgpr6 = COPY [[COPY157]]
2442  ; DAGISEL-GFX11-NEXT:   $vgpr7 = COPY [[COPY156]]
2443  ; DAGISEL-GFX11-NEXT:   $vgpr8 = COPY [[COPY155]]
2444  ; DAGISEL-GFX11-NEXT:   $vgpr9 = COPY [[COPY154]]
2445  ; DAGISEL-GFX11-NEXT:   $vgpr10 = COPY [[COPY153]]
2446  ; DAGISEL-GFX11-NEXT:   $vgpr11 = COPY [[COPY152]]
2447  ; DAGISEL-GFX11-NEXT:   $vgpr12 = COPY [[COPY151]]
2448  ; DAGISEL-GFX11-NEXT:   $vgpr13 = COPY [[COPY150]]
2449  ; DAGISEL-GFX11-NEXT:   $vgpr14 = COPY [[COPY149]]
2450  ; DAGISEL-GFX11-NEXT:   $vgpr15 = COPY [[COPY148]]
2451  ; DAGISEL-GFX11-NEXT:   $vgpr16 = COPY [[COPY147]]
2452  ; DAGISEL-GFX11-NEXT:   $vgpr17 = COPY [[COPY146]]
2453  ; DAGISEL-GFX11-NEXT:   $vgpr18 = COPY [[COPY145]]
2454  ; DAGISEL-GFX11-NEXT:   $vgpr19 = COPY [[COPY144]]
2455  ; DAGISEL-GFX11-NEXT:   $vgpr20 = COPY [[COPY143]]
2456  ; DAGISEL-GFX11-NEXT:   $vgpr21 = COPY [[COPY142]]
2457  ; DAGISEL-GFX11-NEXT:   $vgpr22 = COPY [[COPY141]]
2458  ; DAGISEL-GFX11-NEXT:   $vgpr23 = COPY [[COPY140]]
2459  ; DAGISEL-GFX11-NEXT:   $vgpr24 = COPY [[COPY139]]
2460  ; DAGISEL-GFX11-NEXT:   $vgpr25 = COPY [[COPY138]]
2461  ; DAGISEL-GFX11-NEXT:   $vgpr26 = COPY [[COPY137]]
2462  ; DAGISEL-GFX11-NEXT:   $vgpr27 = COPY [[COPY136]]
2463  ; DAGISEL-GFX11-NEXT:   $vgpr28 = COPY [[COPY135]]
2464  ; DAGISEL-GFX11-NEXT:   $vgpr29 = COPY [[COPY134]]
2465  ; DAGISEL-GFX11-NEXT:   $vgpr30 = COPY [[COPY133]]
2466  ; DAGISEL-GFX11-NEXT:   $vgpr31 = COPY [[COPY132]]
2467  ; DAGISEL-GFX11-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15, implicit $vgpr16, implicit $vgpr17, implicit $vgpr18, implicit $vgpr19, implicit $vgpr20, implicit $vgpr21, implicit $vgpr22, implicit $vgpr23, implicit $vgpr24, implicit $vgpr25, implicit $vgpr26, implicit $vgpr27, implicit $vgpr28, implicit $vgpr29, implicit $vgpr30, implicit $vgpr31
2468  ; DAGISEL-GFX11-NEXT:   ADJCALLSTACKDOWN 0, 528, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
2469  ; DAGISEL-GFX11-NEXT:   S_ENDPGM 0
2470  ;
2471  ; DAGISEL-GFX10-LABEL: name: amdgpu_cs_chain_many_regs
2472  ; DAGISEL-GFX10: bb.0 (%ir-block.0):
2473  ; DAGISEL-GFX10-NEXT:   liveins: $sgpr0, $sgpr1, $sgpr2, $sgpr3, $sgpr4, $sgpr5, $sgpr6, $sgpr7, $sgpr8, $sgpr9, $sgpr10, $sgpr11, $sgpr12, $sgpr13, $sgpr14, $sgpr15, $sgpr16, $sgpr17, $sgpr18, $sgpr19, $sgpr20, $sgpr21, $sgpr22, $sgpr23, $sgpr24, $sgpr25, $sgpr26, $sgpr27, $sgpr28, $sgpr29, $sgpr30, $sgpr31, $sgpr32, $sgpr33, $sgpr34, $sgpr35, $vgpr8, $vgpr9, $vgpr10, $vgpr11, $vgpr12, $vgpr13, $vgpr14, $vgpr15, $vgpr16, $vgpr17, $vgpr18, $vgpr19, $vgpr20, $vgpr21, $vgpr22, $vgpr23, $vgpr24, $vgpr25, $vgpr26, $vgpr27, $vgpr28, $vgpr29, $vgpr30, $vgpr31, $vgpr32, $vgpr33, $vgpr34, $vgpr35, $vgpr36, $vgpr37, $vgpr38, $vgpr39, $vgpr40, $vgpr41, $vgpr42, $vgpr43, $vgpr44, $vgpr45, $vgpr46, $vgpr47, $vgpr48, $vgpr49, $vgpr50, $vgpr51, $vgpr52, $vgpr53, $vgpr54, $vgpr55, $vgpr56, $vgpr57, $vgpr58, $vgpr59, $vgpr60, $vgpr61, $vgpr62, $vgpr63, $vgpr64, $vgpr65, $vgpr66, $vgpr67, $vgpr68, $vgpr69, $vgpr70, $vgpr71, $vgpr72, $vgpr73, $vgpr74, $vgpr75, $vgpr76, $vgpr77, $vgpr78, $vgpr79, $vgpr80, $vgpr81, $vgpr82, $vgpr83, $vgpr84, $vgpr85, $vgpr86, $vgpr87, $vgpr88, $vgpr89, $vgpr90, $vgpr91, $vgpr92, $vgpr93, $vgpr94, $vgpr95, $vgpr96, $vgpr97, $vgpr98, $vgpr99, $vgpr100, $vgpr101, $vgpr102, $vgpr103, $vgpr104, $vgpr105, $vgpr106, $vgpr107, $vgpr108, $vgpr109, $vgpr110, $vgpr111, $vgpr112, $vgpr113, $vgpr114, $vgpr115, $vgpr116, $vgpr117, $vgpr118, $vgpr119, $vgpr120, $vgpr121, $vgpr122, $vgpr123, $vgpr124, $vgpr125, $vgpr126, $vgpr127, $vgpr128, $vgpr129, $vgpr130, $vgpr131, $vgpr132, $vgpr133, $vgpr134, $vgpr135
2474  ; DAGISEL-GFX10-NEXT: {{  $}}
2475  ; DAGISEL-GFX10-NEXT:   [[COPY:%[0-9]+]]:vgpr_32 = COPY $vgpr135
2476  ; DAGISEL-GFX10-NEXT:   [[COPY1:%[0-9]+]]:vgpr_32 = COPY $vgpr134
2477  ; DAGISEL-GFX10-NEXT:   [[COPY2:%[0-9]+]]:vgpr_32 = COPY $vgpr133
2478  ; DAGISEL-GFX10-NEXT:   [[COPY3:%[0-9]+]]:vgpr_32 = COPY $vgpr132
2479  ; DAGISEL-GFX10-NEXT:   [[COPY4:%[0-9]+]]:vgpr_32 = COPY $vgpr131
2480  ; DAGISEL-GFX10-NEXT:   [[COPY5:%[0-9]+]]:vgpr_32 = COPY $vgpr130
2481  ; DAGISEL-GFX10-NEXT:   [[COPY6:%[0-9]+]]:vgpr_32 = COPY $vgpr129
2482  ; DAGISEL-GFX10-NEXT:   [[COPY7:%[0-9]+]]:vgpr_32 = COPY $vgpr128
2483  ; DAGISEL-GFX10-NEXT:   [[COPY8:%[0-9]+]]:vgpr_32 = COPY $vgpr127
2484  ; DAGISEL-GFX10-NEXT:   [[COPY9:%[0-9]+]]:vgpr_32 = COPY $vgpr126
2485  ; DAGISEL-GFX10-NEXT:   [[COPY10:%[0-9]+]]:vgpr_32 = COPY $vgpr125
2486  ; DAGISEL-GFX10-NEXT:   [[COPY11:%[0-9]+]]:vgpr_32 = COPY $vgpr124
2487  ; DAGISEL-GFX10-NEXT:   [[COPY12:%[0-9]+]]:vgpr_32 = COPY $vgpr123
2488  ; DAGISEL-GFX10-NEXT:   [[COPY13:%[0-9]+]]:vgpr_32 = COPY $vgpr122
2489  ; DAGISEL-GFX10-NEXT:   [[COPY14:%[0-9]+]]:vgpr_32 = COPY $vgpr121
2490  ; DAGISEL-GFX10-NEXT:   [[COPY15:%[0-9]+]]:vgpr_32 = COPY $vgpr120
2491  ; DAGISEL-GFX10-NEXT:   [[COPY16:%[0-9]+]]:vgpr_32 = COPY $vgpr119
2492  ; DAGISEL-GFX10-NEXT:   [[COPY17:%[0-9]+]]:vgpr_32 = COPY $vgpr118
2493  ; DAGISEL-GFX10-NEXT:   [[COPY18:%[0-9]+]]:vgpr_32 = COPY $vgpr117
2494  ; DAGISEL-GFX10-NEXT:   [[COPY19:%[0-9]+]]:vgpr_32 = COPY $vgpr116
2495  ; DAGISEL-GFX10-NEXT:   [[COPY20:%[0-9]+]]:vgpr_32 = COPY $vgpr115
2496  ; DAGISEL-GFX10-NEXT:   [[COPY21:%[0-9]+]]:vgpr_32 = COPY $vgpr114
2497  ; DAGISEL-GFX10-NEXT:   [[COPY22:%[0-9]+]]:vgpr_32 = COPY $vgpr113
2498  ; DAGISEL-GFX10-NEXT:   [[COPY23:%[0-9]+]]:vgpr_32 = COPY $vgpr112
2499  ; DAGISEL-GFX10-NEXT:   [[COPY24:%[0-9]+]]:vgpr_32 = COPY $vgpr111
2500  ; DAGISEL-GFX10-NEXT:   [[COPY25:%[0-9]+]]:vgpr_32 = COPY $vgpr110
2501  ; DAGISEL-GFX10-NEXT:   [[COPY26:%[0-9]+]]:vgpr_32 = COPY $vgpr109
2502  ; DAGISEL-GFX10-NEXT:   [[COPY27:%[0-9]+]]:vgpr_32 = COPY $vgpr108
2503  ; DAGISEL-GFX10-NEXT:   [[COPY28:%[0-9]+]]:vgpr_32 = COPY $vgpr107
2504  ; DAGISEL-GFX10-NEXT:   [[COPY29:%[0-9]+]]:vgpr_32 = COPY $vgpr106
2505  ; DAGISEL-GFX10-NEXT:   [[COPY30:%[0-9]+]]:vgpr_32 = COPY $vgpr105
2506  ; DAGISEL-GFX10-NEXT:   [[COPY31:%[0-9]+]]:vgpr_32 = COPY $vgpr104
2507  ; DAGISEL-GFX10-NEXT:   [[COPY32:%[0-9]+]]:vgpr_32 = COPY $vgpr103
2508  ; DAGISEL-GFX10-NEXT:   [[COPY33:%[0-9]+]]:vgpr_32 = COPY $vgpr102
2509  ; DAGISEL-GFX10-NEXT:   [[COPY34:%[0-9]+]]:vgpr_32 = COPY $vgpr101
2510  ; DAGISEL-GFX10-NEXT:   [[COPY35:%[0-9]+]]:vgpr_32 = COPY $vgpr100
2511  ; DAGISEL-GFX10-NEXT:   [[COPY36:%[0-9]+]]:vgpr_32 = COPY $vgpr99
2512  ; DAGISEL-GFX10-NEXT:   [[COPY37:%[0-9]+]]:vgpr_32 = COPY $vgpr98
2513  ; DAGISEL-GFX10-NEXT:   [[COPY38:%[0-9]+]]:vgpr_32 = COPY $vgpr97
2514  ; DAGISEL-GFX10-NEXT:   [[COPY39:%[0-9]+]]:vgpr_32 = COPY $vgpr96
2515  ; DAGISEL-GFX10-NEXT:   [[COPY40:%[0-9]+]]:vgpr_32 = COPY $vgpr95
2516  ; DAGISEL-GFX10-NEXT:   [[COPY41:%[0-9]+]]:vgpr_32 = COPY $vgpr94
2517  ; DAGISEL-GFX10-NEXT:   [[COPY42:%[0-9]+]]:vgpr_32 = COPY $vgpr93
2518  ; DAGISEL-GFX10-NEXT:   [[COPY43:%[0-9]+]]:vgpr_32 = COPY $vgpr92
2519  ; DAGISEL-GFX10-NEXT:   [[COPY44:%[0-9]+]]:vgpr_32 = COPY $vgpr91
2520  ; DAGISEL-GFX10-NEXT:   [[COPY45:%[0-9]+]]:vgpr_32 = COPY $vgpr90
2521  ; DAGISEL-GFX10-NEXT:   [[COPY46:%[0-9]+]]:vgpr_32 = COPY $vgpr89
2522  ; DAGISEL-GFX10-NEXT:   [[COPY47:%[0-9]+]]:vgpr_32 = COPY $vgpr88
2523  ; DAGISEL-GFX10-NEXT:   [[COPY48:%[0-9]+]]:vgpr_32 = COPY $vgpr87
2524  ; DAGISEL-GFX10-NEXT:   [[COPY49:%[0-9]+]]:vgpr_32 = COPY $vgpr86
2525  ; DAGISEL-GFX10-NEXT:   [[COPY50:%[0-9]+]]:vgpr_32 = COPY $vgpr85
2526  ; DAGISEL-GFX10-NEXT:   [[COPY51:%[0-9]+]]:vgpr_32 = COPY $vgpr84
2527  ; DAGISEL-GFX10-NEXT:   [[COPY52:%[0-9]+]]:vgpr_32 = COPY $vgpr83
2528  ; DAGISEL-GFX10-NEXT:   [[COPY53:%[0-9]+]]:vgpr_32 = COPY $vgpr82
2529  ; DAGISEL-GFX10-NEXT:   [[COPY54:%[0-9]+]]:vgpr_32 = COPY $vgpr81
2530  ; DAGISEL-GFX10-NEXT:   [[COPY55:%[0-9]+]]:vgpr_32 = COPY $vgpr80
2531  ; DAGISEL-GFX10-NEXT:   [[COPY56:%[0-9]+]]:vgpr_32 = COPY $vgpr79
2532  ; DAGISEL-GFX10-NEXT:   [[COPY57:%[0-9]+]]:vgpr_32 = COPY $vgpr78
2533  ; DAGISEL-GFX10-NEXT:   [[COPY58:%[0-9]+]]:vgpr_32 = COPY $vgpr77
2534  ; DAGISEL-GFX10-NEXT:   [[COPY59:%[0-9]+]]:vgpr_32 = COPY $vgpr76
2535  ; DAGISEL-GFX10-NEXT:   [[COPY60:%[0-9]+]]:vgpr_32 = COPY $vgpr75
2536  ; DAGISEL-GFX10-NEXT:   [[COPY61:%[0-9]+]]:vgpr_32 = COPY $vgpr74
2537  ; DAGISEL-GFX10-NEXT:   [[COPY62:%[0-9]+]]:vgpr_32 = COPY $vgpr73
2538  ; DAGISEL-GFX10-NEXT:   [[COPY63:%[0-9]+]]:vgpr_32 = COPY $vgpr72
2539  ; DAGISEL-GFX10-NEXT:   [[COPY64:%[0-9]+]]:vgpr_32 = COPY $vgpr71
2540  ; DAGISEL-GFX10-NEXT:   [[COPY65:%[0-9]+]]:vgpr_32 = COPY $vgpr70
2541  ; DAGISEL-GFX10-NEXT:   [[COPY66:%[0-9]+]]:vgpr_32 = COPY $vgpr69
2542  ; DAGISEL-GFX10-NEXT:   [[COPY67:%[0-9]+]]:vgpr_32 = COPY $vgpr68
2543  ; DAGISEL-GFX10-NEXT:   [[COPY68:%[0-9]+]]:vgpr_32 = COPY $vgpr67
2544  ; DAGISEL-GFX10-NEXT:   [[COPY69:%[0-9]+]]:vgpr_32 = COPY $vgpr66
2545  ; DAGISEL-GFX10-NEXT:   [[COPY70:%[0-9]+]]:vgpr_32 = COPY $vgpr65
2546  ; DAGISEL-GFX10-NEXT:   [[COPY71:%[0-9]+]]:vgpr_32 = COPY $vgpr64
2547  ; DAGISEL-GFX10-NEXT:   [[COPY72:%[0-9]+]]:vgpr_32 = COPY $vgpr63
2548  ; DAGISEL-GFX10-NEXT:   [[COPY73:%[0-9]+]]:vgpr_32 = COPY $vgpr62
2549  ; DAGISEL-GFX10-NEXT:   [[COPY74:%[0-9]+]]:vgpr_32 = COPY $vgpr61
2550  ; DAGISEL-GFX10-NEXT:   [[COPY75:%[0-9]+]]:vgpr_32 = COPY $vgpr60
2551  ; DAGISEL-GFX10-NEXT:   [[COPY76:%[0-9]+]]:vgpr_32 = COPY $vgpr59
2552  ; DAGISEL-GFX10-NEXT:   [[COPY77:%[0-9]+]]:vgpr_32 = COPY $vgpr58
2553  ; DAGISEL-GFX10-NEXT:   [[COPY78:%[0-9]+]]:vgpr_32 = COPY $vgpr57
2554  ; DAGISEL-GFX10-NEXT:   [[COPY79:%[0-9]+]]:vgpr_32 = COPY $vgpr56
2555  ; DAGISEL-GFX10-NEXT:   [[COPY80:%[0-9]+]]:vgpr_32 = COPY $vgpr55
2556  ; DAGISEL-GFX10-NEXT:   [[COPY81:%[0-9]+]]:vgpr_32 = COPY $vgpr54
2557  ; DAGISEL-GFX10-NEXT:   [[COPY82:%[0-9]+]]:vgpr_32 = COPY $vgpr53
2558  ; DAGISEL-GFX10-NEXT:   [[COPY83:%[0-9]+]]:vgpr_32 = COPY $vgpr52
2559  ; DAGISEL-GFX10-NEXT:   [[COPY84:%[0-9]+]]:vgpr_32 = COPY $vgpr51
2560  ; DAGISEL-GFX10-NEXT:   [[COPY85:%[0-9]+]]:vgpr_32 = COPY $vgpr50
2561  ; DAGISEL-GFX10-NEXT:   [[COPY86:%[0-9]+]]:vgpr_32 = COPY $vgpr49
2562  ; DAGISEL-GFX10-NEXT:   [[COPY87:%[0-9]+]]:vgpr_32 = COPY $vgpr48
2563  ; DAGISEL-GFX10-NEXT:   [[COPY88:%[0-9]+]]:vgpr_32 = COPY $vgpr47
2564  ; DAGISEL-GFX10-NEXT:   [[COPY89:%[0-9]+]]:vgpr_32 = COPY $vgpr46
2565  ; DAGISEL-GFX10-NEXT:   [[COPY90:%[0-9]+]]:vgpr_32 = COPY $vgpr45
2566  ; DAGISEL-GFX10-NEXT:   [[COPY91:%[0-9]+]]:vgpr_32 = COPY $vgpr44
2567  ; DAGISEL-GFX10-NEXT:   [[COPY92:%[0-9]+]]:vgpr_32 = COPY $vgpr43
2568  ; DAGISEL-GFX10-NEXT:   [[COPY93:%[0-9]+]]:vgpr_32 = COPY $vgpr42
2569  ; DAGISEL-GFX10-NEXT:   [[COPY94:%[0-9]+]]:vgpr_32 = COPY $vgpr41
2570  ; DAGISEL-GFX10-NEXT:   [[COPY95:%[0-9]+]]:vgpr_32 = COPY $vgpr40
2571  ; DAGISEL-GFX10-NEXT:   [[COPY96:%[0-9]+]]:vgpr_32 = COPY $vgpr39
2572  ; DAGISEL-GFX10-NEXT:   [[COPY97:%[0-9]+]]:vgpr_32 = COPY $vgpr38
2573  ; DAGISEL-GFX10-NEXT:   [[COPY98:%[0-9]+]]:vgpr_32 = COPY $vgpr37
2574  ; DAGISEL-GFX10-NEXT:   [[COPY99:%[0-9]+]]:vgpr_32 = COPY $vgpr36
2575  ; DAGISEL-GFX10-NEXT:   [[COPY100:%[0-9]+]]:vgpr_32 = COPY $vgpr35
2576  ; DAGISEL-GFX10-NEXT:   [[COPY101:%[0-9]+]]:vgpr_32 = COPY $vgpr34
2577  ; DAGISEL-GFX10-NEXT:   [[COPY102:%[0-9]+]]:vgpr_32 = COPY $vgpr33
2578  ; DAGISEL-GFX10-NEXT:   [[COPY103:%[0-9]+]]:vgpr_32 = COPY $vgpr32
2579  ; DAGISEL-GFX10-NEXT:   [[COPY104:%[0-9]+]]:vgpr_32 = COPY $vgpr31
2580  ; DAGISEL-GFX10-NEXT:   [[COPY105:%[0-9]+]]:vgpr_32 = COPY $vgpr30
2581  ; DAGISEL-GFX10-NEXT:   [[COPY106:%[0-9]+]]:vgpr_32 = COPY $vgpr29
2582  ; DAGISEL-GFX10-NEXT:   [[COPY107:%[0-9]+]]:vgpr_32 = COPY $vgpr28
2583  ; DAGISEL-GFX10-NEXT:   [[COPY108:%[0-9]+]]:vgpr_32 = COPY $vgpr27
2584  ; DAGISEL-GFX10-NEXT:   [[COPY109:%[0-9]+]]:vgpr_32 = COPY $vgpr26
2585  ; DAGISEL-GFX10-NEXT:   [[COPY110:%[0-9]+]]:vgpr_32 = COPY $vgpr25
2586  ; DAGISEL-GFX10-NEXT:   [[COPY111:%[0-9]+]]:vgpr_32 = COPY $vgpr24
2587  ; DAGISEL-GFX10-NEXT:   [[COPY112:%[0-9]+]]:vgpr_32 = COPY $vgpr23
2588  ; DAGISEL-GFX10-NEXT:   [[COPY113:%[0-9]+]]:vgpr_32 = COPY $vgpr22
2589  ; DAGISEL-GFX10-NEXT:   [[COPY114:%[0-9]+]]:vgpr_32 = COPY $vgpr21
2590  ; DAGISEL-GFX10-NEXT:   [[COPY115:%[0-9]+]]:vgpr_32 = COPY $vgpr20
2591  ; DAGISEL-GFX10-NEXT:   [[COPY116:%[0-9]+]]:vgpr_32 = COPY $vgpr19
2592  ; DAGISEL-GFX10-NEXT:   [[COPY117:%[0-9]+]]:vgpr_32 = COPY $vgpr18
2593  ; DAGISEL-GFX10-NEXT:   [[COPY118:%[0-9]+]]:vgpr_32 = COPY $vgpr17
2594  ; DAGISEL-GFX10-NEXT:   [[COPY119:%[0-9]+]]:vgpr_32 = COPY $vgpr16
2595  ; DAGISEL-GFX10-NEXT:   [[COPY120:%[0-9]+]]:vgpr_32 = COPY $vgpr15
2596  ; DAGISEL-GFX10-NEXT:   [[COPY121:%[0-9]+]]:vgpr_32 = COPY $vgpr14
2597  ; DAGISEL-GFX10-NEXT:   [[COPY122:%[0-9]+]]:vgpr_32 = COPY $vgpr13
2598  ; DAGISEL-GFX10-NEXT:   [[COPY123:%[0-9]+]]:vgpr_32 = COPY $vgpr12
2599  ; DAGISEL-GFX10-NEXT:   [[COPY124:%[0-9]+]]:vgpr_32 = COPY $vgpr11
2600  ; DAGISEL-GFX10-NEXT:   [[COPY125:%[0-9]+]]:vgpr_32 = COPY $vgpr10
2601  ; DAGISEL-GFX10-NEXT:   [[COPY126:%[0-9]+]]:vgpr_32 = COPY $vgpr9
2602  ; DAGISEL-GFX10-NEXT:   [[COPY127:%[0-9]+]]:vgpr_32 = COPY $vgpr8
2603  ; DAGISEL-GFX10-NEXT:   [[COPY128:%[0-9]+]]:sgpr_32 = COPY $sgpr35
2604  ; DAGISEL-GFX10-NEXT:   [[COPY129:%[0-9]+]]:sgpr_32 = COPY $sgpr34
2605  ; DAGISEL-GFX10-NEXT:   [[COPY130:%[0-9]+]]:sgpr_32 = COPY $sgpr33
2606  ; DAGISEL-GFX10-NEXT:   [[COPY131:%[0-9]+]]:sgpr_32 = COPY $sgpr32
2607  ; DAGISEL-GFX10-NEXT:   [[COPY132:%[0-9]+]]:sgpr_32 = COPY $sgpr31
2608  ; DAGISEL-GFX10-NEXT:   [[COPY133:%[0-9]+]]:sgpr_32 = COPY $sgpr30
2609  ; DAGISEL-GFX10-NEXT:   [[COPY134:%[0-9]+]]:sgpr_32 = COPY $sgpr29
2610  ; DAGISEL-GFX10-NEXT:   [[COPY135:%[0-9]+]]:sgpr_32 = COPY $sgpr28
2611  ; DAGISEL-GFX10-NEXT:   [[COPY136:%[0-9]+]]:sgpr_32 = COPY $sgpr27
2612  ; DAGISEL-GFX10-NEXT:   [[COPY137:%[0-9]+]]:sgpr_32 = COPY $sgpr26
2613  ; DAGISEL-GFX10-NEXT:   [[COPY138:%[0-9]+]]:sgpr_32 = COPY $sgpr25
2614  ; DAGISEL-GFX10-NEXT:   [[COPY139:%[0-9]+]]:sgpr_32 = COPY $sgpr24
2615  ; DAGISEL-GFX10-NEXT:   [[COPY140:%[0-9]+]]:sgpr_32 = COPY $sgpr23
2616  ; DAGISEL-GFX10-NEXT:   [[COPY141:%[0-9]+]]:sgpr_32 = COPY $sgpr22
2617  ; DAGISEL-GFX10-NEXT:   [[COPY142:%[0-9]+]]:sgpr_32 = COPY $sgpr21
2618  ; DAGISEL-GFX10-NEXT:   [[COPY143:%[0-9]+]]:sgpr_32 = COPY $sgpr20
2619  ; DAGISEL-GFX10-NEXT:   [[COPY144:%[0-9]+]]:sgpr_32 = COPY $sgpr19
2620  ; DAGISEL-GFX10-NEXT:   [[COPY145:%[0-9]+]]:sgpr_32 = COPY $sgpr18
2621  ; DAGISEL-GFX10-NEXT:   [[COPY146:%[0-9]+]]:sgpr_32 = COPY $sgpr17
2622  ; DAGISEL-GFX10-NEXT:   [[COPY147:%[0-9]+]]:sgpr_32 = COPY $sgpr16
2623  ; DAGISEL-GFX10-NEXT:   [[COPY148:%[0-9]+]]:sgpr_32 = COPY $sgpr15
2624  ; DAGISEL-GFX10-NEXT:   [[COPY149:%[0-9]+]]:sgpr_32 = COPY $sgpr14
2625  ; DAGISEL-GFX10-NEXT:   [[COPY150:%[0-9]+]]:sgpr_32 = COPY $sgpr13
2626  ; DAGISEL-GFX10-NEXT:   [[COPY151:%[0-9]+]]:sgpr_32 = COPY $sgpr12
2627  ; DAGISEL-GFX10-NEXT:   [[COPY152:%[0-9]+]]:sgpr_32 = COPY $sgpr11
2628  ; DAGISEL-GFX10-NEXT:   [[COPY153:%[0-9]+]]:sgpr_32 = COPY $sgpr10
2629  ; DAGISEL-GFX10-NEXT:   [[COPY154:%[0-9]+]]:sgpr_32 = COPY $sgpr9
2630  ; DAGISEL-GFX10-NEXT:   [[COPY155:%[0-9]+]]:sgpr_32 = COPY $sgpr8
2631  ; DAGISEL-GFX10-NEXT:   [[COPY156:%[0-9]+]]:sgpr_32 = COPY $sgpr7
2632  ; DAGISEL-GFX10-NEXT:   [[COPY157:%[0-9]+]]:sgpr_32 = COPY $sgpr6
2633  ; DAGISEL-GFX10-NEXT:   [[COPY158:%[0-9]+]]:sgpr_32 = COPY $sgpr5
2634  ; DAGISEL-GFX10-NEXT:   [[COPY159:%[0-9]+]]:sgpr_32 = COPY $sgpr4
2635  ; DAGISEL-GFX10-NEXT:   [[COPY160:%[0-9]+]]:sgpr_32 = COPY $sgpr3
2636  ; DAGISEL-GFX10-NEXT:   [[COPY161:%[0-9]+]]:sgpr_32 = COPY $sgpr2
2637  ; DAGISEL-GFX10-NEXT:   [[COPY162:%[0-9]+]]:sgpr_32 = COPY $sgpr1
2638  ; DAGISEL-GFX10-NEXT:   [[COPY163:%[0-9]+]]:sgpr_32 = COPY $sgpr0
2639  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKUP 0, 0, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
2640  ; DAGISEL-GFX10-NEXT:   [[COPY164:%[0-9]+]]:sgpr_128 = COPY $sgpr48_sgpr49_sgpr50_sgpr51
2641  ; DAGISEL-GFX10-NEXT:   [[COPY165:%[0-9]+]]:sreg_32 = COPY $sgpr32
2642  ; DAGISEL-GFX10-NEXT:   [[COPY166:%[0-9]+]]:vgpr_32 = COPY [[COPY131]]
2643  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY166]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 0, 0, 0, implicit $exec :: (store (s32) into stack, align 16, addrspace 5)
2644  ; DAGISEL-GFX10-NEXT:   [[COPY167:%[0-9]+]]:vgpr_32 = COPY [[COPY130]]
2645  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY167]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 4, 0, 0, implicit $exec :: (store (s32) into stack + 4, addrspace 5)
2646  ; DAGISEL-GFX10-NEXT:   [[COPY168:%[0-9]+]]:vgpr_32 = COPY [[COPY129]]
2647  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY168]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 8, 0, 0, implicit $exec :: (store (s32) into stack + 8, align 8, addrspace 5)
2648  ; DAGISEL-GFX10-NEXT:   [[COPY169:%[0-9]+]]:vgpr_32 = COPY [[COPY128]]
2649  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY169]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 12, 0, 0, implicit $exec :: (store (s32) into stack + 12, addrspace 5)
2650  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY127]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 16, 0, 0, implicit $exec :: (store (s32) into stack + 16, align 16, addrspace 5)
2651  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY126]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 20, 0, 0, implicit $exec :: (store (s32) into stack + 20, addrspace 5)
2652  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY125]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 24, 0, 0, implicit $exec :: (store (s32) into stack + 24, align 8, addrspace 5)
2653  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY124]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 28, 0, 0, implicit $exec :: (store (s32) into stack + 28, addrspace 5)
2654  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY123]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 32, 0, 0, implicit $exec :: (store (s32) into stack + 32, align 16, addrspace 5)
2655  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY122]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 36, 0, 0, implicit $exec :: (store (s32) into stack + 36, addrspace 5)
2656  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY121]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 40, 0, 0, implicit $exec :: (store (s32) into stack + 40, align 8, addrspace 5)
2657  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY120]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 44, 0, 0, implicit $exec :: (store (s32) into stack + 44, addrspace 5)
2658  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY119]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 48, 0, 0, implicit $exec :: (store (s32) into stack + 48, align 16, addrspace 5)
2659  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY118]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 52, 0, 0, implicit $exec :: (store (s32) into stack + 52, addrspace 5)
2660  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY117]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 56, 0, 0, implicit $exec :: (store (s32) into stack + 56, align 8, addrspace 5)
2661  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY116]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 60, 0, 0, implicit $exec :: (store (s32) into stack + 60, addrspace 5)
2662  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY115]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 64, 0, 0, implicit $exec :: (store (s32) into stack + 64, align 16, addrspace 5)
2663  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY114]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 68, 0, 0, implicit $exec :: (store (s32) into stack + 68, addrspace 5)
2664  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY113]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 72, 0, 0, implicit $exec :: (store (s32) into stack + 72, align 8, addrspace 5)
2665  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY112]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 76, 0, 0, implicit $exec :: (store (s32) into stack + 76, addrspace 5)
2666  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY111]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 80, 0, 0, implicit $exec :: (store (s32) into stack + 80, align 16, addrspace 5)
2667  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY110]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 84, 0, 0, implicit $exec :: (store (s32) into stack + 84, addrspace 5)
2668  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY109]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 88, 0, 0, implicit $exec :: (store (s32) into stack + 88, align 8, addrspace 5)
2669  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY108]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 92, 0, 0, implicit $exec :: (store (s32) into stack + 92, addrspace 5)
2670  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY107]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 96, 0, 0, implicit $exec :: (store (s32) into stack + 96, align 16, addrspace 5)
2671  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY106]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 100, 0, 0, implicit $exec :: (store (s32) into stack + 100, addrspace 5)
2672  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY105]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 104, 0, 0, implicit $exec :: (store (s32) into stack + 104, align 8, addrspace 5)
2673  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY104]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 108, 0, 0, implicit $exec :: (store (s32) into stack + 108, addrspace 5)
2674  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY103]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 112, 0, 0, implicit $exec :: (store (s32) into stack + 112, align 16, addrspace 5)
2675  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY102]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 116, 0, 0, implicit $exec :: (store (s32) into stack + 116, addrspace 5)
2676  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY101]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 120, 0, 0, implicit $exec :: (store (s32) into stack + 120, align 8, addrspace 5)
2677  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY100]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 124, 0, 0, implicit $exec :: (store (s32) into stack + 124, addrspace 5)
2678  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY99]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 128, 0, 0, implicit $exec :: (store (s32) into stack + 128, align 16, addrspace 5)
2679  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY98]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 132, 0, 0, implicit $exec :: (store (s32) into stack + 132, addrspace 5)
2680  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY97]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 136, 0, 0, implicit $exec :: (store (s32) into stack + 136, align 8, addrspace 5)
2681  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY96]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 140, 0, 0, implicit $exec :: (store (s32) into stack + 140, addrspace 5)
2682  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY95]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 144, 0, 0, implicit $exec :: (store (s32) into stack + 144, align 16, addrspace 5)
2683  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY94]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 148, 0, 0, implicit $exec :: (store (s32) into stack + 148, addrspace 5)
2684  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY93]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 152, 0, 0, implicit $exec :: (store (s32) into stack + 152, align 8, addrspace 5)
2685  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY92]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 156, 0, 0, implicit $exec :: (store (s32) into stack + 156, addrspace 5)
2686  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY91]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 160, 0, 0, implicit $exec :: (store (s32) into stack + 160, align 16, addrspace 5)
2687  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY90]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 164, 0, 0, implicit $exec :: (store (s32) into stack + 164, addrspace 5)
2688  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY89]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 168, 0, 0, implicit $exec :: (store (s32) into stack + 168, align 8, addrspace 5)
2689  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY88]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 172, 0, 0, implicit $exec :: (store (s32) into stack + 172, addrspace 5)
2690  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY87]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 176, 0, 0, implicit $exec :: (store (s32) into stack + 176, align 16, addrspace 5)
2691  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY86]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 180, 0, 0, implicit $exec :: (store (s32) into stack + 180, addrspace 5)
2692  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY85]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 184, 0, 0, implicit $exec :: (store (s32) into stack + 184, align 8, addrspace 5)
2693  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY84]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 188, 0, 0, implicit $exec :: (store (s32) into stack + 188, addrspace 5)
2694  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY83]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 192, 0, 0, implicit $exec :: (store (s32) into stack + 192, align 16, addrspace 5)
2695  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY82]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 196, 0, 0, implicit $exec :: (store (s32) into stack + 196, addrspace 5)
2696  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY81]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 200, 0, 0, implicit $exec :: (store (s32) into stack + 200, align 8, addrspace 5)
2697  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY80]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 204, 0, 0, implicit $exec :: (store (s32) into stack + 204, addrspace 5)
2698  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY79]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 208, 0, 0, implicit $exec :: (store (s32) into stack + 208, align 16, addrspace 5)
2699  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY78]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 212, 0, 0, implicit $exec :: (store (s32) into stack + 212, addrspace 5)
2700  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY77]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 216, 0, 0, implicit $exec :: (store (s32) into stack + 216, align 8, addrspace 5)
2701  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY76]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 220, 0, 0, implicit $exec :: (store (s32) into stack + 220, addrspace 5)
2702  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY75]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 224, 0, 0, implicit $exec :: (store (s32) into stack + 224, align 16, addrspace 5)
2703  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY74]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 228, 0, 0, implicit $exec :: (store (s32) into stack + 228, addrspace 5)
2704  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY73]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 232, 0, 0, implicit $exec :: (store (s32) into stack + 232, align 8, addrspace 5)
2705  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY72]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 236, 0, 0, implicit $exec :: (store (s32) into stack + 236, addrspace 5)
2706  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY71]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 240, 0, 0, implicit $exec :: (store (s32) into stack + 240, align 16, addrspace 5)
2707  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY70]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 244, 0, 0, implicit $exec :: (store (s32) into stack + 244, addrspace 5)
2708  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY69]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 248, 0, 0, implicit $exec :: (store (s32) into stack + 248, align 8, addrspace 5)
2709  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY68]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 252, 0, 0, implicit $exec :: (store (s32) into stack + 252, addrspace 5)
2710  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY67]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 256, 0, 0, implicit $exec :: (store (s32) into stack + 256, align 16, addrspace 5)
2711  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY66]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 260, 0, 0, implicit $exec :: (store (s32) into stack + 260, addrspace 5)
2712  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY65]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 264, 0, 0, implicit $exec :: (store (s32) into stack + 264, align 8, addrspace 5)
2713  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY64]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 268, 0, 0, implicit $exec :: (store (s32) into stack + 268, addrspace 5)
2714  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY63]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 272, 0, 0, implicit $exec :: (store (s32) into stack + 272, align 16, addrspace 5)
2715  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY62]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 276, 0, 0, implicit $exec :: (store (s32) into stack + 276, addrspace 5)
2716  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY61]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 280, 0, 0, implicit $exec :: (store (s32) into stack + 280, align 8, addrspace 5)
2717  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY60]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 284, 0, 0, implicit $exec :: (store (s32) into stack + 284, addrspace 5)
2718  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY59]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 288, 0, 0, implicit $exec :: (store (s32) into stack + 288, align 16, addrspace 5)
2719  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY58]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 292, 0, 0, implicit $exec :: (store (s32) into stack + 292, addrspace 5)
2720  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY57]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 296, 0, 0, implicit $exec :: (store (s32) into stack + 296, align 8, addrspace 5)
2721  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY56]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 300, 0, 0, implicit $exec :: (store (s32) into stack + 300, addrspace 5)
2722  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY55]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 304, 0, 0, implicit $exec :: (store (s32) into stack + 304, align 16, addrspace 5)
2723  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY54]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 308, 0, 0, implicit $exec :: (store (s32) into stack + 308, addrspace 5)
2724  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY53]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 312, 0, 0, implicit $exec :: (store (s32) into stack + 312, align 8, addrspace 5)
2725  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY52]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 316, 0, 0, implicit $exec :: (store (s32) into stack + 316, addrspace 5)
2726  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY51]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 320, 0, 0, implicit $exec :: (store (s32) into stack + 320, align 16, addrspace 5)
2727  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY50]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 324, 0, 0, implicit $exec :: (store (s32) into stack + 324, addrspace 5)
2728  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY49]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 328, 0, 0, implicit $exec :: (store (s32) into stack + 328, align 8, addrspace 5)
2729  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY48]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 332, 0, 0, implicit $exec :: (store (s32) into stack + 332, addrspace 5)
2730  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY47]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 336, 0, 0, implicit $exec :: (store (s32) into stack + 336, align 16, addrspace 5)
2731  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY46]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 340, 0, 0, implicit $exec :: (store (s32) into stack + 340, addrspace 5)
2732  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY45]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 344, 0, 0, implicit $exec :: (store (s32) into stack + 344, align 8, addrspace 5)
2733  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY44]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 348, 0, 0, implicit $exec :: (store (s32) into stack + 348, addrspace 5)
2734  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY43]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 352, 0, 0, implicit $exec :: (store (s32) into stack + 352, align 16, addrspace 5)
2735  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY42]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 356, 0, 0, implicit $exec :: (store (s32) into stack + 356, addrspace 5)
2736  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY41]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 360, 0, 0, implicit $exec :: (store (s32) into stack + 360, align 8, addrspace 5)
2737  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY40]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 364, 0, 0, implicit $exec :: (store (s32) into stack + 364, addrspace 5)
2738  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY39]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 368, 0, 0, implicit $exec :: (store (s32) into stack + 368, align 16, addrspace 5)
2739  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY38]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 372, 0, 0, implicit $exec :: (store (s32) into stack + 372, addrspace 5)
2740  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY37]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 376, 0, 0, implicit $exec :: (store (s32) into stack + 376, align 8, addrspace 5)
2741  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY36]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 380, 0, 0, implicit $exec :: (store (s32) into stack + 380, addrspace 5)
2742  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY35]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 384, 0, 0, implicit $exec :: (store (s32) into stack + 384, align 16, addrspace 5)
2743  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY34]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 388, 0, 0, implicit $exec :: (store (s32) into stack + 388, addrspace 5)
2744  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY33]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 392, 0, 0, implicit $exec :: (store (s32) into stack + 392, align 8, addrspace 5)
2745  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY32]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 396, 0, 0, implicit $exec :: (store (s32) into stack + 396, addrspace 5)
2746  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY31]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 400, 0, 0, implicit $exec :: (store (s32) into stack + 400, align 16, addrspace 5)
2747  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY30]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 404, 0, 0, implicit $exec :: (store (s32) into stack + 404, addrspace 5)
2748  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY29]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 408, 0, 0, implicit $exec :: (store (s32) into stack + 408, align 8, addrspace 5)
2749  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY28]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 412, 0, 0, implicit $exec :: (store (s32) into stack + 412, addrspace 5)
2750  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY27]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 416, 0, 0, implicit $exec :: (store (s32) into stack + 416, align 16, addrspace 5)
2751  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY26]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 420, 0, 0, implicit $exec :: (store (s32) into stack + 420, addrspace 5)
2752  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY25]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 424, 0, 0, implicit $exec :: (store (s32) into stack + 424, align 8, addrspace 5)
2753  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY24]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 428, 0, 0, implicit $exec :: (store (s32) into stack + 428, addrspace 5)
2754  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY23]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 432, 0, 0, implicit $exec :: (store (s32) into stack + 432, align 16, addrspace 5)
2755  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY22]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 436, 0, 0, implicit $exec :: (store (s32) into stack + 436, addrspace 5)
2756  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY21]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 440, 0, 0, implicit $exec :: (store (s32) into stack + 440, align 8, addrspace 5)
2757  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY20]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 444, 0, 0, implicit $exec :: (store (s32) into stack + 444, addrspace 5)
2758  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY19]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 448, 0, 0, implicit $exec :: (store (s32) into stack + 448, align 16, addrspace 5)
2759  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY18]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 452, 0, 0, implicit $exec :: (store (s32) into stack + 452, addrspace 5)
2760  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY17]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 456, 0, 0, implicit $exec :: (store (s32) into stack + 456, align 8, addrspace 5)
2761  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY16]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 460, 0, 0, implicit $exec :: (store (s32) into stack + 460, addrspace 5)
2762  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY15]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 464, 0, 0, implicit $exec :: (store (s32) into stack + 464, align 16, addrspace 5)
2763  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY14]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 468, 0, 0, implicit $exec :: (store (s32) into stack + 468, addrspace 5)
2764  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY13]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 472, 0, 0, implicit $exec :: (store (s32) into stack + 472, align 8, addrspace 5)
2765  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY12]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 476, 0, 0, implicit $exec :: (store (s32) into stack + 476, addrspace 5)
2766  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY11]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 480, 0, 0, implicit $exec :: (store (s32) into stack + 480, align 16, addrspace 5)
2767  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY10]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 484, 0, 0, implicit $exec :: (store (s32) into stack + 484, addrspace 5)
2768  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY9]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 488, 0, 0, implicit $exec :: (store (s32) into stack + 488, align 8, addrspace 5)
2769  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY8]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 492, 0, 0, implicit $exec :: (store (s32) into stack + 492, addrspace 5)
2770  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY7]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 496, 0, 0, implicit $exec :: (store (s32) into stack + 496, align 16, addrspace 5)
2771  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY6]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 500, 0, 0, implicit $exec :: (store (s32) into stack + 500, addrspace 5)
2772  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY5]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 504, 0, 0, implicit $exec :: (store (s32) into stack + 504, align 8, addrspace 5)
2773  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY4]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 508, 0, 0, implicit $exec :: (store (s32) into stack + 508, addrspace 5)
2774  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY3]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 512, 0, 0, implicit $exec :: (store (s32) into stack + 512, align 16, addrspace 5)
2775  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY2]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 516, 0, 0, implicit $exec :: (store (s32) into stack + 516, addrspace 5)
2776  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY1]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 520, 0, 0, implicit $exec :: (store (s32) into stack + 520, align 8, addrspace 5)
2777  ; DAGISEL-GFX10-NEXT:   BUFFER_STORE_DWORD_OFFSET [[COPY]], $sgpr48_sgpr49_sgpr50_sgpr51, [[COPY165]], 524, 0, 0, implicit $exec :: (store (s32) into stack + 524, addrspace 5)
2778  ; DAGISEL-GFX10-NEXT:   [[SI_PC_ADD_REL_OFFSET:%[0-9]+]]:sreg_64 = SI_PC_ADD_REL_OFFSET target-flags(amdgpu-gotprel32-lo) @use, target-flags(amdgpu-gotprel32-hi) @use, implicit-def dead $scc
2779  ; DAGISEL-GFX10-NEXT:   [[S_LOAD_DWORDX2_IMM:%[0-9]+]]:sreg_64_xexec = S_LOAD_DWORDX2_IMM killed [[SI_PC_ADD_REL_OFFSET]], 0, 0 :: (dereferenceable invariant load (s64) from got, addrspace 4)
2780  ; DAGISEL-GFX10-NEXT:   $sgpr0_sgpr1_sgpr2_sgpr3 = COPY [[COPY164]]
2781  ; DAGISEL-GFX10-NEXT:   $vgpr0 = COPY [[COPY163]]
2782  ; DAGISEL-GFX10-NEXT:   $vgpr1 = COPY [[COPY162]]
2783  ; DAGISEL-GFX10-NEXT:   $vgpr2 = COPY [[COPY161]]
2784  ; DAGISEL-GFX10-NEXT:   $vgpr3 = COPY [[COPY160]]
2785  ; DAGISEL-GFX10-NEXT:   $vgpr4 = COPY [[COPY159]]
2786  ; DAGISEL-GFX10-NEXT:   $vgpr5 = COPY [[COPY158]]
2787  ; DAGISEL-GFX10-NEXT:   $vgpr6 = COPY [[COPY157]]
2788  ; DAGISEL-GFX10-NEXT:   $vgpr7 = COPY [[COPY156]]
2789  ; DAGISEL-GFX10-NEXT:   $vgpr8 = COPY [[COPY155]]
2790  ; DAGISEL-GFX10-NEXT:   $vgpr9 = COPY [[COPY154]]
2791  ; DAGISEL-GFX10-NEXT:   $vgpr10 = COPY [[COPY153]]
2792  ; DAGISEL-GFX10-NEXT:   $vgpr11 = COPY [[COPY152]]
2793  ; DAGISEL-GFX10-NEXT:   $vgpr12 = COPY [[COPY151]]
2794  ; DAGISEL-GFX10-NEXT:   $vgpr13 = COPY [[COPY150]]
2795  ; DAGISEL-GFX10-NEXT:   $vgpr14 = COPY [[COPY149]]
2796  ; DAGISEL-GFX10-NEXT:   $vgpr15 = COPY [[COPY148]]
2797  ; DAGISEL-GFX10-NEXT:   $vgpr16 = COPY [[COPY147]]
2798  ; DAGISEL-GFX10-NEXT:   $vgpr17 = COPY [[COPY146]]
2799  ; DAGISEL-GFX10-NEXT:   $vgpr18 = COPY [[COPY145]]
2800  ; DAGISEL-GFX10-NEXT:   $vgpr19 = COPY [[COPY144]]
2801  ; DAGISEL-GFX10-NEXT:   $vgpr20 = COPY [[COPY143]]
2802  ; DAGISEL-GFX10-NEXT:   $vgpr21 = COPY [[COPY142]]
2803  ; DAGISEL-GFX10-NEXT:   $vgpr22 = COPY [[COPY141]]
2804  ; DAGISEL-GFX10-NEXT:   $vgpr23 = COPY [[COPY140]]
2805  ; DAGISEL-GFX10-NEXT:   $vgpr24 = COPY [[COPY139]]
2806  ; DAGISEL-GFX10-NEXT:   $vgpr25 = COPY [[COPY138]]
2807  ; DAGISEL-GFX10-NEXT:   $vgpr26 = COPY [[COPY137]]
2808  ; DAGISEL-GFX10-NEXT:   $vgpr27 = COPY [[COPY136]]
2809  ; DAGISEL-GFX10-NEXT:   $vgpr28 = COPY [[COPY135]]
2810  ; DAGISEL-GFX10-NEXT:   $vgpr29 = COPY [[COPY134]]
2811  ; DAGISEL-GFX10-NEXT:   $vgpr30 = COPY [[COPY133]]
2812  ; DAGISEL-GFX10-NEXT:   $vgpr31 = COPY [[COPY132]]
2813  ; DAGISEL-GFX10-NEXT:   $sgpr30_sgpr31 = SI_CALL killed [[S_LOAD_DWORDX2_IMM]], @use, csr_amdgpu_si_gfx, implicit $sgpr0_sgpr1_sgpr2_sgpr3, implicit $vgpr0, implicit $vgpr1, implicit $vgpr2, implicit $vgpr3, implicit $vgpr4, implicit $vgpr5, implicit $vgpr6, implicit $vgpr7, implicit $vgpr8, implicit $vgpr9, implicit $vgpr10, implicit $vgpr11, implicit $vgpr12, implicit $vgpr13, implicit $vgpr14, implicit $vgpr15, implicit $vgpr16, implicit $vgpr17, implicit $vgpr18, implicit $vgpr19, implicit $vgpr20, implicit $vgpr21, implicit $vgpr22, implicit $vgpr23, implicit $vgpr24, implicit $vgpr25, implicit $vgpr26, implicit $vgpr27, implicit $vgpr28, implicit $vgpr29, implicit $vgpr30, implicit $vgpr31
2814  ; DAGISEL-GFX10-NEXT:   ADJCALLSTACKDOWN 0, 528, implicit-def dead $scc, implicit-def $sgpr32, implicit $sgpr32
2815  ; DAGISEL-GFX10-NEXT:   S_ENDPGM 0
2816  call amdgpu_gfx void @use(<36 x i32> %a, <128 x i32> %b)
2817  ret void
2818}
2819
2820