https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109695
--- Comment #25 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Aldy Hernandez from comment #24)
> FYI. I originally tried new/delete for allocation, which was a tad slower
> than ggc_alloc / ggc_free. Not too much, but measurable.
>
> Another idea would be to have a global obstack which auto_int_range<> uses,
> which gets freed at the end of every pass. This saves us various
> ggc_free()s throughout, especially at destruction.
I think ggc_{alloc,free} is a no-go. For now I'd go with new/delete, the
choice of N should be so that we do not get allocation in >90% of the
cases anyway.