mirror of
https://github.com/intel/llvm.git
synced 2026-01-20 01:58:44 +08:00
[compiler-rt][BF16] Provide __truncdfbf2 and __truncsfbf2 only when __bf16 is available
Differential Revision: https://reviews.llvm.org/D131147
This commit is contained in:
@@ -30,6 +30,14 @@ _Float16 foo(_Float16 x) {
|
||||
"
|
||||
)
|
||||
|
||||
builtin_check_c_compiler_source(COMPILER_RT_HAS_BFLOAT16
|
||||
"
|
||||
__bf16 foo(__bf16 x) {
|
||||
return x;
|
||||
}
|
||||
"
|
||||
)
|
||||
|
||||
builtin_check_c_compiler_source(COMPILER_RT_HAS_ASM_LSE
|
||||
"
|
||||
asm(\".arch armv8-a+lse\");
|
||||
|
||||
@@ -165,10 +165,8 @@ set(GENERIC_SOURCES
|
||||
subvsi3.c
|
||||
subvti3.c
|
||||
trampoline_setup.c
|
||||
truncdfbf2.c
|
||||
truncdfhf2.c
|
||||
truncdfsf2.c
|
||||
truncsfbf2.c
|
||||
truncsfhf2.c
|
||||
ucmpdi2.c
|
||||
ucmpti2.c
|
||||
@@ -183,6 +181,15 @@ set(GENERIC_SOURCES
|
||||
umodti3.c
|
||||
)
|
||||
|
||||
# Build BF16 files only when "__bf16" is available.
|
||||
if(COMPILER_RT_HAS_BFLOAT16 AND NOT APPLE)
|
||||
set(GENERIC_SOURCES
|
||||
${GENERIC_SOURCES}
|
||||
truncdfbf2.c
|
||||
truncsfbf2.c
|
||||
)
|
||||
endif()
|
||||
|
||||
# TODO: Several "tf" files (and divtc3.c, but not multc3.c) are in
|
||||
# GENERIC_SOURCES instead of here.
|
||||
set(GENERIC_TF_SOURCES
|
||||
|
||||
@@ -60,7 +60,7 @@ typedef uint16_t dst_rep_t;
|
||||
static const int dstSigBits = 10;
|
||||
|
||||
#elif defined DST_BFLOAT
|
||||
typedef uint16_t dst_t;
|
||||
typedef __bf16 dst_t;
|
||||
typedef uint16_t dst_rep_t;
|
||||
#define DST_REP_C UINT16_C
|
||||
static const int dstSigBits = 7;
|
||||
|
||||
Reference in New Issue
Block a user