about summary refs log tree commit diff
path: root/math/test-misc.c
diff options
context:
space:
mode:
Diffstat (limited to 'math/test-misc.c')
-rw-r--r--math/test-misc.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/math/test-misc.c b/math/test-misc.c
index 04935dc26d..098695f73f 100644
--- a/math/test-misc.c
+++ b/math/test-misc.c
@@ -144,5 +144,24 @@ main (void)
     }
 #endif
 
+#ifdef __i386__
+  /* This is a test for the strange long doubles in x86 FPUs.  */
+  {
+    union
+    {
+      char b[10];
+      long double d;
+    } u =
+      { .b = { 0, 0, 0, 0, 0, 0, 0, 0x80, 0, 0 } };
+
+    if (fpclassify (u.d) != FP_NORMAL)
+      {
+	printf ("fpclassify (0x00008000000000000000) failed: %d (%Lg)\n",
+		fpclassify (u.d), u.d);
+	result = 1;
+      }
+  }
+#endif
+
   return result;
 }