[Bug rtl-optimization/49710] [4.7 Regression] segfault
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jul 12 08:56:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49710
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-07-12 08:54:29 UTC ---
Caused by http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=172430
but more probably this is just a dup of PR48813, which was for this testcase
latent before. Honza, any chance you could look at that and PR48813? The ICE
is in the exact same spot, base_loop is non-NULL, but base_loop->header is
NULL,
as the loop has been marked for removal in delete_basic_block called from
remove_bbs/remove_path during the peeling. The same remove_path then calls
fix_loop_placements which calls fix_bb_placements which ICEs.
That delete_basic_block is apparently called on the loop->latch bb, which
queues the loop for removal anyway, but loop->header hasn't been removed and
its bb->loop_father still points to the loop that has now header and latch
fields NULL.
More information about the Gcc-bugs
mailing list