math: add special case test vectors
[libc-test] / src / math / special / remainderf.h
diff --git a/src/math/special/remainderf.h b/src/math/special/remainderf.h
new file mode 100644 (file)
index 0000000..074a15d
--- /dev/null
@@ -0,0 +1,66 @@
+T(RN,          0x0p+0,          0x1p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x0p+0,          0x1p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,          0x1p-1,          0x1p+0,          0x1p-1,          0x0p+0, 0)
+T(RN,         -0x1p-1,          0x1p+0,         -0x1p-1,          0x0p+0, 0)
+T(RN,          0x1p+0,          0x1p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x1p+0,          0x1p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,        0x1.8p+0,          0x1p+0,         -0x1p-1,          0x0p+0, 0)
+T(RN,       -0x1.8p+0,          0x1p+0,          0x1p-1,          0x0p+0, 0)
+T(RN,          0x1p+1,          0x1p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x1p+1,          0x1p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,             inf,          0x1p+0,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,          0x1p+0,             nan,          0x0p+0, INVALID)
+T(RN,             nan,          0x1p+0,             nan,          0x0p+0, 0)
+T(RN,          0x0p+0,         -0x1p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x0p+0,         -0x1p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,          0x1p-1,         -0x1p+0,          0x1p-1,          0x0p+0, 0)
+T(RN,         -0x1p-1,         -0x1p+0,         -0x1p-1,          0x0p+0, 0)
+T(RN,          0x1p+0,         -0x1p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x1p+0,         -0x1p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,        0x1.8p+0,         -0x1p+0,         -0x1p-1,          0x0p+0, 0)
+T(RN,       -0x1.8p+0,         -0x1p+0,          0x1p-1,          0x0p+0, 0)
+T(RN,          0x1p+1,         -0x1p+0,          0x0p+0,          0x0p+0, 0)
+T(RN,         -0x1p+1,         -0x1p+0,         -0x0p+0,          0x0p+0, 0)
+T(RN,             inf,         -0x1p+0,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,         -0x1p+0,             nan,          0x0p+0, INVALID)
+T(RN,             nan,         -0x1p+0,             nan,          0x0p+0, 0)
+T(RN,          0x0p+0,          0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,          0x0p+0,         -0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,          0x0p+0,             inf,          0x0p+0,          0x0p+0, 0)
+T(RN,          0x0p+0,            -inf,          0x0p+0,          0x0p+0, 0)
+T(RN,          0x0p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,         -0x0p+0,          0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,         -0x0p+0,         -0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,         -0x0p+0,             inf,         -0x0p+0,          0x0p+0, 0)
+T(RN,         -0x0p+0,            -inf,         -0x0p+0,          0x0p+0, 0)
+T(RN,         -0x0p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,          0x1p+0,          0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,         -0x1p+0,          0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,             inf,          0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,          0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,             nan,          0x0p+0,             nan,          0x0p+0, 0)
+T(RN,         -0x1p+0,         -0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,             inf,         -0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,         -0x0p+0,             nan,          0x0p+0, INVALID)
+T(RN,             nan,         -0x0p+0,             nan,          0x0p+0, 0)
+T(RN,             inf,          0x1p+1,             nan,          0x0p+0, INVALID)
+T(RN,             inf,         -0x1p-1,             nan,          0x0p+0, INVALID)
+T(RN,             inf,             nan,             nan,          0x0p+0, 0)
+T(RN,            -inf,          0x1p+1,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,         -0x1p-1,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,             nan,             nan,          0x0p+0, 0)
+T(RN,             nan,             nan,             nan,          0x0p+0, 0)
+T(RN,          0x1p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,         -0x1p+0,             nan,             nan,          0x0p+0, 0)
+T(RN,          0x1p+0,             inf,          0x1p+0,          0x0p+0, 0)
+T(RN,         -0x1p+0,             inf,         -0x1p+0,          0x0p+0, 0)
+T(RN,             inf,             inf,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,             inf,             nan,          0x0p+0, INVALID)
+T(RN,          0x1p+0,            -inf,          0x1p+0,          0x0p+0, 0)
+T(RN,         -0x1p+0,            -inf,         -0x1p+0,          0x0p+0, 0)
+T(RN,             inf,            -inf,             nan,          0x0p+0, INVALID)
+T(RN,            -inf,            -inf,             nan,          0x0p+0, INVALID)
+T(RN,        0x1.cp+0,          0x1p-1,         -0x1p-2,          0x0p+0, 0)
+T(RN,       -0x1.cp+0,          0x1p-1,          0x1p-2,          0x0p+0, 0)
+T(RN,        0x1.cp+0,         -0x1p-1,         -0x1p-2,          0x0p+0, 0)
+T(RN,       -0x1.cp+0,         -0x1p-1,          0x1p-2,          0x0p+0, 0)