math: remove float-store flag, add exp2 and asinhl tests
authorSzabolcs Nagy <nsz@port70.net>
Sat, 17 Nov 2012 11:17:45 +0000 (12:17 +0100)
committerSzabolcs Nagy <nsz@port70.net>
Sat, 17 Nov 2012 11:17:45 +0000 (12:17 +0100)
src/math/Makefile
src/math/special/asinhl.h
src/math/special/exp2.h
src/math/special/exp2f.h
src/math/special/exp2l.h

index 8c640ac..9199580 100644 (file)
@@ -1,5 +1,5 @@
 CFLAGS+=-g -pipe -std=c99 -D_POSIX_C_SOURCE=200809L -Wall -Wno-unused-function -Wno-missing-braces
-CFLAGS+=-Wno-unknown-pragmas -fno-builtin -ffloat-store -frounding-math -D_GNU_SOURCE
+CFLAGS+=-Wno-unknown-pragmas -fno-builtin -frounding-math -D_GNU_SOURCE
 LDFLAGS+=-g -lm
 
 SRC=$(sort $(wildcard *.c))
@@ -17,7 +17,7 @@ clean:
 
 $(BIN): util.o
 
-%.o: %.c sanity/%.h ucb/%.h crlibm/%.h util.h
+%.o: %.c sanity/%.h ucb/%.h crlibm/%.h special/%.h util.h
        $(CC) $(CFLAGS) -c -o $@ $<
 %: %.c
 %: %.o
index 1054606..ab0c408 100644 (file)
@@ -3,3 +3,4 @@ T(RN,                            inf,                            inf,          0
 T(RN,                           -inf,                           -inf,          0x0p+0, 0)
 T(RN,                        0x0p+0L,                        0x0p+0L,          0x0p+0, 0)
 T(RN,                       -0x0p+0L,                       -0x0p+0L,          0x0p+0, 0)
+T(RN,        0x1.23456789abcdefp-35L,        0x1.23456789abcdefp-35L,  0x1.f6bfb2p-10, INEXACT)
index 95e131a..488577c 100644 (file)
@@ -5,3 +5,12 @@ T(RN,                 -0x1p+0,                  0x1p-1,          0x0p+0, 0)
 T(RN,                     inf,                     inf,          0x0p+0, 0)
 T(RN,                    -inf,                  0x0p+0,          0x0p+0, 0)
 T(RN,                     nan,                     nan,          0x0p+0, 0)
+T(RN,              0x1.ff8p+0,    0x1.ff4eaca4391b6p+1,   0x1.2e60c6p-3, INEXACT)
+T(RN,   -0x1.fef3333333333p+9,  0x1.125fbee2506bp-1022,  -0x1.c612ecp-3, INEXACT)
+T(RN,              -0x1.ffp+9,               0x1p-1022,          0x0p+0, 0)
+T(RN,   -0x1.ff0cccccccccdp+9, 0x1.ddb680117aa8ep-1023,   0x1.966dfcp-3, INEXACT|UNDERFLOW)
+T(RN,             -0x1.ff8p+9,               0x1p-1023,          0x0p+0, 0)
+T(RN,    0x1.fff3333333333p+9, 0x1.ddb680117aa8ep+1023,   0x1.966dfcp-2, INEXACT)
+T(RN,                 0x1p+10,                     inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,   0x1.0006666666666p+10,                     inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,    0x1.91eb851eb851fp+1,    0x1.1a167423fc31cp+3,   0x1.9287b8p-2, INEXACT)
index b8d3579..6b64326 100644 (file)
@@ -5,3 +5,10 @@ T(RN,         -0x1p+0,          0x1p-1,          0x0p+0, 0)
 T(RN,             inf,             inf,          0x0p+0, 0)
 T(RN,            -inf,          0x0p+0,          0x0p+0, 0)
 T(RN,             nan,             nan,          0x0p+0, 0)
+T(RN,  -0x1.2bccccp+7,        0x1p-149,   0x1.db3feap-2, INEXACT|UNDERFLOW)
+T(RN,      -0x1.2cp+7,          0x0p+0,         -0x1p-1, INEXACT|UNDERFLOW)
+T(RN,  -0x1.2c3334p+7,          0x0p+0,  -0x1.ddb5fcp-2, INEXACT|UNDERFLOW)
+T(RN,   0x1.ff999ap+6, 0x1.ddb6a2p+127,   0x1.a36a36p-2, INEXACT)
+T(RN,          0x1p+7,             inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,   0x1.003334p+7,             inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,   0x1.91eb86p+1,   0x1.1a1676p+3,   0x1.07c524p-2, INEXACT)
index 087df12..6c387eb 100644 (file)
@@ -5,3 +5,10 @@ T(RN,                       -0x1p+0L,                        0x1p-1L,          0
 T(RN,                            inf,                            inf,          0x0p+0, 0)
 T(RN,                           -inf,                        0x0p+0L,          0x0p+0, 0)
 T(RN,                            nan,                            nan,          0x0p+0, 0)
+T(RN,     -0x1.00f799999999999ap+14L,                    0x1p-16445L,   0x1.db4082p-2, INEXACT|UNDERFLOW)
+T(RN,                 -0x1.00f8p+14L,                        0x0p+0L,         -0x1p-1, INEXACT|UNDERFLOW)
+T(RN,     -0x1.00f8666666666666p+14L,                        0x0p+0L,   -0x1.ddb68p-2, INEXACT|UNDERFLOW)
+T(RN,      0x1.ffff333333333334p+13L,   0x1.ddb680117ab141f6p+16383L,  -0x1.b531eep-2, INEXACT)
+T(RN,                       0x1p+14L,                            inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,      0x1.0000666666666666p+14L,                            inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN,       0x1.91eb851eb851eb86p+1L,        0x1.1a167423fc31b2ep+3L,   0x1.6b7e14p-2, INEXACT)