Replace SOFTFLOAT with __riscv_float_abi_*.
authorbrooks <brooks@FreeBSD.org>
Thu, 19 Apr 2018 20:36:15 +0000 (20:36 +0000)
committerbrooks <brooks@FreeBSD.org>
Thu, 19 Apr 2018 20:36:15 +0000 (20:36 +0000)
commitbd489e7960c93a0376f25729c0834592d003e736
tree7e65783af9a82b5e43807a8fd73111c1af5ae16e
parent49c3d1a0fed0c41d193d16d64b2a7556f2265854
Replace SOFTFLOAT with __riscv_float_abi_*.

With SOFTFLOAT, libc and libm were built correctly, but any program
including fenv.h itself assumed it was on a hardfloat systen and emitted
inline fpu instructions for fedisableexcept() and friends.

Unlike r315424 which did this for MIPS, I've used riscv_float_abi_soft
and riscv_float_abi_double macros as appropriate rather than using
__riscv_float_abi_soft exclusively.  This ensures that attempts to use an
unsupported hardfloat ABI will fail.

Reviewed by: br
Sponsored by: DARPA, AFRL
Differential Revision: https://reviews.freebsd.org/D10039
lib/libc/riscv/Makefile.inc
lib/libc/riscv/gen/_setjmp.S
lib/libc/riscv/gen/fabs.S
lib/libc/riscv/gen/flt_rounds.c
lib/libc/riscv/gen/setjmp.S
lib/msun/riscv/Makefile.inc
lib/msun/riscv/fenv.c
lib/msun/riscv/fenv.h