Makefile.inc (4c983a2886877a855ac3a2836b15d80356fbb8d4) Makefile.inc (f276adc148433d009d198c2ebccdd3303377e237)
1.include <bsd.compiler.mk>
2
3CRTARCH= ${MACHINE_CPUARCH:C/amd64/x86_64/:C/powerpc/ppc/}
4
5CRTSRC= ${SRCTOP}/contrib/llvm-project/compiler-rt/lib/builtins
6
7.PATH: ${CRTSRC}/${CRTARCH}
8.PATH: ${CRTSRC}

--- 212 unchanged lines hidden (view full) ---

221SRCF+= truncdfsf2
222.endif
223
224.if ${MACHINE_CPUARCH} != "arm"
225SRCF+= comparedf2
226SRCF+= comparesf2
227.endif
228
1.include <bsd.compiler.mk>
2
3CRTARCH= ${MACHINE_CPUARCH:C/amd64/x86_64/:C/powerpc/ppc/}
4
5CRTSRC= ${SRCTOP}/contrib/llvm-project/compiler-rt/lib/builtins
6
7.PATH: ${CRTSRC}/${CRTARCH}
8.PATH: ${CRTSRC}

--- 212 unchanged lines hidden (view full) ---

221SRCF+= truncdfsf2
222.endif
223
224.if ${MACHINE_CPUARCH} != "arm"
225SRCF+= comparedf2
226SRCF+= comparesf2
227.endif
228
229# Helper to reduce complexity of _Float16 and __bf16 statements below.
230.if ${MACHINE_CPUARCH} == "aarch64" || \
231 ${MACHINE_CPUARCH} == "amd64" || \
232 ${MACHINE_CPUARCH} == "arm" || \
233 (${MACHINE_CPUARCH} == "i386" && !empty(MACHINE_CPU:Msse2))
234CRT_COMMON_F16_ARCH=t
235.endif
236
229#
237#
230# bfloat16 support, only used on some architectures.
238# _Float16 support, only on some architectures, and with certain compiler
239# versions.
231#
240#
232.if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
233 ${MACHINE_CPUARCH} == "arm" || (${MACHINE_CPUARCH} == "i386" && \
234 !empty(MACHINE_CPU:Msse2)) || ${MACHINE_CPUARCH} == "riscv") && \
235 !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 130000)
241.if ((${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 150000) && \
242 (defined(CRT_COMMON_F16_ARCH) || ${MACHINE_CPUARCH} == "riscv")) || \
243 ((${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 120000) && \
244 (defined(CRT_COMMON_F16_ARCH)))
245CFLAGS+= -DCOMPILER_RT_HAS_FLOAT16
246.endif
247
248#
249# __bf16 support, only on some architectures, and with certain compiler
250# versions.
251#
252.if ((${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 150000) && \
253 (defined(CRT_COMMON_F16_ARCH))) || \
254 ((${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 180000) && \
255 ${MACHINE_CPUARCH} == "riscv") || \
256 ((${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 130000) && \
257 (defined(CRT_COMMON_F16_ARCH)))
258CFLAGS+= -DCOMPILER_RT_HAS_BFLOAT16
236SRCF+= truncdfbf2
237SRCF+= truncsfbf2
238.endif
239
240# FreeBSD-specific atomic intrinsics.
241.if ${MACHINE_CPUARCH} == "arm"
242.PATH: ${SRCTOP}/sys/arm/arm
243

--- 31 unchanged lines hidden ---
259SRCF+= truncdfbf2
260SRCF+= truncsfbf2
261.endif
262
263# FreeBSD-specific atomic intrinsics.
264.if ${MACHINE_CPUARCH} == "arm"
265.PATH: ${SRCTOP}/sys/arm/arm
266

--- 31 unchanged lines hidden ---