[Vm-dev] Failed to build FloatMathPlugin on FreeBSD

David T. Lewis lewis at mail.msen.com
Fri Mar 11 00:41:33 UTC 2011


Thank you for the explanation.

Dave

On Thu, Mar 10, 2011 at 11:59:58PM +0100, Henrik Johansen wrote:
> 
> The compiler option specifies whether to use available machine code to contract floating point operations with no intermediate rounding.
> So unless you're running on a ppc, or some obscure other ones which contain such opcodes, you can safely discard it :)
> If you do, the code in FloatMathPlugin contain such structures, and platform-independent results are important to you, it's a good idea to turn on.
> 
> Cheers,
> Henry
> 
> PS. -mno-fused-madd is specific to ppc and a few other platforms according to the GCC docs though...
> In November last year, it was aliased to the platform-independent -ffp-contract=off (which I suppose excludes the equivalent IA64 capabilities, as well as any found on future machines), might be a good idea to turn that on just in case in the future.
> The equivalent for the intel compiler is IPF-fma strict (for IA64 only).
> 
> 
> On Mar 10, 2011, at 9:12 44PM, David T. Lewis wrote:
> 
> > 
> > On Thu, Mar 10, 2011 at 09:27:23AM -0800, Gary Dunn wrote:
> >> 
> >> I am setting up to try to add DBus support to the vm. Decided it was
> >> time to practice building an unmodified vm. Downloaded sources for
> >> 4.4.7.2357. I have been running Squeak with 3.11.3.2135 and that seems
> >> to work fine.
> >> 
> >> make stopped with
> >> 
> >> [ 10%] Building C object
> >> FloatMathPlugin/CMakeFiles/FloatMathPlugin.dir/usr/home/gary/OpenSlate/Squeak/Squeak-4.4.7.2357-src/unix/src/vm/intplugins/FloatMathPlugin/FloatMathPlugin.c.o
> >> cc1: error: unrecognized command line option "-mno-fused-madd"
> >> *** Error code 1
> >> 
> >> I was able to make squeak
> >> 
> >> This is a slightly old version of FreeBSD:
> >> 
> >> $ uname -a
> >> FreeBSD slate01 8.0-RELEASE-p2 FreeBSD 8.0-RELEASE-p2 #0: Thu Jan 28
> >> 06:16:14 HST 2010     gary at slate01:/usr/obj/usr/src/sys/GENERIC  i386
> > 
> > Hi Gary,
> > 
> > Apparently the -mno-fused-madd option is supported only on newer gcc compilers.
> > As a workaround, look at platforms/unix/plugins/FloatMathPlugin/config.cmake
> > and edit it out. Clean out your build directory, then run configure and you
> > should be back in business. This will not effect the behavior of your plugin,
> > at least not in any way that will be detected by the test suite.
> > 
> > There was some earlier discussion of this on the list. I suspect that the
> > -mno-fused-madd compiler option is completely unnecessary, although I don't
> > know for certain if this is the case.
> > 
> > Can any of our numeric gurus confirm if it is safe to just get rid of this
> > compiler option for all platforms? It seems to have no effect that can be
> > detected by the unit tests.
> > 
> > Earlier discussion was here:
> >  http://lists.squeakfoundation.org/pipermail/vm-dev/2011-January/006672.html
> > 
> > Dave
> > 
> > p.s. welcome to the vm-dev list!
> > 


More information about the Vm-dev mailing list