This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Copying collection and our ggc_collect practices
Daniel Berlin <dberlin@dberlin.org> writes:
> On Wed, 17 Sep 2003, Zack Weinberg wrote:
>> Daniel Berlin <dberlin@dberlin.org> writes:
>> > Currently, gcc has a bad habit of keeping ggc_alloc'd pointers in unmarked
>> > local variables, and expecting the addresses not to change over a
>> > ggc_collect.
>> Could you give examples?
>
> Sure, here's one.
>
> In cgraphunit.c, cgraph_expand_functions stores cgraph_node * (which are
> ggc_alloc'd) in the order array, which is xcalloc'd and unmarked. It calls
> cgraph_expand_function which calls the expand_function hook which calls
> ggc_collect.
Ok, so that's pretty easy to turn into a file-scope static as ggc
needs. I seriously suggest you do a sweep, find all of these, and fix
them.
zw