[PATCH libstdc++/66689] comp_ellint_3 and ellint_3 return garbage values

Jonathan Wakely jwakely@redhat.com
Mon Nov 20 21:51:00 GMT 2017


On 20/11/17 21:07 +0000, Jonathan Wakely wrote:
>On 20/11/17 21:01 +0000, Jonathan Wakely wrote:
>>On 20/11/17 21:43 +0100, Christophe Lyon wrote:
>>>On 20 November 2017 at 17:02, David Edelsohn <dje.gcc@gmail.com> wrote:
>>>>This patch has introduced new regressions on at least PowerPC and AArch64.
>>>>
>>>>FAIL: ext/special_functions/hyperg/check_value.cc execution test
>>>>FAIL: tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc
>>>>execution test
>>>>
>>>>Thanks, David
>>>
>>>On AArch64 and ARM, I have also noticed
>>>FAIL: special_functions/18_riemann_zeta/check_value.cc (test for excess errors)
>>>UNRESOLVED: special_functions/18_riemann_zeta/check_value.cc
>>>compilation failed to produce executable
>>>because:
>>>/libstdc++-v3/testsuite/special_functions/18_riemann_zeta/check_value.cc:
>>>In function 'void test(const testcase_riemann_zeta<Ret> (&)[Num],
>>>Ret)':
>>>/libstdc++-v3/testsuite/special_functions/18_riemann_zeta/check_value.cc:292:
>>>error: 'riemann_zeta' is not a member of 'std'
>>>/libstdc++-v3/testsuite/special_functions/18_riemann_zeta/check_value.cc:292:
>>>note: suggested alternative: 'remainder'
>>>compiler exited with status 1
>>
>>The problem is that { dg-addition-options } was changed to dg-options,
>>and so the first dg-options that enables the special functions is not
>>used:
>>
>>--- a/libstdc++-v3/testsuite/special_functions/18_riemann_zeta/check_value.cc
>>+++ b/libstdc++-v3/testsuite/special_functions/18_riemann_zeta/check_value.cc
>>@@ -21,7 +21,7 @@
>>//  riemann_zeta
>>
>>// This can take long on simulators, timing out the test.
>>-// { dg-additional-options "-DMAX_ITERATIONS=5" { target simulator } }
>>+// { dg-options "-DMAX_ITERATIONS=5" { target simulator } }
>>
>
>
>I have a script to check dejagnu directives, and it says:
>
>testsuite/tr1/5_numerical_facilities/special_functions/20_riemann_zeta/check_value_neg.cc has multiple dg-options directives
>testsuite/ext/special_functions/airy_ai/check_nan.cc has dg-options after dg-add-options
>testsuite/ext/special_functions/hyperg/check_nan.cc has dg-options after dg-add-options
>testsuite/ext/special_functions/conf_hyperg/check_nan.cc has dg-options after dg-add-options
>testsuite/ext/special_functions/airy_bi/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/02_assoc_legendre/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/14_expint/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/12_ellint_2/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/09_cyl_bessel_k/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/21_sph_neumann/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/15_hermite/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/19_sph_bessel/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/05_comp_ellint_2/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/11_ellint_1/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/17_legendre/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/10_cyl_neumann/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/06_comp_ellint_3/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/06_comp_ellint_3/pr66689.cc has dg-options after dg-add-options
>testsuite/special_functions/01_assoc_laguerre/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/16_laguerre/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/13_ellint_3/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/13_ellint_3/pr66689.cc has dg-options after dg-add-options
>testsuite/special_functions/07_cyl_bessel_i/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/18_riemann_zeta/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/18_riemann_zeta/check_value.cc has multiple dg-options directives
>testsuite/special_functions/08_cyl_bessel_j/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/04_comp_ellint_1/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/03_beta/check_nan.cc has dg-options after dg-add-options
>testsuite/special_functions/20_sph_legendre/check_nan.cc has dg-options after dg-add-options
>
>For now I'll just fix the multiple dg-options one causing the FAILs.


I've committed this patch, which should help for Christophe's cases.
It won't help the AIX execution FAILs.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch.txt
Type: text/x-patch
Size: 2898 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20171120/95bf932d/attachment.bin>


More information about the Libstdc++ mailing list