[Bug tree-optimization/38977] [4.4 Regression] bash no longer builds with profile-feedback

matz at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Fri Jan 30 17:13:00 GMT 2009



------- Comment #8 from matz at gcc dot gnu dot org  2009-01-30 17:12 -------
But special_function_p looks at the name of the function, which is
__builtin_setjmp in case the builtin is used explicitely:

% cat x.c
#include <setjmp.h>
jmp_buf env;
int f(void){  return __builtin_setjmp(env);}
% gdb --args cc1 x.c
(gdb) b special_function_p
...
474       if (fndecl && DECL_NAME (fndecl)
(gdb)
487           const char *name = IDENTIFIER_POINTER (DECL_NAME (fndecl));
(gdb)
488           const char *tname = name;
(gdb) p name
$3 = 0x7ffff7f60460 "__builtin_setjmp"

Up to now, it's only a theory that it might be setjmp related, purely because
it's jobs.c of bash which exhibits the error, and presumably jobs.c deals
with, well, jobs and forks, and possibly setjmps around.

But what we do know is, that its indeed Ben's patch.  Reverting it lets
bash build again.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38977



More information about the Gcc-bugs mailing list