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
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to "[email protected]"