[ORC] Fix bug in source file name finding in DebuggerSupportPlugin.
[llvm-project.git] / llvm / test / CodeGen / RISCV / GlobalISel / legalizer / legalize-fptoi-rv32-libcall.mir
blob06ebc61eea099d76f17ed397d03ce76b3f051390
1 # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2 # RUN: llc -mtriple=riscv32 -mattr=-d -mattr=-f -run-pass=legalizer %s -o - \
3 # RUN: | FileCheck %s
5 ---
6 name:            fptosi_s1_s32
7 body:             |
8   bb.1:
9     liveins: $x10
10     ; CHECK-LABEL: name: fptosi_s1_s32
11     ; CHECK: liveins: $x10
12     ; CHECK-NEXT: {{  $}}
13     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
14     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
15     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
16     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixsfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
17     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
18     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
19     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
20     ; CHECK-NEXT: PseudoRET implicit $x10
21     %0:_(s32) = COPY $x10
22     %1:_(s1) = G_FPTOSI %0:_(s32)
23     %2:_(s32) = G_ANYEXT %1:_(s1)
24     $x10 = COPY %2:_(s32)
25     PseudoRET implicit $x10
26 ...
27 ---
28 name:            fptoui_s1_s32
29 body:             |
30   bb.1:
31     liveins: $x10
32     ; CHECK-LABEL: name: fptoui_s1_s32
33     ; CHECK: liveins: $x10
34     ; CHECK-NEXT: {{  $}}
35     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
36     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
37     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
38     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunssfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
39     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
40     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
41     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
42     ; CHECK-NEXT: PseudoRET implicit $x10
43     %0:_(s32) = COPY $x10
44     %1:_(s1) = G_FPTOUI %0:_(s32)
45     %2:_(s32) = G_ANYEXT %1:_(s1)
46     $x10 = COPY %2:_(s32)
47     PseudoRET implicit $x10
48 ...
49 ---
50 name:            fptosi_s8_s32
51 body:             |
52   bb.1:
53     liveins: $x10
54     ; CHECK-LABEL: name: fptosi_s8_s32
55     ; CHECK: liveins: $x10
56     ; CHECK-NEXT: {{  $}}
57     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
58     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
59     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
60     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixsfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
61     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
62     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
63     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
64     ; CHECK-NEXT: PseudoRET implicit $x10
65     %0:_(s32) = COPY $x10
66     %1:_(s8) = G_FPTOSI %0:_(s32)
67     %2:_(s32) = G_ANYEXT %1:_(s8)
68     $x10 = COPY %2:_(s32)
69     PseudoRET implicit $x10
71 ...
72 ---
73 name:            fptoui_s8_s32
74 body:             |
75   bb.1:
76     liveins: $x10
77     ; CHECK-LABEL: name: fptoui_s8_s32
78     ; CHECK: liveins: $x10
79     ; CHECK-NEXT: {{  $}}
80     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
81     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
82     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
83     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunssfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
84     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
85     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
86     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
87     ; CHECK-NEXT: PseudoRET implicit $x10
88     %0:_(s32) = COPY $x10
89     %1:_(s8) = G_FPTOUI %0:_(s32)
90     %2:_(s32) = G_ANYEXT %1:_(s8)
91     $x10 = COPY %2:_(s32)
92     PseudoRET implicit $x10
94 ...
95 ---
96 name:            fptosi_s16_s32
97 body:             |
98   bb.1:
99     liveins: $x10
100     ; CHECK-LABEL: name: fptosi_s16_s32
101     ; CHECK: liveins: $x10
102     ; CHECK-NEXT: {{  $}}
103     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
104     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
105     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
106     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixsfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
107     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
108     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
109     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
110     ; CHECK-NEXT: PseudoRET implicit $x10
111     %0:_(s32) = COPY $x10
112     %1:_(s16) = G_FPTOSI %0:_(s32)
113     %2:_(s32) = G_ANYEXT %1:_(s16)
114     $x10 = COPY %2:_(s32)
115     PseudoRET implicit $x10
119 name:            fptoui_s16_s32
120 body:             |
121   bb.1:
122     liveins: $x10
123     ; CHECK-LABEL: name: fptoui_s16_s32
124     ; CHECK: liveins: $x10
125     ; CHECK-NEXT: {{  $}}
126     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
127     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
128     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
129     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunssfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
130     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
131     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
132     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
133     ; CHECK-NEXT: PseudoRET implicit $x10
134     %0:_(s32) = COPY $x10
135     %1:_(s16) = G_FPTOUI %0:_(s32)
136     %2:_(s32) = G_ANYEXT %1:_(s16)
137     $x10 = COPY %2:_(s32)
138     PseudoRET implicit $x10
142 name:            fptosi_s32_s32
143 body:             |
144   bb.1:
145     liveins: $x10
146     ; CHECK-LABEL: name: fptosi_s32_s32
147     ; CHECK: liveins: $x10
148     ; CHECK-NEXT: {{  $}}
149     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
150     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
151     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
152     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixsfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
153     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
154     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
155     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
156     ; CHECK-NEXT: PseudoRET implicit $x10
157     %0:_(s32) = COPY $x10
158     %1:_(s32) = G_FPTOSI %0:_(s32)
159     $x10 = COPY %1:_(s32)
160     PseudoRET implicit $x10
164 name:            fptoui_s32_s32
165 body:             |
166   bb.1:
167     liveins: $x10
168     ; CHECK-LABEL: name: fptoui_s32_s32
169     ; CHECK: liveins: $x10
170     ; CHECK-NEXT: {{  $}}
171     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
172     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
173     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
174     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunssfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit-def $x10
175     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
176     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x10
177     ; CHECK-NEXT: $x10 = COPY [[COPY1]](s32)
178     ; CHECK-NEXT: PseudoRET implicit $x10
179     %0:_(s32) = COPY $x10
180     %1:_(s32) = G_FPTOUI %0:_(s32)
181     $x10 = COPY %1:_(s32)
182     PseudoRET implicit $x10
186 name:            fptosi_s1_s64
187 body:             |
188   bb.1:
189     liveins: $x10, $x11
190     ; CHECK-LABEL: name: fptosi_s1_s64
191     ; CHECK: liveins: $x10, $x11
192     ; CHECK-NEXT: {{  $}}
193     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
194     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
195     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
196     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
197     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
198     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
199     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
200     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
201     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
202     ; CHECK-NEXT: PseudoRET implicit $x10
203     %1:_(s32) = COPY $x10
204     %2:_(s32) = COPY $x11
205     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
206     %3:_(s1) = G_FPTOSI %0:_(s64)
207     %4:_(s32) = G_ANYEXT %3:_(s1)
208     $x10 = COPY %4:_(s32)
209     PseudoRET implicit $x10
213 name:            fptoui_s1_s64
214 body:             |
215   bb.1:
216     liveins: $x10, $x11
217     ; CHECK-LABEL: name: fptoui_s1_s64
218     ; CHECK: liveins: $x10, $x11
219     ; CHECK-NEXT: {{  $}}
220     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
221     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
222     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
223     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
224     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
225     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunsdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
226     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
227     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
228     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
229     ; CHECK-NEXT: PseudoRET implicit $x10
230     %1:_(s32) = COPY $x10
231     %2:_(s32) = COPY $x11
232     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
233     %3:_(s1) = G_FPTOUI %0:_(s64)
234     %4:_(s32) = G_ANYEXT %3:_(s1)
235     $x10 = COPY %4:_(s32)
236     PseudoRET implicit $x10
240 name:            fptosi_s8_s64
241 body:             |
242   bb.1:
243     liveins: $x10, $x11
244     ; CHECK-LABEL: name: fptosi_s8_s64
245     ; CHECK: liveins: $x10, $x11
246     ; CHECK-NEXT: {{  $}}
247     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
248     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
249     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
250     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
251     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
252     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
253     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
254     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
255     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
256     ; CHECK-NEXT: PseudoRET implicit $x10
257     %1:_(s32) = COPY $x10
258     %2:_(s32) = COPY $x11
259     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
260     %3:_(s8) = G_FPTOSI %0:_(s64)
261     %4:_(s32) = G_ANYEXT %3:_(s8)
262     $x10 = COPY %4:_(s32)
263     PseudoRET implicit $x10
266 name:            fptoui_s8_s64
267 body:             |
268   bb.1:
269     liveins: $x10, $x11
270     ; CHECK-LABEL: name: fptoui_s8_s64
271     ; CHECK: liveins: $x10, $x11
272     ; CHECK-NEXT: {{  $}}
273     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
274     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
275     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
276     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
277     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
278     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunsdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
279     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
280     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
281     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
282     ; CHECK-NEXT: PseudoRET implicit $x10
283     %1:_(s32) = COPY $x10
284     %2:_(s32) = COPY $x11
285     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
286     %3:_(s8) = G_FPTOUI %0:_(s64)
287     %4:_(s32) = G_ANYEXT %3:_(s8)
288     $x10 = COPY %4:_(s32)
289     PseudoRET implicit $x10
293 name:            fptosi_s16_s64
294 body:             |
295   bb.1:
296     liveins: $x10, $x11
297     ; CHECK-LABEL: name: fptosi_s16_s64
298     ; CHECK: liveins: $x10, $x11
299     ; CHECK-NEXT: {{  $}}
300     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
301     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
302     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
303     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
304     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
305     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
306     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
307     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
308     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
309     ; CHECK-NEXT: PseudoRET implicit $x10
310     %1:_(s32) = COPY $x10
311     %2:_(s32) = COPY $x11
312     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
313     %3:_(s16) = G_FPTOSI %0:_(s64)
314     %4:_(s32) = G_ANYEXT %3:_(s16)
315     $x10 = COPY %4:_(s32)
316     PseudoRET implicit $x10
320 name:            fptoui_s16_s64
321 body:             |
322   bb.1:
323     liveins: $x10, $x11
324     ; CHECK-LABEL: name: fptoui_s16_s64
325     ; CHECK: liveins: $x10, $x11
326     ; CHECK-NEXT: {{  $}}
327     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
328     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
329     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
330     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
331     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
332     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunsdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
333     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
334     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
335     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
336     ; CHECK-NEXT: PseudoRET implicit $x10
337     %1:_(s32) = COPY $x10
338     %2:_(s32) = COPY $x11
339     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
340     %3:_(s16) = G_FPTOUI %0:_(s64)
341     %4:_(s32) = G_ANYEXT %3:_(s16)
342     $x10 = COPY %4:_(s32)
343     PseudoRET implicit $x10
347 name:            fptosi_s32_s64
348 body:             |
349   bb.1:
350     liveins: $x10, $x11
351     ; CHECK-LABEL: name: fptosi_s32_s64
352     ; CHECK: liveins: $x10, $x11
353     ; CHECK-NEXT: {{  $}}
354     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
355     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
356     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
357     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
358     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
359     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
360     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
361     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
362     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
363     ; CHECK-NEXT: PseudoRET implicit $x10
364     %1:_(s32) = COPY $x10
365     %2:_(s32) = COPY $x11
366     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
367     %3:_(s32) = G_FPTOSI %0:_(s64)
368     $x10 = COPY %3:_(s32)
369     PseudoRET implicit $x10
372 name:            fptoui_s32_s64
373 body:             |
374   bb.1:
375     liveins: $x10, $x11
376     ; CHECK-LABEL: name: fptoui_s32_s64
377     ; CHECK: liveins: $x10, $x11
378     ; CHECK-NEXT: {{  $}}
379     ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $x10
380     ; CHECK-NEXT: [[COPY1:%[0-9]+]]:_(s32) = COPY $x11
381     ; CHECK-NEXT: ADJCALLSTACKDOWN 0, 0, implicit-def $x2, implicit $x2
382     ; CHECK-NEXT: $x10 = COPY [[COPY]](s32)
383     ; CHECK-NEXT: $x11 = COPY [[COPY1]](s32)
384     ; CHECK-NEXT: PseudoCALL target-flags(riscv-call) &__fixunsdfsi, csr_ilp32_lp64, implicit-def $x1, implicit $x10, implicit $x11, implicit-def $x10
385     ; CHECK-NEXT: ADJCALLSTACKUP 0, 0, implicit-def $x2, implicit $x2
386     ; CHECK-NEXT: [[COPY2:%[0-9]+]]:_(s32) = COPY $x10
387     ; CHECK-NEXT: $x10 = COPY [[COPY2]](s32)
388     ; CHECK-NEXT: PseudoRET implicit $x10
389     %1:_(s32) = COPY $x10
390     %2:_(s32) = COPY $x11
391     %0:_(s64) = G_MERGE_VALUES %1:_(s32), %2:_(s32)
392     %3:_(s32) = G_FPTOUI %0:_(s64)
393     $x10 = COPY %3:_(s32)
394     PseudoRET implicit $x10