This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Boehm's GC crashed by adjustment of GC root set


Laurynas Biveinis wrote:
> Hi,
> 
> So far I've been debugging GCC bootstrap failures with Boehm's GC, and
> now I'm stuck.
> 
> I used to register all GC roots at the startup of GCC, including
> stringpool roots. That worked fine until first ht_expand() call, which
> moves identifier hash table around in the memory and Boehm's GC still
> uses its old location as a root segment. Oops. But if I try to remove
> the old root segment and register the current one with
> GC_remove_roots() and GC_add_roots(), first GC_collect() crashes with
> 

Are you trying to do incremental marking?
If the root set changes in the middle of an incremental mark and it's
still got things from the old root set to mark, i bet it blows up, :)

--Dan


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]