Locality problems caused by size based allocation?

Zack Weinberg zack@codesourcery.com
Tue Dec 17 20:03:00 GMT 2002


Daniel Berlin <dberlin@dberlin.org> writes:

> On Tue, 17 Dec 2002, Jeff Sturm wrote:
>> What exactly is "size based allocation"?
> What ggc-page does, which is segregate objects based on size rather than
> age or object type.
>
> This doesn't work well for RTL, for instance, where you have 3 (or was it
> 2 or 4, i forget which) sizes of RTL, so size allocation guarantees that
> in a linear walk of RTL, you'll end up moving across all different
> random pages.

FYI, I plan to address this particular issue after the New Year, by
picking up Dave Miller's suggestion from awhile back to avoid ever
allocating long-lived RTL, and then reverting RTL to obstacks -- but
just one obstack, data on which lives only during calls to expand_body
(or something like that).

zw



More information about the Gcc mailing list