On 11/13/20 9:27 AM, Richard Biener wrote:
On Fri, Nov 13, 2020 at 3:04 PM Nathan Sidwell <nat...@acm.org> wrote:
struct GTY(()) lang_decl_base {
- /* Larger than necessary for faster access. */
- ENUM_BITFIELD(lang_decl_selector) selector : 16;
+ ENUM_BITFIELD(lang_decl_selector) selector : 3;
...
+ unsigned attached_decls_p : 1;
+
+ /* 10 spare bits. */
so for "faster access' you could still make selector 8 bits, reducing
spare bits to 5.
could do -- we always know what kind of lang_decl to expect from the
originating tree's code. It's only for the garbage collector that we
need the selector. (+ the checkers)
Can you add comments (like on some other bits var / fn / type)
what kind of decls the new bits are used on? Maybe some
bits can be overloaded if spare bits are needed.
sure. For the record it's VAR_DECL, TYPE_DECL, FUNCTION_DECL,
CONCEPT_DECL, TEMPLATE_DECL, NAMESPACE_DECL (that's to many for a
TREE_CHECK, we only go to 5).
Thanks,
Richard.
nathan
--
Nathan Sidwell
--
Nathan Sidwell