llvm/clang/test/CodeGen/RISCV/bfloat-mangle.cpp

// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py UTC_ARGS: --version 2
// RUN: %clang_cc1 -triple riscv64 -emit-llvm -o - %s | FileCheck %s --check-prefixes=CHECK-RV64
// RUN: %clang_cc1 -triple riscv32 -emit-llvm -o - %s | FileCheck %s --check-prefixes=CHECK-RV32

// CHECK-RV64-LABEL: define dso_local void @_Z3fooDF16b
// CHECK-RV64-SAME: (bfloat noundef [[B:%.*]]) #[[ATTR0:[0-9]+]] {
// CHECK-RV64-NEXT:  entry:
// CHECK-RV64-NEXT:    [[B_ADDR:%.*]] = alloca bfloat, align 2
// CHECK-RV64-NEXT:    store bfloat [[B]], ptr [[B_ADDR]], align 2
// CHECK-RV64-NEXT:    ret void
//
// CHECK-RV32-LABEL: define dso_local void @_Z3fooDF16b
// CHECK-RV32-SAME: (bfloat noundef [[B:%.*]]) #[[ATTR0:[0-9]+]] {
// CHECK-RV32-NEXT:  entry:
// CHECK-RV32-NEXT:    [[B_ADDR:%.*]] = alloca bfloat, align 2
// CHECK-RV32-NEXT:    store bfloat [[B]], ptr [[B_ADDR]], align 2
// CHECK-RV32-NEXT:    ret void
//
void foo(__bf16 b) {}