ix86_pad_returns has rtx ret = BB_END (bb); ... emit_jump_insn_before (gen_return_internal_long (), ret); delete_insn (ret); ... It may leave BB_END (bb) pointing to deleted insn. A patch is posed at http://gcc.gnu.org/ml/gcc-patches/2010-11/msg01930.html
I have a fix.
Author: uros Date: Thu Nov 18 23:46:13 2010 New Revision: 166921 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=166921 Log: PR target/46546 * config/i386/i386.c (ix86_reorg): Call compute_bb_for_insn. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.c
Fixed.