https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124514
Bug ID: 124514
Summary: attributes take up too memory
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Keywords: internal-improvement, memory-hog
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Currently the way attributes are done is they are linked together (which is
fine) but the way we represent a C++11/C23 attribute is via an extra TREE_LIST.
But the attribute itself is a TREE_LIST which is much bigger than needed here.
And this is not type safe either.
I don't remember if this is recorded anywhere yet either. Maybe there was a
wiki page for this improvement before but I can't find the specifics.
https://gcc.gnu.org/wiki/Speedup_areas#preview mentions:
Kill TREE_LIST and TREE_VECTOR
Improve attribute handling
But nothing else on that subject.