This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] define WIDEST_HARDWARE_FP_SIZE on mips


On Mon, 2009-03-02 at 20:09 +0000, Richard Sandiford wrote:
> Laurent GUERBY <laurent@guerby.net> writes:
> > I did not see Olivier patch commit, what was the choosen solution on
> > this issue? (grep WIDEST on config/mips return no result)
> 
> Right.  This probably isn't what you want to hear, but you
> successfully found the last message on the issue. ;)
> 
> The open question (to me) is why Olivier's original testcase failed
> with 128-bit long double.  

I don't know either.

> I'm not sure anyone has really explained that.
> If you're in a position to debug the failing tests and figure out what's
> going wrong, that'd be a big help.

I'm waiting a bit to see if AdaCore people did find a solution, if not
I'll investigate. As discussed in the old thread we don't really
want 128 bit Long_Long_Float anyway if not supported in hardware.

For reference, below ACATS log extract of the failing tests,
some of it is self-explanatory. To me most of the stuff seem
to be that 128 bit float software routines might just not be accurate
enough.

Laurent

,.,. CXG2001 ACATS 2.5 09-03-01 18:13:30
---- CXG2001 Check the attributes Model_Mantissa, Machine_Mantissa,
                Machine_Radix, and Machine_Rounds.
   - CXG2001 checking Standard.Float.
   - CXG2001 checking a digits 18 floating point type.
   * CXG2001 'Machine_Mantissa incorrectly reports 64.
   - CXG2001 computed Machine_Mantissa is 113.
   - CXG2001 computed Radix is 2.
   - CXG2001 computed Rounds is TRUE.
**** CXG2001 FAILED ****************************.

,.,. CXG2002 ACATS 2.5 09-03-01 18:13:42
---- CXG2002 Check the accuracy of the complex modulus function.
   * CXG2002 Constraint_Error raised in test 1.
   * CXG2002 Constraint_Error raised in test 2.
   * CXG2002 test 8 -- abs(1 + 1*i) actual:  1.41421356237309515E+00
                expected:  1.41421356237309505E+00 difference:
                -9.67108337857069955E-17 max_err:
                4.59988025005012224E-19.
**** CXG2002 FAILED ****************************.

,.,. CXG2003 ACATS 2.5 09-03-01 18:13:53
---- CXG2003 Check the accuracy of the sqrt function.
   * CXG2003 Constraint_Error raised in test 1.
   * CXG2003 test 6 -- sqrt(pi**2) actual:  3.14159265358979312E+00
                expected:  3.14159265358979324E+00 difference:
                -1.22514845490862001E-16 mre: 6.81224316017310918E-19.
   * CXG2003 test 7 - 1 of argument range actual: 
                7.07351888193769041E-01 expected: 
                7.07351888193768995E-01 difference: 
                4.58672105485885784E-17 mre: 3.25260651745651330E-19.
   * CXG2003 test 7 - 2 of argument range actual: 
                7.07597080163328007E-01 expected: 
                7.07597080163328052E-01 difference:
                -4.44642067116732454E-17 mre: 3.25260651745651330E-19.
...
   * CXG2003 test 7 - 999 of argument range actual: 
                9.99653486459409324E-01 expected: 
                9.99653486459409304E-01 difference: 
                1.99762544557940621E-17 mre: 3.25260651745651330E-19.
**** CXG2003 FAILED ****************************.


,.,. CXG2004 ACATS 2.5 09-03-01 18:14:07
---- CXG2004 Check the accuracy of the sin and cos functions.
   * CXG2004 test 2 cos(r) actual:  8.66025403784438597E-01 expected: 
                8.66025403784438647E-01 difference:
                -5.01985605860788553E-17 mre: 3.39452824996011974E-19.
   * CXG2004 test 2 cos(d,360) actual:  8.66025403784438708E-01
                expected:  8.66025403784438647E-01 difference: 
                6.08237418764367987E-17 mre: 3.25260651745651330E-19.
...
   * CXG2004 cos test of range7pi..7.5pi 1 actual:
                -9.99998766299703523E-01 expected:
                -9.99998766299703532E-01 difference: 
                8.77794598400815491E-18 mre: 6.50521303491302660E-19.
