summaryrefslogtreecommitdiffstats
path: root/sys/amd64/include/float.h
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>2008-01-17 13:12:46 +0000
committerbde <bde@FreeBSD.org>2008-01-17 13:12:46 +0000
commit691f99e98f534b08876da278935889a3d2624e22 (patch)
treeb14a95e8b51f4ae8ad6f39dd215a612ab0738533 /sys/amd64/include/float.h
parent961a1f29ef8a0e9a69bfe822b795ef304ef9f1ad (diff)
downloadFreeBSD-src-691f99e98f534b08876da278935889a3d2624e22.zip
FreeBSD-src-691f99e98f534b08876da278935889a3d2624e22.tar.gz
Translate from the i386. All FP constants and operations are evaluated
in the range and precision of their type(s) on amd64, but FLT_EVAL_METHOD said that they were evalated in the "interesting" (buggy) i387 methods. float_t was broken compatibly with FLT_EVAL_METHOD. These definitions seem to be broken on powerpc and possibly on arm. float_t is float on powerpc with gcc [-notraditional] according to glibc, and FLT_EVAL_METHOD is marked with XXX on arm.
Diffstat (limited to 'sys/amd64/include/float.h')
-rw-r--r--sys/amd64/include/float.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/amd64/include/float.h b/sys/amd64/include/float.h
index 52b899f..8f0d713 100644
--- a/sys/amd64/include/float.h
+++ b/sys/amd64/include/float.h
@@ -42,7 +42,7 @@ __END_DECLS
#define FLT_RADIX 2 /* b */
#define FLT_ROUNDS __flt_rounds()
#if __ISO_C_VISIBLE >= 1999
-#define FLT_EVAL_METHOD (-1) /* i387 semantics are...interesting */
+#define FLT_EVAL_METHOD 0 /* no promotions */
#define DECIMAL_DIG 21 /* max precision in decimal digits */
#endif
OpenPOWER on IntegriCloud