brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.6 KiB · 7b3efd6 Raw
108 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc -mtriple=riscv32 -target-abi ilp32f -mattr=+zfhmin < %s \3; RUN:     | FileCheck --check-prefix=RV32IZFHMIN %s4; RUN: llc -mtriple=riscv32 -target-abi ilp32d -mattr=+zfhmin,+d < %s \5; RUN:     | FileCheck --check-prefix=RV32IDZFHMIN %s6; RUN: llc -mtriple=riscv32 -target-abi ilp32 -mattr=+zhinxmin < %s \7; RUN:     | FileCheck --check-prefix=RV32IZHINXMIN %s8; RUN: llc -mtriple=riscv32 -target-abi ilp32 -mattr=+zhinxmin,+zdinx < %s \9; RUN:     | FileCheck --check-prefix=RV32IZDINXZHINXMIN %s10; RUN: llc -mtriple=riscv64 -target-abi lp64f -mattr=+zfhmin < %s \11; RUN:     | FileCheck --check-prefix=RV64IZFHMIN %s12; RUN: llc -mtriple=riscv64 -target-abi lp64d -mattr=+zfhmin,+d < %s \13; RUN:     | FileCheck --check-prefix=RV64IDZFHMIN %s14; RUN: llc -mtriple=riscv64 -target-abi lp64 -mattr=+zhinxmin < %s \15; RUN:     | FileCheck --check-prefix=RV64IZHINXMIN %s16; RUN: llc -mtriple=riscv64 -target-abi lp64 -mattr=+zhinxmin,+zdinx < %s \17; RUN:     | FileCheck --check-prefix=RV64IZDINXZHINXMIN %s18 19define half @f16_positive_zero(ptr %pf) nounwind {20; RV32IZFHMIN-LABEL: f16_positive_zero:21; RV32IZFHMIN:       # %bb.0:22; RV32IZFHMIN-NEXT:    fmv.h.x fa0, zero23; RV32IZFHMIN-NEXT:    ret24;25; RV32IDZFHMIN-LABEL: f16_positive_zero:26; RV32IDZFHMIN:       # %bb.0:27; RV32IDZFHMIN-NEXT:    fmv.h.x fa0, zero28; RV32IDZFHMIN-NEXT:    ret29;30; RV32IZHINXMIN-LABEL: f16_positive_zero:31; RV32IZHINXMIN:       # %bb.0:32; RV32IZHINXMIN-NEXT:    li a0, 033; RV32IZHINXMIN-NEXT:    ret34;35; RV32IZDINXZHINXMIN-LABEL: f16_positive_zero:36; RV32IZDINXZHINXMIN:       # %bb.0:37; RV32IZDINXZHINXMIN-NEXT:    li a0, 038; RV32IZDINXZHINXMIN-NEXT:    ret39;40; RV64IZFHMIN-LABEL: f16_positive_zero:41; RV64IZFHMIN:       # %bb.0:42; RV64IZFHMIN-NEXT:    fmv.h.x fa0, zero43; RV64IZFHMIN-NEXT:    ret44;45; RV64IDZFHMIN-LABEL: f16_positive_zero:46; RV64IDZFHMIN:       # %bb.0:47; RV64IDZFHMIN-NEXT:    fmv.h.x fa0, zero48; RV64IDZFHMIN-NEXT:    ret49;50; RV64IZHINXMIN-LABEL: f16_positive_zero:51; RV64IZHINXMIN:       # %bb.0:52; RV64IZHINXMIN-NEXT:    li a0, 053; RV64IZHINXMIN-NEXT:    ret54;55; RV64IZDINXZHINXMIN-LABEL: f16_positive_zero:56; RV64IZDINXZHINXMIN:       # %bb.0:57; RV64IZDINXZHINXMIN-NEXT:    li a0, 058; RV64IZDINXZHINXMIN-NEXT:    ret59  ret half 0.060}61 62define half @f16_negative_zero(ptr %pf) nounwind {63; RV32IZFHMIN-LABEL: f16_negative_zero:64; RV32IZFHMIN:       # %bb.0:65; RV32IZFHMIN-NEXT:    lui a0, 104856866; RV32IZFHMIN-NEXT:    fmv.h.x fa0, a067; RV32IZFHMIN-NEXT:    ret68;69; RV32IDZFHMIN-LABEL: f16_negative_zero:70; RV32IDZFHMIN:       # %bb.0:71; RV32IDZFHMIN-NEXT:    lui a0, 104856872; RV32IDZFHMIN-NEXT:    fmv.h.x fa0, a073; RV32IDZFHMIN-NEXT:    ret74;75; RV32IZHINXMIN-LABEL: f16_negative_zero:76; RV32IZHINXMIN:       # %bb.0:77; RV32IZHINXMIN-NEXT:    lui a0, 104856878; RV32IZHINXMIN-NEXT:    ret79;80; RV32IZDINXZHINXMIN-LABEL: f16_negative_zero:81; RV32IZDINXZHINXMIN:       # %bb.0:82; RV32IZDINXZHINXMIN-NEXT:    lui a0, 104856883; RV32IZDINXZHINXMIN-NEXT:    ret84;85; RV64IZFHMIN-LABEL: f16_negative_zero:86; RV64IZFHMIN:       # %bb.0:87; RV64IZFHMIN-NEXT:    lui a0, 104856888; RV64IZFHMIN-NEXT:    fmv.h.x fa0, a089; RV64IZFHMIN-NEXT:    ret90;91; RV64IDZFHMIN-LABEL: f16_negative_zero:92; RV64IDZFHMIN:       # %bb.0:93; RV64IDZFHMIN-NEXT:    lui a0, 104856894; RV64IDZFHMIN-NEXT:    fmv.h.x fa0, a095; RV64IDZFHMIN-NEXT:    ret96;97; RV64IZHINXMIN-LABEL: f16_negative_zero:98; RV64IZHINXMIN:       # %bb.0:99; RV64IZHINXMIN-NEXT:    lui a0, 1048568100; RV64IZHINXMIN-NEXT:    ret101;102; RV64IZDINXZHINXMIN-LABEL: f16_negative_zero:103; RV64IZDINXZHINXMIN:       # %bb.0:104; RV64IZDINXZHINXMIN-NEXT:    lui a0, 1048568105; RV64IZDINXZHINXMIN-NEXT:    ret106  ret half -0.0107}108