This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH]: Interprocedural detection of readonly and non-addressablestatic variables




Daniel Berlin wrote:
On Wed, 2005-06-08 at 20:48 +0200, Jan Hubicka wrote:
I made this decision before danny started breaking the decls into separate structures. The right thing to do most likely to wait until danny gets the function decl broken out and shove it in there.

Maybe.

But anything that goes only on global vars definitely belongs in the
cgraph stuff.
Yeah.  We need to avoid allocating datastructures we won't use.  If it
is in the decl nodes, we get it for all vars and all functions.  We
probably need it only for available functions analyzed by IPA and this
is what global substructure if cgraph node is meant for.  We will need
to re-thing this scheme anyway.  As discussed while back with Richard,
currently we have struct function and cgraph node with similar meaning
and both not fitting very well (lifetime wise) for most of datas we use
to store in them and both quite a memory hogs....


And just a heads up:


FUNCTION_DECL will be the largest DECL, and probably pretty close to the
current size (108 bytes).

I'm guessing (92+ bytes) at this point.

Most of the extra cost is flags, arguments tree, and result tree.


--Dan
Yes but this is the correct place to put it. There will be one allocated for every function (at least at -O1 and above) and it does not not require any space for any other kind of decl.

kenny


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]