**** CXG2004 FAILED ****************************.

,.,. CXG2006 ACATS 2.5 09-03-01 18:14:34
---- CXG2006 Check the accuracy of the complex argument function.
   * CXG2006 test 5 argument(z) actual:  7.85398163397448279E-01
                expected:  7.85398163397448310E-01 difference:
                -3.06287113727155003E-17 mre: 5.42101086242752217E-19.
   * CXG2006 test 5 argument(z, 360) actual:  NaN********************
                expected:  4.50000000000000000E+01 difference:
                -1.75489589358094425E-15 mre: 2.43945488809238498E-17.
   * CXG2006 test 6 argument(z) actual: -7.85398163397448279E-01
                expected: -7.85398163397448310E-01 difference: 
                3.06287113727155003E-17 mre: 5.42101086242752217E-19.
...
   * CXG2006 test 16 argument(z, 360) actual:  NaN********************
                expected:  4.50000000000000000E+01 difference:
                -1.75489589358094425E-15 mre: 2.43945488809238498E-17.
**** CXG2006 FAILED ****************************.


,.,. CXG2007 ACATS 2.5 09-03-01 18:14:43
---- CXG2007 Check the accuracy of the Compose_From_Polar function.
   * CXG2007 test 5 compose_from_polar(m,r) real part actual: 
                1.00000000000000007E+00 expected: 
                1.00000000000000000E+00 difference: 
                6.83312867691599753E-17 max err:
                4.78589993413988738E-19.
   * CXG2007 test 5 compose_from_polar(m,r) imaginary part actual: 
                NaN******************** expected: 
                1.00000000000000000E+00 difference:
                -8.86779590992175306E-17 max err:
                4.78589993413988738E-19.
...
   * CXG2007 test 13 compose_from_polar(m,r) imaginary part actual:
                -1.22464679914735321E-16 expected: 
                0.00000000000000000E+00 difference:
                -1.22464679914735321E-16 max err:
                3.25260651745651330E-19.
**** CXG2007 FAILED ****************************.


,.,. CXG2010 ACATS 2.5 09-03-01 18:15:34
---- CXG2010 Check the accuracy of the exp function.
   * CXG2010 test 1 -- exp(1) actual:  2.71828182845904509E+00 expected:
                2.71828182845904524E+00 difference:
                -1.44632569809566291E-16 max err:
                1.17886682553726646E-18.
   * CXG2010 test 2 -- exp(16)*exp(-16) actual:  NaN********************
                expected:  1.00000000000000000E+00 difference:
                -4.26077577691081888E-17 max err:
                9.75781955236953991E-19.
   * CXG2010 test 3 -- exp(pi)*exp(-pi) actual:  1.00000000000000009E+00
                expected:  1.00000000000000000E+00 difference: 
                9.45809280458914814E-17 max err:
                9.75781955236953991E-19.
   * CXG2010 test 5 - 1 exp ( 7.07399674405360929E-01) actual: 
                1.90579581958160982E+00 expected: 
                1.90579581958160995E+00 difference:
                -1.27605390973616066E-16 max err:
                1.85964117111375656E-18.
   * CXG2010 test 6 - 1 exp ( 1.00041421356237310E+00) actual: 
                1.63313144965398116E-01 expected: 
                1.63313144965398124E-01 difference:
                -7.92625949448227974E-18 max err:
                9.75781955236953991E-19.
**** CXG2010 FAILED ****************************.

