diff options
Diffstat (limited to 'configure.ml')
| -rw-r--r-- | configure.ml | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/configure.ml b/configure.ml index 5f326425fc..af07ec4bb0 100644 --- a/configure.ml +++ b/configure.ml @@ -944,9 +944,10 @@ let () = let add = (+.) in let b = ldexp 1. 53 in let s = add 1. (ldexp 1. (-52)) in - if (add b s <= b || add b 1. <> b) && not sse2_math then - die "Detected double-rounding due to the use of intermediate \ - 80-bit floating-point representation, and SSE2_MATH is not available." + if (add b s <= b || add b 1. <> b || ldexp 1. (-1074) <= 0.) + && not sse2_math then + die "Detected non IEEE-754 compliant architecture (or wrong \ + rounding mode). Use of Float is thus unsafe." (** * OCaml runtime flags *) |
