On Mon, 12 Nov 2007, chromatic via RT wrote:

> On Monday 12 November 2007 12:33:41 Andy Dougherty wrote:

> > It may well be there's an issue with gcc's optimizer, since the problem
> > goes away without optimization, but I think it's also fair to say that
> > the definition of FLOAT_IS_ZERO in include/parrot/misc.h is
> > perhaps not optimal here.  I'd prefer the simpler definition:
> >
> >     #define FLOAT_IS_ZER0(f) ((f) == 0.0)

> For what it's worth (as the person who had to distill the existing abominable 
> macro definition and try to get it working portably), I now agree with Andy 
> here.

As a further data point, changing that definition in include/parrot/misc.h
fixed the following 18 test failures for me:

 Failed Test                       Stat Wstat Total Fail  Failed  List of Failed
 -------------------------------------------------------------------------------
t/compilers/imcc/imcpasm/opt1.t      5  1280    78    5   6.41%  42 48 54 59 74
t/op/arithmetics.t                   3   768    26    3  11.54%  22-24
t/op/number.t                        1   256    57    1   1.75%  10
t/pmc/boolean.t                      1   256     8    1  12.50%  2
t/pmc/complex.t                      5  1280    53    5   9.43%  10-11 36 38 41
t/pmc/float.t                        2   512    42    2   4.76%  6 12
t/pmc/string.t                       1   256    47    1   2.13%  16

-- 
    Andy Dougherty              [EMAIL PROTECTED]

Reply via email to