[PATCH 1/4] libstdc++: Further simplify _Hashtable inheritance hierarchy

Jonathan Wakely jwakely@redhat.com
Mon Dec 16 14:41:19 GMT 2024


On Mon, 16 Dec 2024 at 14:26, Jonathan Wakely <jwakely@redhat.com> wrote:
>
> I've pushed this patch series now, and I hope I'm done with
> refactoring _Hashtable.
>
> I see about a 2% reduction in memory and in compilation time for an
> explicit instantiation of std::unordered_list<std::string> when

For a translation unit that does:

template class std::unordered_set<int>;
template class std::unordered_set<std::string>;
template class std::unordered_map<int, int>;
template class std::unordered_map<std::string, int>;

I see a bigger improvement for -O2, between 5% and 10%, with fewer
entries (and shorter entries) in the compiler's string pool.

> comparing r15-5031-gdd08cdccc36d08 to current trunk. It's not huge,
> but it's something, and I find the code easier to understand now.



More information about the Libstdc++ mailing list