This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] Bootstrap failure on i686-linux
- From: Diego Novillo <dnovillo at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: Andrew Pinski <pinskia at physics dot uc dot edu>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 03 Sep 2003 10:39:31 -0400
- Subject: Re: [tree-ssa] Bootstrap failure on i686-linux
- Organization: Red Hat Canada
- References: <1062466928.6332.27.camel@frodo.toronto.redhat.com> <CFD18463-DCFC-11D7-811A-000393A6D2F2@physics.uc.edu> <20030902182659.GC6041@redhat.com> <1062596404.3195.5.camel@frodo.toronto.redhat.com>
On Wed, 2003-09-03 at 09:40, Diego Novillo wrote:
> On Tue, 2003-09-02 at 14:26, Richard Henderson wrote:
> > On Mon, Sep 01, 2003 at 09:20:40PM -0700, Andrew Pinski wrote:
> > > The specific part that is causing the problems both on the mainline and
> > > the tree-ssa
> >
> > No, it isn't. The immediate problem on tree-ssa is me failing to
> > resolve conflicts properly when patching the branch.
> >
> I think there still are missing bits. I can now bootstrap/compare but
> we fail configuring libstdc++. A similar fix seems to be missing in
> cp/decl.c. I'm not familiar with this code, but the fix mirrors what
> you changed in c-decl.c, it seems mostly obvious to me. If you think
> it's OK, I'll apply it.
>
> This is not enough, however. I get further in libstdc++, but we SEGV
> compiling allocator-inst.cc. I'm still looking.
>
This is another case of calling free_after_parsing() too soon. This
time, it's being called from rest_of_compilation (because
DECL_DEFER_OUTPUT wasn't set).
We then go on to call emit_associated_thunks() from
cp/semantics.c:expand_body, which ultimately results in calling
emit_line_note which tries to dereference cfun->emit which is NULL.
#0 0x08280e90 in emit_line_note (location=
{file = 0x8a91300 "/home/dnovillo/tree-ssa/native/bld.tobiano/i686-pc-linux-gnu/libstdc++-v3/include/bits/allocator.h", line = 136})
at /home/dnovillo/tree-ssa/src/gcc/emit-rtl.c:4682
#1 0x08315f62 in init_function_start (subr=0x557744d0)
at /home/dnovillo/tree-ssa/src/gcc/function.c:6362
#2 0x0808e371 in start_function (declspecs=0x0, declarator=0x557744d0,
attrs=0x0, flags=1) at /home/dnovillo/tree-ssa/src/gcc/cp/decl.c:13515
#3 0x08150fbf in maybe_clone_body (fn=0x5576cd20)
at /home/dnovillo/tree-ssa/src/gcc/cp/optimize.c:215
#4 0x08145094 in expand_or_defer_fn (fn=0x5576cd20)
at /home/dnovillo/tree-ssa/src/gcc/cp/semantics.c:3042
#5 0x080c2db1 in instantiate_decl (d=0x5576cd20, defer_ok=0)
at /home/dnovillo/tree-ssa/src/gcc/cp/pt.c:10937
#6 0x080c3400 in instantiate_pending_templates ()
at /home/dnovillo/tree-ssa/src/gcc/cp/pt.c:11013
#7 0x080eb4cc in finish_file ()
at /home/dnovillo/tree-ssa/src/gcc/cp/decl2.c:2684
#8 0x081943b0 in c_common_parse_file (set_yydebug=0)
at /home/dnovillo/tree-ssa/src/gcc/c-opts.c:1207
Diego.