Re: i386 long double math methods
Joel Sherrill <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <CAF9ehCWYR-ncCuJFik=bCTiU1QDVYyDBJs68aHefiRUddSK8VA@mail.gmail.com> |
On Thu, Sep 26, 2019 at 12:24 AM Brian Inglis <[email protected]> wrote: > > On 2019-09-25 16:06, Joel Sherrill wrote: > > i386-rtems tools do not include long double math routines but Cygwin > > does and there is a comment in math.h indicating they have code > > elsewhere for these. > > Are these OK to use to fill in the long double gaps? > > Cygwin just uses straight newlib/libm, and the BSD versions of those long double > math functions are already in newlib/libm/*/*l.c and available on Cygwin: sizeof > float80, float128, and long double are all 16. On RTEMS i386, long double != double and this code is disabled so we end up missing the entire set of long double methods. That's what I am trying to resolve. > There are also some x86 asm and fast math specializations under winsup/cygwin/math/ > Or are you talking about other long double math functions not included? Thanks. I need to move these to newlib/libm/ when I finish the fenv.h. BTW and please, do you see what's wrong in my fenv.h patch for x86_64? I would really like to wrap that up and move on to something else. :) > You should be able to persuade configure to build RTEMS newlib/libm with a heavy > platform config supporting long double size 16 and excluding _LDBL_EQ_DBL. As I said earlier, long double != double on this target and this code is disabled. I suspect most i386 and x86_64 newlib targets are missing the same math methods unless they provide them special like newlib. Thanks for the pointer to winsup. I will move those to newlib once the fenv.h patch is resolved. --joel > -- > Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada > > This email may be disturbing to some readers as it contains > too much technical detail. Reader discretion is advised.