1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2
2 # RUN: llc -mtriple=riscv32 -x mir -run-pass=prologepilog -verify-machineinstrs < %s \
3 # RUN: | FileCheck -check-prefixes=CHECK-RV32-NO-COM %s
4 # RUN: llc -mtriple=riscv32 -mattr=+c -x mir -run-pass=prologepilog \
5 # RUN: -verify-machineinstrs < %s | FileCheck -check-prefixes=CHECK-RV32-COM %s
6 # RUN: llc -mtriple=riscv64 -x mir -run-pass=prologepilog -verify-machineinstrs < %s \
7 # RUN: | FileCheck -check-prefixes=CHECK-RV64-NO-COM %s
8 # RUN: llc -mtriple=riscv64 -mattr=+c -x mir -run-pass=prologepilog \
9 # RUN: -verify-machineinstrs < %s | FileCheck -check-prefixes=CHECK-RV64-COM %s
11 define dso_local void @_Z15stack_size_2048v() {
16 declare dso_local void @_Z6calleePi(ptr noundef)
18 define dso_local void @_Z15stack_size_4096v() {
23 define dso_local void @_Z15stack_size_8192v() {
30 name: _Z15stack_size_2048v
32 tracksRegLiveness: true
38 - { id: 0, size: 2048, alignment: 4, local-offset: -2048 }
44 ; CHECK-RV32-NO-COM-LABEL: name: _Z15stack_size_2048v
45 ; CHECK-RV32-NO-COM: liveins: $x1
46 ; CHECK-RV32-NO-COM-NEXT: {{ $}}
47 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2032
48 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2032
49 ; CHECK-RV32-NO-COM-NEXT: SW killed $x1, $x2, 2028 :: (store (s32) into %stack.1)
50 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -4
51 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -32
52 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2064
53 ; CHECK-RV32-NO-COM-NEXT: renamable $x10 = ADDI $x2, 12
54 ; CHECK-RV32-NO-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
55 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 32
56 ; CHECK-RV32-NO-COM-NEXT: $x1 = LW $x2, 2028 :: (load (s32) from %stack.1)
57 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
58 ; CHECK-RV32-NO-COM-NEXT: PseudoRET
60 ; CHECK-RV32-COM-LABEL: name: _Z15stack_size_2048v
61 ; CHECK-RV32-COM: liveins: $x1
62 ; CHECK-RV32-COM-NEXT: {{ $}}
63 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup ADDI $x2, -256
64 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 256
65 ; CHECK-RV32-COM-NEXT: SW killed $x1, $x2, 252 :: (store (s32) into %stack.1)
66 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -4
67 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup ADDI $x2, -1808
68 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2064
69 ; CHECK-RV32-COM-NEXT: renamable $x10 = ADDI $x2, 12
70 ; CHECK-RV32-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
71 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADDI $x2, 1808
72 ; CHECK-RV32-COM-NEXT: $x1 = LW $x2, 252 :: (load (s32) from %stack.1)
73 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADDI $x2, 256
74 ; CHECK-RV32-COM-NEXT: PseudoRET
76 ; CHECK-RV64-NO-COM-LABEL: name: _Z15stack_size_2048v
77 ; CHECK-RV64-NO-COM: liveins: $x1
78 ; CHECK-RV64-NO-COM-NEXT: {{ $}}
79 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2032
80 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2032
81 ; CHECK-RV64-NO-COM-NEXT: SD killed $x1, $x2, 2024 :: (store (s64) into %stack.1)
82 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -8
83 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -32
84 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2064
85 ; CHECK-RV64-NO-COM-NEXT: renamable $x10 = ADDI $x2, 8
86 ; CHECK-RV64-NO-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
87 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 32
88 ; CHECK-RV64-NO-COM-NEXT: $x1 = LD $x2, 2024 :: (load (s64) from %stack.1)
89 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
90 ; CHECK-RV64-NO-COM-NEXT: PseudoRET
92 ; CHECK-RV64-COM-LABEL: name: _Z15stack_size_2048v
93 ; CHECK-RV64-COM: liveins: $x1
94 ; CHECK-RV64-COM-NEXT: {{ $}}
95 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup ADDI $x2, -496
96 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 496
97 ; CHECK-RV64-COM-NEXT: SD killed $x1, $x2, 488 :: (store (s64) into %stack.1)
98 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -8
99 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup ADDI $x2, -1568
100 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2064
101 ; CHECK-RV64-COM-NEXT: renamable $x10 = ADDI $x2, 8
102 ; CHECK-RV64-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
103 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADDI $x2, 1568
104 ; CHECK-RV64-COM-NEXT: $x1 = LD $x2, 488 :: (load (s64) from %stack.1)
105 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADDI $x2, 496
106 ; CHECK-RV64-COM-NEXT: PseudoRET
107 ADJCALLSTACKDOWN 0, 0, implicit-def dead $x2, implicit $x2
108 renamable $x10 = ADDI %stack.0, 0
109 PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
110 ADJCALLSTACKUP 0, 0, implicit-def dead $x2, implicit $x2
115 name: _Z15stack_size_4096v
117 tracksRegLiveness: true
123 - { id: 0, size: 4096, alignment: 4, local-offset: -4096 }
129 ; CHECK-RV32-NO-COM-LABEL: name: _Z15stack_size_4096v
130 ; CHECK-RV32-NO-COM: liveins: $x1
131 ; CHECK-RV32-NO-COM-NEXT: {{ $}}
132 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2032
133 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2032
134 ; CHECK-RV32-NO-COM-NEXT: SW killed $x1, $x2, 2028 :: (store (s32) into %stack.1)
135 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -4
136 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2048
137 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup ADDI killed $x2, -32
138 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 4112
139 ; CHECK-RV32-NO-COM-NEXT: renamable $x10 = ADDI $x2, 12
140 ; CHECK-RV32-NO-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
141 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
142 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADDI killed $x2, 48
143 ; CHECK-RV32-NO-COM-NEXT: $x1 = LW $x2, 2028 :: (load (s32) from %stack.1)
144 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
145 ; CHECK-RV32-NO-COM-NEXT: PseudoRET
147 ; CHECK-RV32-COM-LABEL: name: _Z15stack_size_4096v
148 ; CHECK-RV32-COM: liveins: $x1
149 ; CHECK-RV32-COM-NEXT: {{ $}}
150 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup ADDI $x2, -256
151 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 256
152 ; CHECK-RV32-COM-NEXT: SW killed $x1, $x2, 252 :: (store (s32) into %stack.1)
153 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -4
154 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup ADDI $x2, -2048
155 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup ADDI killed $x2, -1808
156 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 4112
157 ; CHECK-RV32-COM-NEXT: renamable $x10 = ADDI $x2, 12
158 ; CHECK-RV32-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
159 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
160 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADDI killed $x2, 1824
161 ; CHECK-RV32-COM-NEXT: $x1 = LW $x2, 252 :: (load (s32) from %stack.1)
162 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADDI $x2, 256
163 ; CHECK-RV32-COM-NEXT: PseudoRET
165 ; CHECK-RV64-NO-COM-LABEL: name: _Z15stack_size_4096v
166 ; CHECK-RV64-NO-COM: liveins: $x1
167 ; CHECK-RV64-NO-COM-NEXT: {{ $}}
168 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2032
169 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2032
170 ; CHECK-RV64-NO-COM-NEXT: SD killed $x1, $x2, 2024 :: (store (s64) into %stack.1)
171 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -8
172 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2048
173 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup ADDI killed $x2, -32
174 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 4112
175 ; CHECK-RV64-NO-COM-NEXT: renamable $x10 = ADDI $x2, 8
176 ; CHECK-RV64-NO-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
177 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
178 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADDI killed $x2, 48
179 ; CHECK-RV64-NO-COM-NEXT: $x1 = LD $x2, 2024 :: (load (s64) from %stack.1)
180 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
181 ; CHECK-RV64-NO-COM-NEXT: PseudoRET
183 ; CHECK-RV64-COM-LABEL: name: _Z15stack_size_4096v
184 ; CHECK-RV64-COM: liveins: $x1
185 ; CHECK-RV64-COM-NEXT: {{ $}}
186 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup ADDI $x2, -496
187 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 496
188 ; CHECK-RV64-COM-NEXT: SD killed $x1, $x2, 488 :: (store (s64) into %stack.1)
189 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -8
190 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup ADDI $x2, -2048
191 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup ADDI killed $x2, -1568
192 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 4112
193 ; CHECK-RV64-COM-NEXT: renamable $x10 = ADDI $x2, 8
194 ; CHECK-RV64-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
195 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
196 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADDI killed $x2, 1584
197 ; CHECK-RV64-COM-NEXT: $x1 = LD $x2, 488 :: (load (s64) from %stack.1)
198 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADDI $x2, 496
199 ; CHECK-RV64-COM-NEXT: PseudoRET
200 ADJCALLSTACKDOWN 0, 0, implicit-def dead $x2, implicit $x2
201 renamable $x10 = ADDI %stack.0, 0
202 PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
203 ADJCALLSTACKUP 0, 0, implicit-def dead $x2, implicit $x2
208 name: _Z15stack_size_8192v
210 tracksRegLiveness: true
216 - { id: 0, size: 8192, alignment: 4, local-offset: -8192 }
222 ; CHECK-RV32-NO-COM-LABEL: name: _Z15stack_size_8192v
223 ; CHECK-RV32-NO-COM: liveins: $x1
224 ; CHECK-RV32-NO-COM-NEXT: {{ $}}
225 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2032
226 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2032
227 ; CHECK-RV32-NO-COM-NEXT: SW killed $x1, $x2, 2028 :: (store (s32) into %stack.1)
228 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -4
229 ; CHECK-RV32-NO-COM-NEXT: $x10 = frame-setup LUI 2
230 ; CHECK-RV32-NO-COM-NEXT: $x10 = frame-setup ADDI killed $x10, -2016
231 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-setup SUB $x2, killed $x10
232 ; CHECK-RV32-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 8208
233 ; CHECK-RV32-NO-COM-NEXT: renamable $x10 = ADDI $x2, 12
234 ; CHECK-RV32-NO-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
235 ; CHECK-RV32-NO-COM-NEXT: $x10 = frame-destroy LUI 2
236 ; CHECK-RV32-NO-COM-NEXT: $x10 = frame-destroy ADDI killed $x10, -2016
237 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADD $x2, killed $x10
238 ; CHECK-RV32-NO-COM-NEXT: $x1 = LW $x2, 2028 :: (load (s32) from %stack.1)
239 ; CHECK-RV32-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
240 ; CHECK-RV32-NO-COM-NEXT: PseudoRET
242 ; CHECK-RV32-COM-LABEL: name: _Z15stack_size_8192v
243 ; CHECK-RV32-COM: liveins: $x1
244 ; CHECK-RV32-COM-NEXT: {{ $}}
245 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup ADDI $x2, -256
246 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 256
247 ; CHECK-RV32-COM-NEXT: SW killed $x1, $x2, 252 :: (store (s32) into %stack.1)
248 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -4
249 ; CHECK-RV32-COM-NEXT: $x10 = frame-setup LUI 2
250 ; CHECK-RV32-COM-NEXT: $x10 = frame-setup ADDI killed $x10, -240
251 ; CHECK-RV32-COM-NEXT: $x2 = frame-setup SUB $x2, killed $x10
252 ; CHECK-RV32-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 8208
253 ; CHECK-RV32-COM-NEXT: renamable $x10 = ADDI $x2, 12
254 ; CHECK-RV32-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
255 ; CHECK-RV32-COM-NEXT: $x10 = frame-destroy LUI 2
256 ; CHECK-RV32-COM-NEXT: $x10 = frame-destroy ADDI killed $x10, -240
257 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADD $x2, killed $x10
258 ; CHECK-RV32-COM-NEXT: $x1 = LW $x2, 252 :: (load (s32) from %stack.1)
259 ; CHECK-RV32-COM-NEXT: $x2 = frame-destroy ADDI $x2, 256
260 ; CHECK-RV32-COM-NEXT: PseudoRET
262 ; CHECK-RV64-NO-COM-LABEL: name: _Z15stack_size_8192v
263 ; CHECK-RV64-NO-COM: liveins: $x1
264 ; CHECK-RV64-NO-COM-NEXT: {{ $}}
265 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup ADDI $x2, -2032
266 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 2032
267 ; CHECK-RV64-NO-COM-NEXT: SD killed $x1, $x2, 2024 :: (store (s64) into %stack.1)
268 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -8
269 ; CHECK-RV64-NO-COM-NEXT: $x10 = frame-setup LUI 2
270 ; CHECK-RV64-NO-COM-NEXT: $x10 = frame-setup ADDIW killed $x10, -2016
271 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-setup SUB $x2, killed $x10
272 ; CHECK-RV64-NO-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 8208
273 ; CHECK-RV64-NO-COM-NEXT: renamable $x10 = ADDI $x2, 8
274 ; CHECK-RV64-NO-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
275 ; CHECK-RV64-NO-COM-NEXT: $x10 = frame-destroy LUI 2
276 ; CHECK-RV64-NO-COM-NEXT: $x10 = frame-destroy ADDIW killed $x10, -2016
277 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADD $x2, killed $x10
278 ; CHECK-RV64-NO-COM-NEXT: $x1 = LD $x2, 2024 :: (load (s64) from %stack.1)
279 ; CHECK-RV64-NO-COM-NEXT: $x2 = frame-destroy ADDI $x2, 2032
280 ; CHECK-RV64-NO-COM-NEXT: PseudoRET
282 ; CHECK-RV64-COM-LABEL: name: _Z15stack_size_8192v
283 ; CHECK-RV64-COM: liveins: $x1
284 ; CHECK-RV64-COM-NEXT: {{ $}}
285 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup ADDI $x2, -496
286 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 496
287 ; CHECK-RV64-COM-NEXT: SD killed $x1, $x2, 488 :: (store (s64) into %stack.1)
288 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION offset $x1, -8
289 ; CHECK-RV64-COM-NEXT: $x10 = frame-setup LUI 2
290 ; CHECK-RV64-COM-NEXT: $x10 = frame-setup ADDIW killed $x10, -480
291 ; CHECK-RV64-COM-NEXT: $x2 = frame-setup SUB $x2, killed $x10
292 ; CHECK-RV64-COM-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 8208
293 ; CHECK-RV64-COM-NEXT: renamable $x10 = ADDI $x2, 8
294 ; CHECK-RV64-COM-NEXT: PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
295 ; CHECK-RV64-COM-NEXT: $x10 = frame-destroy LUI 2
296 ; CHECK-RV64-COM-NEXT: $x10 = frame-destroy ADDIW killed $x10, -480
297 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADD $x2, killed $x10
298 ; CHECK-RV64-COM-NEXT: $x1 = LD $x2, 488 :: (load (s64) from %stack.1)
299 ; CHECK-RV64-COM-NEXT: $x2 = frame-destroy ADDI $x2, 496
300 ; CHECK-RV64-COM-NEXT: PseudoRET
301 ADJCALLSTACKDOWN 0, 0, implicit-def dead $x2, implicit $x2
302 renamable $x10 = ADDI %stack.0, 0
303 PseudoCALL target-flags(riscv-call) @_Z6calleePi, csr_ilp32_lp64, implicit-def dead $x1, implicit killed $x10, implicit-def $x2
304 ADJCALLSTACKUP 0, 0, implicit-def dead $x2, implicit $x2