Hi! As mentioned in the PR, the builtin-integral-1.c testcase fails on i?86 Solaris. The problem is that on Solaris the dg-add-options c99_runtime adds -std=c99, which turns -fexcess-precision=standard, and that on some arches changes _388 = (double) i1_63(D); _389 = (double) i2_335(D); _390 = _388 * _389; _391 = (long double) _390; _392 = __builtin_ceill (_391); into _398 = (double) i1_63(D); _399 = (long double) _398; _400 = (double) i2_335(D); _401 = (long double) _400; _402 = _399 * _401; _403 = __builtin_ceill (_402); But the default value of the max-ssa-name-query-depth param prevents in this case from recognizing the argument to __builtin_ciell will always be integral value. We have the possibility to either tweak the testcase (e.g. add -fexcess-precision=fast, or --param max-ssa-name-query-depth=3), or change the IMHO way too low default. As only the latter will help for excess precision code in real-world even for simple addition of two values, I think it is best to bump the default. Perhaps even 5 wouldn't hurt, but maybe we can increase it more for gcc 7.
Bootstrapped/regtested on x86_64-linux and i686-linux, tested on the testcase using cross to i386-pc-solaris2.11. Ok for trunk? 2016-02-23 Jakub Jelinek <ja...@redhat.com> PR c/69918 * params.def (PARAM_MAX_SSA_NAME_QUERY_DEPTH): Bump default from 2 to 3. --- gcc/params.def.jj 2016-02-01 23:34:34.000000000 +0100 +++ gcc/params.def 2016-02-23 18:43:04.359322654 +0100 @@ -1191,7 +1191,7 @@ DEFPARAM (PARAM_MAX_SSA_NAME_QUERY_DEPTH "max-ssa-name-query-depth", "Maximum recursion depth allowed when querying a property of an" " SSA name.", - 2, 1, 0) + 3, 1, 0) DEFPARAM (PARAM_MAX_RTL_IF_CONVERSION_INSNS, "max-rtl-if-conversion-insns", Jakub