On 11/4/24 2:58 AM, Richard Biener wrote:
All GENERIC decls (tree_decl_minimal) will grow by 8 bytes (and we have 4 bytes
unused padding). On the GIMPLE side it's probably a "hooray - more space for
flags!". It does feel a bit backwards because the savings we got by making
the TREE_BLOCK part of the location.
I'm sure we'll use up that padding, probably quicker than any of us
would estimate.
The whole point of the current scheme was to try and avoid the growth in
that data structure and maybe that's inevitable at this point. So I'm
not going to object.
tackling this. What I'm less sure is whether we really want to make this
configurable - I think we're past the point of considering a 32bit host to be
a platform to compile arbitrary large sources.
I wouldn't let 32bit hosts drive any significant decision; so I wouldn't
make it configurable. Those platforms may suffer a bit, but they're
less relevant every day IMHO.
So - thanks for proposing this. I'll propose to make the change unconditionally
though - it's quite difficult to optimize structure layout when bits in it are
of unknown size and alignment.
+1 from me.
jeff