Revert rGe6ccb57bb3f6b761f2310e97fd6ca99eff42f73e "[SLP] Add cost model for `llvm...
[llvm-project.git] / llvm / test / CodeGen / RISCV / half-frem.ll
blobde98086f05aefe723057f214f95f3609ec704d69
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -mtriple=riscv32 -mattr=+zfh -verify-machineinstrs \
3 ; RUN:   -target-abi ilp32f < %s \
4 ; RUN:   | FileCheck -check-prefix=RV32IZFH %s
5 ; RUN: llc -mtriple=riscv64 -mattr=+zfh -verify-machineinstrs \
6 ; RUN:   -target-abi lp64f < %s \
7 ; RUN:   | FileCheck -check-prefix=RV64IZFH %s
9 define half @frem_f16(half %a, half %b) nounwind {
10 ; RV32IZFH-LABEL: frem_f16:
11 ; RV32IZFH:       # %bb.0:
12 ; RV32IZFH-NEXT:    addi sp, sp, -16
13 ; RV32IZFH-NEXT:    sw ra, 12(sp) # 4-byte Folded Spill
14 ; RV32IZFH-NEXT:    fcvt.s.h fa0, fa0
15 ; RV32IZFH-NEXT:    fcvt.s.h fa1, fa1
16 ; RV32IZFH-NEXT:    call fmodf@plt
17 ; RV32IZFH-NEXT:    fcvt.h.s fa0, fa0
18 ; RV32IZFH-NEXT:    lw ra, 12(sp) # 4-byte Folded Reload
19 ; RV32IZFH-NEXT:    addi sp, sp, 16
20 ; RV32IZFH-NEXT:    ret
22 ; RV64IZFH-LABEL: frem_f16:
23 ; RV64IZFH:       # %bb.0:
24 ; RV64IZFH-NEXT:    addi sp, sp, -16
25 ; RV64IZFH-NEXT:    sd ra, 8(sp) # 8-byte Folded Spill
26 ; RV64IZFH-NEXT:    fcvt.s.h fa0, fa0
27 ; RV64IZFH-NEXT:    fcvt.s.h fa1, fa1
28 ; RV64IZFH-NEXT:    call fmodf@plt
29 ; RV64IZFH-NEXT:    fcvt.h.s fa0, fa0
30 ; RV64IZFH-NEXT:    ld ra, 8(sp) # 8-byte Folded Reload
31 ; RV64IZFH-NEXT:    addi sp, sp, 16
32 ; RV64IZFH-NEXT:    ret
33   %1 = frem half %a, %b
34   ret half %1