On 25 January 2011 03:26, Aleksej Saushev asau@inbox.ru wrote:
Hello!
Squeak uses highly unportable flag "-mno-fused-madd". It isn't present in many systems, even those using GCC, since many systems use older compilers.
Also, why do you build fdlibm? It is old stuff that works not so well, we have better libm. Is there a way to use our libm?
I asked same question few weeks ago. Check mailing list archive for discussion. In short: differrent libm implementations work differently and some have bad support of IEEE standard.
No "-mno-fused-madd" in our compiler.
--- unix/plugins/FloatMathPlugin/config.cmake.orig 2011-01-25 04:56:17.000000000 +0300 +++ unix/plugins/FloatMathPlugin/config.cmake 2011-01-25 05:15:59.000000000 +0300 @@ -10,7 +10,7 @@ # GCC optimizations break fdlibm so disable them for now.
IF (CMAKE_COMPILER_IS_GNUCC)
- SET (LIBM_CFLAGS "${CMAKE_C_FLAGS} -O0 -mno-fused-madd")
- SET (LIBM_CFLAGS "${CMAKE_C_FLAGS}")
ELSE () SET (LIBM_CFLAGS "${CMAKE_C_FLAGS}") ENDIF ()
-- HE CE3OH...