http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49299
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
AssignedTo|unassigned at gcc dot |jakub at gcc dot gnu.org
|gnu.org |
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-06-06
10:56:55 UTC ---
Created attachment 24447
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24447
gcc46-pr49299.patch
Untested fix. Turning of a normal indirect call into an optionally direct
noreturn call seems to work and worked before too.
Anyway, if you prefer to just give up in gimple_ic_transform instead, like
/* Don't optimize noreturn calls, they should be cold. */
if (gimple_call_flags (stmt) & ECF_NORETURN)
return false;
I can test that instead.