brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.1 KiB · 610c72b Raw
71 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 -mattr=+f -verify-machineinstrs < %s \3; RUN:   -target-abi=ilp32f | FileCheck %s4; RUN: llc -mtriple=riscv64 -mattr=+f -verify-machineinstrs < %s \5; RUN:   -target-abi=lp64f | FileCheck %s6; RUN: llc -mtriple=riscv32 -mattr=+zfinx -verify-machineinstrs < %s \7; RUN:   -target-abi=ilp32 | FileCheck --check-prefixes=CHECKZFINX %s8; RUN: llc -mtriple=riscv64 -mattr=+zfinx -verify-machineinstrs < %s \9; RUN:   -target-abi=lp64 | FileCheck --check-prefixes=CHECKZFINX %s10 11define float @float_imm() nounwind {12; CHECK-LABEL: float_imm:13; CHECK:       # %bb.0:14; CHECK-NEXT:    lui a0, 26331315; CHECK-NEXT:    addi a0, a0, -3716; CHECK-NEXT:    fmv.w.x fa0, a017; CHECK-NEXT:    ret18;19; CHECKZFINX-LABEL: float_imm:20; CHECKZFINX:       # %bb.0:21; CHECKZFINX-NEXT:    lui a0, 26331322; CHECKZFINX-NEXT:    addi a0, a0, -3723; CHECKZFINX-NEXT:    # kill: def $x10_w killed $x10_w killed $x1024; CHECKZFINX-NEXT:    ret25  ret float 3.1415927410125732421875026}27 28define float @float_imm_op(float %a) nounwind {29; CHECK-LABEL: float_imm_op:30; CHECK:       # %bb.0:31; CHECK-NEXT:    lui a0, 26009632; CHECK-NEXT:    fmv.w.x fa5, a033; CHECK-NEXT:    fadd.s fa0, fa0, fa534; CHECK-NEXT:    ret35;36; CHECKZFINX-LABEL: float_imm_op:37; CHECKZFINX:       # %bb.0:38; CHECKZFINX-NEXT:    lui a1, 26009639; CHECKZFINX-NEXT:    fadd.s a0, a0, a140; CHECKZFINX-NEXT:    ret41  %1 = fadd float %a, 1.042  ret float %143}44 45define float @float_positive_zero(ptr %pf) nounwind {46; CHECK-LABEL: float_positive_zero:47; CHECK:       # %bb.0:48; CHECK-NEXT:    fmv.w.x fa0, zero49; CHECK-NEXT:    ret50;51; CHECKZFINX-LABEL: float_positive_zero:52; CHECKZFINX:       # %bb.0:53; CHECKZFINX-NEXT:    li a0, 054; CHECKZFINX-NEXT:    ret55  ret float 0.056}57 58define float @float_negative_zero(ptr %pf) nounwind {59; CHECK-LABEL: float_negative_zero:60; CHECK:       # %bb.0:61; CHECK-NEXT:    lui a0, 52428862; CHECK-NEXT:    fmv.w.x fa0, a063; CHECK-NEXT:    ret64;65; CHECKZFINX-LABEL: float_negative_zero:66; CHECKZFINX:       # %bb.0:67; CHECKZFINX-NEXT:    lui a0, 52428868; CHECKZFINX-NEXT:    ret69  ret float -0.070}71