[commit] r2374 - Re-enable FloatMathPlugin optimisation. Resolve plugin symbols lazily on FreeBSD.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[commit] r2374 - Re-enable FloatMathPlugin optimisation. Resolve plugin symbols lazily on FreeBSD.

commits-3
 
Author: piumarta
Date: 2011-03-30 01:24:30 -0700 (Wed, 30 Mar 2011)
New Revision: 2374

Modified:
   trunk/platforms/unix/ChangeLog
   trunk/platforms/unix/plugins/FloatMathPlugin/config.cmake
   trunk/platforms/unix/vm/sqUnixExternalPrims.c
Log:
Re-enable FloatMathPlugin optimisation.  Resolve plugin symbols lazily on FreeBSD.

Modified: trunk/platforms/unix/ChangeLog
===================================================================
--- trunk/platforms/unix/ChangeLog 2011-03-21 17:48:42 UTC (rev 2373)
+++ trunk/platforms/unix/ChangeLog 2011-03-30 08:24:30 UTC (rev 2374)
@@ -1,3 +1,9 @@
+2011-03-30  Ian Piumarta  <[hidden email]>
+
+ * plugins/FloatMathPlugin/config.cmake: Re-enable GCC optimisations.
+
+ * vm/sqUnixExternalPrims.c: Resolve symbols lazily on FreeBSD.
+
 2011-03-14  Ian Piumarta  <com -dot- gmail -at- piumarta (backwards)>
 
  * plugins/SerialPlugin/sqUnixSerial.c (portOpenFailed): Ensure

Modified: trunk/platforms/unix/plugins/FloatMathPlugin/config.cmake
===================================================================
--- trunk/platforms/unix/plugins/FloatMathPlugin/config.cmake 2011-03-21 17:48:42 UTC (rev 2373)
+++ trunk/platforms/unix/plugins/FloatMathPlugin/config.cmake 2011-03-30 08:24:30 UTC (rev 2374)
@@ -7,10 +7,10 @@
   PLUGIN_DEFINITIONS (-D__LITTLE_ENDIAN=1)
 ENDIF ()
 
+SET (LIBM_CFLAGS "${CMAKE_C_FLAGS}")
+
 # GCC optimizations break fdlibm so disable them for now.
-
-IF (CMAKE_COMPILER_IS_GNUCC)
-  SET (LIBM_CFLAGS "${CMAKE_C_FLAGS} -O0 -mno-fused-madd")
-ELSE ()
-  SET (LIBM_CFLAGS "${CMAKE_C_FLAGS}")
-ENDIF ()
+#
+# IF (CMAKE_COMPILER_IS_GNUCC AND CMAKE_SYSTEM_NAME STREQUAL "Linux")
+#   SET (LIBM_CFLAGS "${CMAKE_C_FLAGS} -O0 -mno-fused-madd")
+# ENDIF ()

Modified: trunk/platforms/unix/vm/sqUnixExternalPrims.c
===================================================================
--- trunk/platforms/unix/vm/sqUnixExternalPrims.c 2011-03-21 17:48:42 UTC (rev 2373)
+++ trunk/platforms/unix/vm/sqUnixExternalPrims.c 2011-03-30 08:24:30 UTC (rev 2374)
@@ -100,6 +100,11 @@
   extern int sqIgnorePluginErrors;
 #endif
 
+#if defined(__FreeBSD__)
+# undef RTLD_NOW
+# define RTLD_NOW RTLD_LAZY
+#endif
+
 /*** options ***/
 
 extern char *squeakPlugins;