24 lines · c
1// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py2// RUN: %clang_cc1 -triple riscv32 -target-feature +xandesbfhcvt -emit-llvm %s -o - \3// RUN: -disable-O0-optnone | opt -S -passes=mem2reg | FileCheck %s4// RUN: %clang_cc1 -triple riscv64 -target-feature +xandesbfhcvt -emit-llvm %s -o - \5// RUN: -disable-O0-optnone | opt -S -passes=mem2reg | FileCheck %s6 7// CHECK-LABEL: @test_fcvt_s_bf16(8// CHECK-NEXT: entry:9// CHECK-NEXT: [[TMP0:%.*]] = fpext bfloat [[BF:%.*]] to float10// CHECK-NEXT: ret float [[TMP0]]11//12float test_fcvt_s_bf16(__bf16 bf) {13 return __builtin_riscv_nds_fcvt_s_bf16(bf);14}15 16// CHECK-LABEL: @test_fcvt_bf16_s(17// CHECK-NEXT: entry:18// CHECK-NEXT: [[TMP0:%.*]] = fptrunc float [[SF:%.*]] to bfloat19// CHECK-NEXT: ret bfloat [[TMP0]]20//21__bf16 test_fcvt_bf16_s(float sf) {22 return __builtin_riscv_nds_fcvt_bf16_s(sf);23}24