xref: /llvm-project/llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-fp-ext-trunc.mir (revision 4ac304242b65413f4eae21af300dd14cb14ed066)
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 3
2# RUN: llc -mtriple=riscv32 -mattr=+d -run-pass=legalizer %s -o - \
3# RUN: | FileCheck %s
4# RUN: llc -mtriple=riscv64 -mattr=+d -run-pass=legalizer %s -o - \
5# RUN: | FileCheck %s
6
7---
8name:            fpext
9body:             |
10  bb.1:
11    liveins: $f10_f
12
13    ; CHECK-LABEL: name: fpext
14    ; CHECK: liveins: $f10_f
15    ; CHECK-NEXT: {{  $}}
16    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s32) = COPY $f10_f
17    ; CHECK-NEXT: [[FPEXT:%[0-9]+]]:_(s64) = G_FPEXT [[COPY]](s32)
18    ; CHECK-NEXT: $f10_d = COPY [[FPEXT]](s64)
19    ; CHECK-NEXT: PseudoRET implicit $f10_d
20    %0:_(s32) = COPY $f10_f
21    %1:_(s64) = G_FPEXT %0(s32)
22    $f10_d = COPY %1(s64)
23    PseudoRET implicit $f10_d
24
25...
26---
27name:            fptrunc
28body:             |
29  bb.1:
30    liveins: $f10_d
31
32    ; CHECK-LABEL: name: fptrunc
33    ; CHECK: liveins: $f10_d
34    ; CHECK-NEXT: {{  $}}
35    ; CHECK-NEXT: [[COPY:%[0-9]+]]:_(s64) = COPY $f10_d
36    ; CHECK-NEXT: [[FPTRUNC:%[0-9]+]]:_(s32) = G_FPTRUNC [[COPY]](s64)
37    ; CHECK-NEXT: $f10_f = COPY [[FPTRUNC]](s32)
38    ; CHECK-NEXT: PseudoRET implicit $f10_f
39    %0:_(s64) = COPY $f10_d
40    %1:_(s32) = G_FPTRUNC %0(s64)
41    $f10_f = COPY %1(s32)
42    PseudoRET implicit $f10_f
43
44...
45