Only use -fp-exception-behavior=maytrap on x86, for now

After 3b00222f15, it turns out that clang only supports strict
floating point semantics for SystemZ and x86 at the moment, while for
other architectures it is still experimental.

Therefore, only use -fp-exception-behavior=maytrap on x86 for now,
otherwise this option results in "error: overriding currently
unsupported use of floating point exceptions on this target
[-Werror,-Wunsupported-floating-point-opt]" on other architectures.

Fixes:		3b00222f15
PR:		254911
MFC after:	1 week
This commit is contained in:
Dimitry Andric 2021-04-10 16:02:49 +02:00
parent 63dceebe68
commit bae9fd0b33

View File

@ -35,7 +35,8 @@ CFLAGS+= -I${.CURDIR}/ld128
CFLAGS+= -I${.CURDIR}/${ARCH_SUBDIR}
.include <bsd.compiler.mk>
.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 100000
.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 100000 && \
(${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386")
# When using clang with x86_64 CPUs that support AVX, some floating point
# transformations may raise exceptions that would not have been raised by the
# original code. To avoid this, use the -fp-exception-behavior=maytrap flag,