math: add special case test vectors
[libc-test] / src / math / special / nextafterf.h
diff --git a/src/math/special/nextafterf.h b/src/math/special/nextafterf.h
new file mode 100644 (file)
index 0000000..1bb1e44
--- /dev/null
@@ -0,0 +1,33 @@
+T(RN, 0x1.fffffep+127,             inf,             inf,          0x0p+0, INEXACT|OVERFLOW)
+T(RN, 0x1.fffffep+127,          0x0p+0, 0x1.fffffcp+127,          0x0p+0, 0)
+T(RN,        0x1p-149,            -inf,          0x0p+0,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN,        0x1p-149,             inf,        0x1p-148,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffff8p-127,          0x1p+0, 0x1.fffffcp-127,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN, 0x1.fffffcp-127,          0x1p+0,        0x1p-126,          0x0p+0, 0)
+T(RN, 0x1.000002p-126,          0x0p+0,        0x1p-126,          0x0p+0, 0)
+T(RN,        0x1p-126,          0x0p+0, 0x1.fffffcp-127,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN,          0x1p+0,     0x1.0002p+0,   0x1.000002p+0,          0x0p+0, 0)
+T(RN,          0x1p+0,     0x1.fffep-1,   0x1.fffffep-1,          0x0p+0, 0)
+T(RN,          0x1p+0,          0x1p+0,          0x1p+0,          0x0p+0, 0)
+T(RN,          0x1p+0,         -0x1p+0,   0x1.fffffep-1,          0x0p+0, 0)
+T(RN,         -0x1p+0,          0x1p+0,  -0x1.fffffep-1,          0x0p+0, 0)
+T(RN,         -0x1p+0,         -0x1p+0,         -0x1p+0,          0x0p+0, 0)
+T(RN,          0x1p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,             nan,          0x1p+0,             nan,          0x0p+0, 0)
+T(RN,             nan,             nan,             nan,          0x0p+0, 0)
+T(RN,          0x0p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,          0x0p+0,             inf,        0x1p-149,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN,          0x0p+0,            -inf,       -0x1p-149,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN,          0x0p+0,          0x0p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,          0x0p+0,         -0x0p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,         -0x0p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,         -0x0p+0,             inf,        0x1p-149,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN,         -0x0p+0,            -inf,       -0x1p-149,          0x0p+0, INEXACT|UNDERFLOW)
+T(RN,         -0x0p+0,          0x0p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x0p+0,         -0x0p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,             inf,             inf,             inf,          0x0p+0, 0)
+T(RN,             inf,            -inf, 0x1.fffffep+127,          0x0p+0, 0)
+T(RN,             inf,             nan,             nan,          0x0p+0, 0)
+T(RN,            -inf,             inf,-0x1.fffffep+127,          0x0p+0, 0)
+T(RN,            -inf,            -inf,            -inf,          0x0p+0, 0)
+T(RN,            -inf,             nan,             nan,          0x0p+0, 0)