,.,. CXG2011 ACATS 2.5 09-03-01 18:15:49
---- CXG2011 Check the accuracy of the log function.
   * CXG2011 special value test 2 -- log(10) actual: 
                2.30258509299404590E+00 expected: 
                2.30258509299404568E+00 difference: 
                2.17057274931597988E-16 max err:
                9.98587104062752634E-19.
   * CXG2011 special value test 3 -- log(2) actual: 
                6.93147180559945286E-01 expected: 
                6.93147180559945309E-01 difference:
                -2.32019264911897949E-17 max err:
                4.33680868994201774E-19.
   * CXG2011 Taylor Series Test - 1 log ( NaN********************)
                actual:  0.00000000000000000E+00 expected:
                -5.41016884070266718E-18 difference: 
                5.41016884070266718E-18 max err:
                4.33680868994201774E-19.
   * CXG2011 Log Difference Identity - 1 log ( 7.07337174405360929E-01) 
                actual: -3.46247818134755969E-01 expected:
                -3.46247818134756011E-01 difference: 
                4.16333634234433703E-17 max err:
                4.33680868994201774E-19.
   * CXG2011 Log Product Identity - 3 log ( 1.66720000000000000E+01)
                actual:  5.62746133114191238E+00 expected: 
                5.62746133114191327E+00 difference:
                -8.88178419700125232E-16 max err:
                2.44052232032089241E-18.
   - CXG2011 log accuracy checked to 19 digits.
   * CXG2011 Log 10 Test - 1 log ( 3.16811538250821076E-01) actual:
                -4.99199009824301543E-01 expected:
                -4.99199009824301555E-01 difference: 
                1.19424763420159907E-17 max err:
                1.00000000000000000E-17.
**** CXG2011 FAILED ****************************.

,.,. CXG2012 ACATS 2.5 09-03-01 18:16:07
---- CXG2012 Check the accuracy of the ** operator.
   * CXG2012 2.0**0.5 actual:  1.41421356237309515E+00 expected: 
                1.41421356237309505E+00 difference: 
                9.67108337857069955E-17 max err:
                6.14977988562014017E-19.
   * CXG2012 Small range 1:  2.50500250000000000E-01 ** 1.5 actual: 
                1.25375375124999986E-01 expected: 
                1.25375375125000000E-01 difference:
                -1.37943128031281503E-17 max err:
                5.50895164585519003E-19.
   * CXG2012 Constraint_Error raised in Large Range Test 1A.
**** CXG2012 FAILED ****************************.


,.,. CXG2013 ACATS 2.5 09-03-01 18:16:18
---- CXG2013 Check the accuracy of the TAN and COT functions.
   * CXG2013 Tan_Test  1: tan(-7.83828936297753108E-01)  actual:
                -9.96866460463681214E-01 expected:
                -9.96866460463681237E-01 difference: 
                2.31224177246244545E-17 max err:
                1.04699823566755141E-18.
   * CXG2013 Tan_Test  1: tan( 2.74967818544091668E+00)  actual:
                -4.13294628883120685E-01 expected:
                -4.13294628883120678E-01 difference:
                -6.68811748865798892E-18 max err:
                1.04699823566755141E-18.
   * CXG2013 Cot_Test  1: cot( 1.88503405350886070E+01)  actual: 
                1.27451252274449186E+03 expected: 
                1.27451252274449192E+03 difference:
                -5.91541099664025638E-14 max err:
                1.33441236264968302E-15.
**** CXG2013 FAILED ****************************.

,.,. CXG2014 ACATS 2.5 09-03-01 18:16:32
---- CXG2014 Check the accuracy of the SINH and COSH functions.
   * CXG2014 sinh(1) actual:  NaN******************** expected: 
                1.17520119364380146E+00 difference:
                -4.25201193643801824E-01 max err:
                1.01932454980493402E-18.
   * CXG2014 cosh(1) actual:  NaN******************** expected: 
                1.54308063481524378E+00 difference:
                -2.93080634815243999E-01 max err:
                1.33840910126959889E-18.
   * CXG2014 sinh(2) actual:  NaN******************** expected: 
                3.62686040784701877E+00 difference: 
                3.10639592152978846E-01 max err:
                3.14579994679152032E-18.
   * CXG2014 cosh(2) actual:  NaN******************** expected: 
                3.76219569108363146E+00 difference: 
                3.00304308916366227E-01 max err:
                3.26318459327078156E-18.
   * CXG2014 sinh(-1) actual: NaN******************** expected:
                -1.17520119364380146E+00 difference: 
                4.25201193643801824E-01 max err:
                1.01932454980493402E-18.

raised CONSTRAINT_ERROR : s-imgrea.adb:319 explicit raise
(=> this one might be similar to Olivier original testcase)

