http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49170
Summary: [4.7 regression] Several libstdc++ tests fail to link on Solaris 8/9: cexp missing Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: r...@gcc.gnu.org CC: wschm...@gcc.gnu.org Host: *-*-solaris2.[89] Target: *-*-solaris2.[89] Build: *-*-solaris2.[89] Between 20110523 and 20110525, several libstdc++ tests fail to link on Solaris 8 and 9 (both SPARC and x86) that lacks cexp in libm: FAIL: 26_numerics/complex/13450.cc (test for excess errors) Excess errors: Undefined first referenced symbol in file cexp /var/tmp//ccvyjKLM.o cexpf /var/tmp//ccvyjKLM.o cexpl /var/tmp//ccvyjKLM.o ld: fatal: Symbol referencing errors. No output written to ./13450.exe Comparing -save-temps output before and after the patch, I find no changes to the .ii file, no calls to cexp before the patch, but calls after. I very strongly suspect this patch: 2011-05-24 Bill Schmidt <wschm...@linux.vnet.ibm.com> PR tree-optimization/46728 * tree-ssa-math-opts.c (powi_table): New. (powi_lookup_cost): New. (powi_cost): New. (powi_as_mults_1): New. (powi_as_mults): New. (gimple_expand_builtin_powi): New. (execute_cse_sincos): Add switch case for BUILT_IN_POWI. (gate_cse_sincos): Remove sincos/cexp restriction. Please fix. Rainer