Jyri Virkki wrote:
> Roland Mainz wrote:
> > http://cr.opensolaris.org/~chriszhu/ruby-webrev/usr/src/cmd/ruby18/Makefile.sfw.html
> > > RUBY_CFLAGS="-fast -xipo -xtarget=generic"
> >
> > Please do _not_ use "-fast". "-fast" is a macro which expands to many
> > options, including those who change the representation of the
> > floating-point datatypes (which is usually bad (unless you're sure the
> > code doesn't rely on some certain floating-point features)) and change
> > framepointer stuff on x86 (AFAIK the DTrace people won't like that...).
> 
> AFAIK these come from the work done by the performance team while
> figuring out build options for CoolStack:
> http://src.opensolaris.org/source/xref/webstack/webstack/trunk/src/ruby-1.8.6/make_solaris.sh
> 
> (Doesn't necessarily mean it is right.. would like to hear from the
> perf team about it though.)

Two things:
- "-fast" is in _any_ case wrong since it's a compiler macro which
expands to a list of other options which changes from compiler to
compiler version. It's a minefield armed with teeth. If you'want to use
the options please list each option seperately but do not use "-fast".

- "-fast" changes the representation of the floating-point datatypes.
IMO this is not a good idea unless the whole Ruby code has been reviewed
and _tested_ that it doesn't rely on any IEEE 754 features (like "Inf"
or "NaN" (including the detail that |NaN| has a sign)) or SIGFPE.
And changing the default floating-point datatypes is a BIG "no no no" if
you provide anything as shared libraries since the consumer applications
would have to use the same datatype format as the library (which may
turn into pile of nasty problems).

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 7950090
 (;O/ \/ \O;)

Reply via email to