[patches] Re: infinite loop in SPEC's gcc after your patches
Richard Henderson
rth@redhat.com
Tue Jul 24 13:24:00 GMT 2001
On Tue, Jul 24, 2001 at 08:37:29PM +0200, Jan Hubicka wrote:
> > > (jump_insn 14561 4779 14562 (set (pc)
> > > (label_ref 4787)) -1 (nil)
> > > (nil))
> > > ../../gcc/gcc/reload.c:4217: confused by earlier errors, bailing out
> > >
> > > "Flow control insn inside a basic block" - looks pretty damning to me.
> >
> > I only wanted to note, that my m68k bootstrap just aborted with a
> > similar error.
>
> This looks like problem related to my effort to update CFG after
> insn splitting (find_sub_basic_blocks). I will try to commonize
> more code with find_basic_blocks and figure out where the problem
> happends now.
There's one problem with this symptom (at a different place)
that is because of the toplev.c change here:
1.425 (kenner 19-Feb-01): while (tem || tem2)
1.159 (law 10-Mar-99): {
1.425 (kenner 19-Feb-01): tem = tem2 = 0;
1.326 (samuel 28-Apr-00): timevar_push (TV_JUMP);
1.495 (hubicka 22-Jul-01): rebuild_jump_labels (insns);
1.495 (hubicka 22-Jul-01): cleanup_cfg (CLEANUP_EXPENSIVE);
1.326 (samuel 28-Apr-00): timevar_pop (TV_JUMP);
While you updated gcse to basically preserve the CFG, local cse
was not updated. Both have been run at this point, and the CFG
is corrupt; cleanup_cfg then makes things worse, which leads to
the abort.
r~
More information about the Gcc-patches
mailing list