CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2021/04/29 11:19:18
Modified files:
sys/arch/riscv64/include: ieeefp.h
lib/libc/arch/riscv64/gen: fpgetmask.c fpsetmask.c
Added files:
lib/libc/arch/riscv64/gen: fpgetround.c fpgetsticky.c
fpsetround.c fpsetsticky.c
Log message:
Clean up <machine/ieeefp.h> and make sure the rounding mode bits match the
hardware. Implement fp[gs]etround(3) and fp[gs]etsticky(3) and tweak
the fp[gs]etmask(3) implementation to provide the right weak symbols.
This implementation deliberately ignores the additional
"round to nearest, away from zero" as this interface is derived from
i386-specific code and the i387 FPU doesn't implement such a rounding
mode. This is a legacy API and code should use <fenv.h> instead.
ok drahn@