This is the mail archive of the
newlib@sourceware.org
mailing list for the newlib project.
[PATCH 0/3] fenv support round 2
- From: joel at rtems dot org
- To: newlib at sourceware dot org
- Cc: Joel Sherrill <joel at rtems dot org>
- Date: Wed, 28 Aug 2019 10:06:56 -0500
- Subject: [PATCH 0/3] fenv support round 2
From: Joel Sherrill <joel@rtems.org>
There are three patches in this set and hopefully two will be uncontroversial.
(1) The common include/fenv.h was copied from riscv, so delete the
copy in the libc/machine/riscv directory.
(2) Add glibc extension FE_NOMASK_ENV to template sys/fenv.h.
Code was copied from Cygwin fenv.h.
(3) Add x86_64 and i386 fenv support by copying from Cygwin. No
functional changes were made. This needs some help.
(a) x86_64 isn't picking up fenv.c. Not sure what isn't bootstrapping right.
Help needed to get it integrated into libm build.
(b) I added a copyright to fenv.c since it just said "part of Cygwin".
I hope it is right.
(c) Any other comments.
After (3) is merged, a Cygwin maintainer will need to clean up winsup
and make sure all is good.
Thanks.
--joel
Joel Sherrill (3):
riscv/include/fenv.h: Use shared fenv.h.
libc/include/sys/fenv.h: Add glibc extension of FE_NOMASK_ENV.
Add i386 and x86_64 fenv support from Cygwin.
newlib/libc/include/sys/fenv.h | 9 +
newlib/libc/machine/i386/sys/fenv.h | 1 +
newlib/libc/machine/riscv/include/fenv.h | 42 ---
newlib/libc/machine/x86_64/sys/fenv.h | 150 ++++++++++
newlib/libm/machine/i386/Makefile.am | 2 +-
newlib/libm/machine/i386/fenv.c | 1 +
newlib/libm/machine/x86_64/Makefile.am | 18 ++
newlib/libm/machine/x86_64/fenv.c | 485 +++++++++++++++++++++++++++++++
8 files changed, 665 insertions(+), 43 deletions(-)
create mode 120000 newlib/libc/machine/i386/sys/fenv.h
delete mode 100644 newlib/libc/machine/riscv/include/fenv.h
create mode 100644 newlib/libc/machine/x86_64/sys/fenv.h
create mode 120000 newlib/libm/machine/i386/fenv.c
create mode 100644 newlib/libm/machine/x86_64/Makefile.am
create mode 100644 newlib/libm/machine/x86_64/fenv.c
--
1.8.3.1