Status of fenv.h header and floating point environment support in newlib

Jiri Gaisler jiri at gaisler.se
Mon Feb 17 11:54:50 UTC 2020


On 2/17/20 11:16 AM, Vaibhav Gupta wrote:
>
>
> On Mon, Feb 17, 2020, 3:07 PM Ayush Dwivedi <21cencturyayush at gmail.com <mailto:21cencturyayush at gmail.com>> wrote:
>
>     Hello Joel,
>     This is regarding the open project #2966 POSIX-Compliance #2971( Add fenv.h to newlib). The task is about adding the floating point environment header to the newlib library but the source code of the library already has the header with the listed function declarations and data struct as needed. The implementations for the following architectures are available in the newlib-cygwin repository:
>     >RISCV
>     >i386
>     >x86_64
>     As pointed out in the POSIX Compliance project sub-task page the implementations for following architectures are yet to be added:
>     >ARM(software float implementation for this exists but no fenv implementation)
>     >AArch64(software float implementation for this exists but no fenv implementation)
>     >SPARC and SPARC64(directories for these architectures are missing from libm/machine/ so no implementation of any sort)
>
>     I would like to try and implement the functions declared in the header using BSD libc of FreeBSD as reference for the ARM and SPARC architectures.
>
>     Following is the output after running test for posix fenv header(psxfenv01.exe) for SPARC using sparc-rtems5-sis and sparc-rtems5-gdb.(The Test failed)
>
> Yes because testsuite needs modifications and moreover fenv on SPARC is not yet supported. Since the support for RISCV and x86_64 is present, you can make a testsuite for them. You can use qemu for running riscv files.

Note that sis (riscv-rtems5-sis) also supports RISCV32 using the griscv BSP in RTEMS.

Jiri.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20200217/1d19bdd2/attachment.html>


More information about the devel mailing list