[Vm-dev] [commit] r2374 - Re-enable FloatMathPlugin optimisation.
Resolve plugin symbols lazily on FreeBSD.
commits at squeakvm.org
commits at squeakvm.org
Wed Mar 30 08:24:31 UTC 2011
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 <piumarta at freebsd.piumarta.com>
+
+ * 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;
More information about the Vm-dev
mailing list