This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: the size of tree_decl
- From: law at redhat dot com
- To: Dan Nicolaescu <dann at ics dot uci dot edu>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 11 Feb 2003 23:43:20 -0700
- Subject: Re: the size of tree_decl
- Reply-to: law at redhat dot com
In message <200302102217.h1AMHvkA027073@gremlin.ics.uci.edu>, Dan Nicolaescu wr
ites:
>
>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.
I'm all for it :-)
> tree vindex; -- seems to be only used in C++ and java
>Can it be moved to the language specific part of the decl?
Hmm, I'm somewhat surprised it's not used by Obj-C. No strong
opinions here.
> /* 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?
That would be wise.
>
>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.
I'm not real keen on moving data out just to store it somewhere
else -- unless the data is only used on a few specific nodes
Jeffk