This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
the size of tree_decl
- From: Dan Nicolaescu <dann at ics dot uci dot edu>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 10 Feb 2003 14:15:36 -0800
- Subject: the size of tree_decl
tree_decl is a big structure (108 bytes on x86), a lot of tree_decls are
created during a compilation and a lot more are created on the
tree-ssa branch.
It seems that there are some things in a tree_decl that could be
placed somewhere else, and save some space that way.
tree vindex; -- seems to be only used in C++ and java
Can it be moved to the language specific part of the decl?
/* In a FUNCTION_DECL, this is DECL_SAVED_TREE. */
tree saved_tree;
/* In a FUNCTION_DECL, these are function data which is to be kept
as long as FUNCTION_DECL is kept. */
tree inlined_fns;
These seem to be only used for FUNCTION_DECLs. Can they be added as
an attribute to FUNCTION_DECLs instead of taking up space for all the
decl types?
Also not all decl types use these:
tree assembler_name;
tree section_name;
rtx rtl; /* RTL representation for object. */
None of these fields are accessed very often, so it shouldn't be a
big problem that they are stored somewhere else.
Comments?
[unfortunately I won't have time to work on this for about a month, so
if somebody wants to implement this in the meanwhile, please do so]