[Bug middle-end/17044] [3.5 Regression] libgcc2.c:169: internal compiler error: Segmentation fault

dave at hiauly1 dot hia dot nrc dot ca gcc-bugzilla@gcc.gnu.org
Tue Aug 24 20:00:00 GMT 2004


------- Additional Comments From dave at hiauly1 dot hia dot nrc dot ca  2004-08-24 20:00 -------
Subject: Re:  [3.5 Regression] libgcc2.c:169: internal c

> > The exception occurs in the following call to free:
> > 
> > Breakpoint 13, 0x400000000031e350 in thread_block (bb=0x800003fffeacd8c0)
> >     at ../../gcc/gcc/tree-ssa-threadupdate.c:381
> > 381           free (rd);
> > (gdb) bt
> > #0  0x400000000031e350 in thread_block (bb=0x800003fffeacd8c0)
> >     at ../../gcc/gcc/tree-ssa-threadupdate.c:381
> OK.  That means there's got to be a memory management error of some
> kind.  I wonder if we're freeing GC'd memory or something stupid like
> that.

That might be the case although I didn't actually determine how the
object was created.  I know the fault occurred for i = 0 and all = false.

One problem is that the varray is a local and it's created and
managed using VARRAY macros that use GC.  There's also a missing
"struct" in the call to xcalloc.

I have an alternate fix that uses NOGC macros and VARRAY_FREE if
it's preferable to use malloc for the allocation of the varray.

Dave


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17044



More information about the Gcc-bugs mailing list