Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang...
[llvm-project.git] / llvm / test / CodeGen / RISCV / stack-inst-compress.mir
blob6721ff11d99b7bb530ddc64cc1f5c41fd2fef02f
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
10 --- |
11   define dso_local void @_Z15stack_size_2048v() {
12   entry:
13     ret void
14   }
16   declare dso_local void @_Z6calleePi(ptr noundef)
18   define dso_local void @_Z15stack_size_4096v() {
19   entry:
20     ret void
21   }
23   define dso_local void @_Z15stack_size_8192v() {
24   entry:
25     ret void
26   }
28 ...
29 ---
30 name:            _Z15stack_size_2048v
31 alignment:       2
32 tracksRegLiveness: true
33 frameInfo:
34   maxAlignment:    4
35   hasCalls:        true
36   localFrameSize:  2048
37 stack:
38   - { id: 0, size: 2048, alignment: 4, local-offset: -2048 }
39 machineFunctionInfo:
40   varArgsFrameIndex: 0
41   varArgsSaveSize: 0
42 body:             |
43   bb.0.entry:
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
59     ;
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
75     ;
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
91     ;
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
111     PseudoRET
115 name:            _Z15stack_size_4096v
116 alignment:       2
117 tracksRegLiveness: true
118 frameInfo:
119   maxAlignment:    4
120   hasCalls:        true
121   localFrameSize:  4096
122 stack:
123   - { id: 0, size: 4096, alignment: 4, local-offset: -4096 }
124 machineFunctionInfo:
125   varArgsFrameIndex: 0
126   varArgsSaveSize: 0
127 body:             |
128   bb.0.entry:
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
146     ;
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
164     ;
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
182     ;
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
204     PseudoRET
208 name:            _Z15stack_size_8192v
209 alignment:       2
210 tracksRegLiveness: true
211 frameInfo:
212   maxAlignment:    4
213   hasCalls:        true
214   localFrameSize:  8192
215 stack:
216   - { id: 0, size: 8192, alignment: 4, local-offset: -8192 }
217 machineFunctionInfo:
218   varArgsFrameIndex: 0
219   varArgsSaveSize: 0
220 body:             |
221   bb.0.entry:
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
241     ;
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
261     ;
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
281     ;
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
305     PseudoRET