,.,. CXG2015 ACATS 2.5 09-03-01 18:17:15
---- CXG2015 Check the accuracy of the ARCSIN and ARCCOS functions.
   * CXG2015 test 1 arcsin( 5.00000000000000000E-01) actual: 
                5.23598775598298927E-01 expected: 
                5.23598775598298873E-01 difference: 
                5.36137974294081943E-17 max err:
                5.42101086242752217E-19.
...
   * CXG2015 test 6 arccos(-7.07106781186547524E-01, 360) actual: 
                NaN******************** expected: 
                1.35000000000000000E+02 difference:
                -1.75489589358094425E-15 max err:
                7.31836466427715493E-17.
   * CXG2015 Taylor Series test 1: arcsin(-1.24750000000000000E-01) 
                actual: -1.25075858849556772E-01 expected:
                -1.25075858849556770E-01 difference:
                -1.99800906676059108E-18 max err:
                4.33680868994201774E-19.
   * CXG2015 Taylor Series test 1: arccos(-1.24750000000000000E-01) 
                actual:  1.69587218564445339E+00 expected: 
                1.69587218564445341E+00 difference:
                -2.00363883857575575E-17 max err:
                7.35467323173382830E-19.
**** CXG2015 FAILED ****************************.

,.,. CXG2016 ACATS 2.5 09-03-01 18:17:29
---- CXG2016 Check the accuracy of the ARCTAN function.
   * CXG2016 special value test 2 arctan( 5.77350269189625765E-01)
                actual:  5.23598775598298816E-01 expected: 
                5.23598775598298873E-01 difference:
                -5.74085050331074598E-17 max err:
                6.23416249179165050E-19.
   * CXG2016 special value test 2 arctan( 5.77350269189625765E-01,
                cycle=>360) actual:  NaN******************** expected:  
                3.00000000000000000E+01 difference:
                -3.29030038336297394E-15 max err:
                1.87024874753749515E-17.
   * CXG2016 special value test 3 arctan( 1.73205080756887729E+00)
                actual:  1.04719755119659780E+00 expected: 
                1.04719755119659775E+00 difference: 
                5.74627151417317350E-17 max err:
                5.96071276515147053E-19.
   * CXG2016 special value test 3 arctan( 1.73205080756887729E+00,
                cycle=>360) actual:  6.00000000000000033E+01 expected:  
                6.00000000000000000E+01 difference: 
                3.29030038336297394E-15 max err:
                3.41523684332933897E-17.
   * CXG2016 Taylor_Series_Test  0: arctan(-6.25000000000000000E-02) 
                actual: -6.24188099959573500E-02 expected:
                -6.24188099959573485E-02 difference:
                -1.54907493670945532E-18 max err:
                6.50521303491302660E-19.
**** CXG2016 FAILED ****************************.

,.,. CXG2017 ACATS 2.5 09-03-01 18:17:37
---- CXG2017 Check the accuracy of the TANH function.
   * CXG2017 tanh(1) actual:  7.61594155955764851E-01 expected: 
                7.61594155955764888E-01 difference:
                -3.70797142990042516E-17 max err:
                6.60577630751603494E-19.
   * CXG2017 tanh(2) actual:  9.64027580075816903E-01 expected: 
                9.64027580075816884E-01 difference: 
                1.94072188874905294E-17 max err:
                8.36160637323315404E-19.
**** CXG2017 FAILED ****************************.

,.,. CXG2018 ACATS 2.5 09-03-01 18:17:52
---- CXG2018 Check the accuracy of the complex EXP function.
   * CXG2018 exp(1+0i) real part actual:  2.71828182845904509E+00
                expected:  2.71828182845904524E+00 difference:
                -1.44632569809566291E-16 max err:
                2.06301694469021630E-18.
   * CXG2018 exp(pi/2*i) real part actual:  1.00000000000000006E+00
                expected:  1.00000000000000000E+00 difference: 
                6.12323399573676604E-17 max err:
                3.90312782094781596E-19.
