On 3/13/19 4:16 PM, Steve Kargl wrote:
On Tue, Mar 12, 2019 at 07:45:41PM -0700, Steve Kargl wrote:

gcc8 --version
gcc8 (FreeBSD Ports Collection) 8.3.0

gcc8 -fno-builtin -o z a.c -lm && ./z
gcc8 -O -fno-builtin -o z a.c -lm && ./z
gcc8 -O2 -fno-builtin -o z a.c -lm && ./z
gcc8 -O3 -fno-builtin -o z a.c -lm && ./z

Max ULP: 2.297073
Count: 0           (# of ULP that exceed 21)


clang agrees with gcc8 if one changes ...

int
main(void)
{
    double re, im, u, ur, ui;
    float complex f;
    float x, y;

this line to "volatile float x, y".


Can you try to use:

#define sincos(x,p,q) do { \
        *(p) = sin(x); \
        *(q) = cos(x); \
} while (0)


Instead of libm's sincos(). Might be a bug in there.

--HPS
_______________________________________________
freebsd-toolchain@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"

Reply via email to