...
   * CXG2018 Identity_2_Test  1 1: Exp(( 1.63875000000000000E+00, 
                1.63875000000000000E+00))  real part actual: 
                1.00000000000000005E+00 expected: 
                1.00000000000000000E+00 difference: 
                4.92758729287547301E-17 max err:
                2.16840434497100887E-18.
**** CXG2018 FAILED ****************************.

,.,. CXG2019 ACATS 2.5 09-03-01 18:18:10
---- CXG2019 Check the accuracy of the complex LOG function.
   * CXG2019 Identity_1_Test  1 1: Log(( 2.08000000000000000E+00, 
                1.00000000000000000E-01))  real part actual: 
                7.33522255402499934E-01 expected: 
                7.33522255402499823E-01 difference: 
                1.11022302462515654E-16 max err:
                2.81892564846231153E-18.
   * CXG2019 Identity_1_Test  1 1: Log(( 1.01000000000000000E+03,
                -3.97000000000000000E+03))  imaginary part actual:
                -1.32167322321704454E+00 expected:
                -1.32167322321704456E+00 difference: 
                2.77555756156289135E-17 max err:
                3.72569854781238076E-18.
   * CXG2019 Identity_1_Test  1 23: Log(( 2.50000000000000011E-03,
                -1.92500000000000000E-01))  real part actual:
                -1.64757480111209631E+00 expected:
                -1.64757480111209653E+00 difference: 
                2.22044604925031308E-16 max err:
                4.64439086461508066E-18.
**** CXG2019 FAILED ****************************.


,.,. CXG2020 ACATS 2.5 09-03-01 18:18:30
---- CXG2020 Check the accuracy of the complex SQRT function.
   * CXG2020 sqrt(-2)+1  imaginary part actual:  1.41421356237309515E+00
                expected:  1.41421356237309505E+00 difference: 
                9.67108337857069955E-17 max err:
                9.19976050010024449E-19.
   * CXG2020 Identity_1_Test  1 1: Sqrt(( 0.00000000000000000E+00, 
                2.00000000000000000E-02))  real part actual: 
                1.00000000000000006E-01 expected: 
                1.00000000000000000E-01 difference: 
                5.55111520584384396E-18 max err:
                9.21571846612678769E-19.
   * CXG2020 Identity_1_Test  1 1: Sqrt(( 0.00000000000000000E+00, 
                2.00000000000000000E-02))  imaginary part actual: 
                1.00000000000000006E-01 expected: 
                1.00000000000000000E-01 difference: 
                5.55111520584384396E-18 max err:
                9.21571846612678769E-19.
**** CXG2020 FAILED ****************************.

,.,. CXG2021 ACATS 2.5 09-03-01 18:18:49
---- CXG2021 Check the accuracy of the complex SIN and COS functions.
   * CXG2021 cos(pi/2+0i) real part actual:  6.12323399573676604E-17
                expected:  0.00000000000000000E+00 difference: 
                6.12323399573676604E-17 max err: 1.30104260698260532E-18
                efactor: 0.00000000000000000E+00.
   * CXG2021 Identity_1_Test  0 0: Sin(( 6.25000000000000000E-02, 
                6.25000000000000000E-02))  real part actual: 
                6.24593178423802006E-02 expected: 
                6.25813484132769356E-02 difference:
                -1.22030570896734958E-04 max err:
                1.34189725732436773E-18 efactor:
                1.06258389154469496E+00.
...   
   * CXG2021 Identity_2_Test  0 0: Cos(( 1.60000000000000000E+01, 
                1.60000000000000000E+01))  imaginary part actual: 
                1.20755403270153316E+06 expected: 
                1.28543457665469979E+06 difference:
                -7.78805439531666307E+04 max err:
                3.06608190217967514E-12 efactor:
                1.28543943055171073E+06.
**** CXG2021 FAILED ****************************.

,.,. CXG2024 ACATS 2.5 09-03-01 18:19:11
---- CXG2024 Check the accuracy of multiplication and division of mixed 
                decimal and binary fixed point numbers.
   * CXG2024 11 - expected -51.00  got -50.0.
   * CXG2024 12 - expected 51.00  got  50.0.
**** CXG2024 FAILED ****************************.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]