This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
gcc: alternate activation records
- From: phi gcc <phi dot gcc at gmail dot com>
- To: "gcc-help at gcc dot gnu dot org" <gcc-help at gcc dot gnu dot org>
- Date: Tue, 21 Jun 2016 09:06:17 +0100
- Subject: gcc: alternate activation records
- Authentication-results: sourceware.org; auth=none
Hi gcc gurus,
I discovered that gcc can generate static function with alternate
activation records, i.e try to avoid a frame alloc when possible, then
having variant epilog matching the variant prolog.
For now I observed only two variant on prolog's that are the no frame
alloc or full frame alloc.
The no alloc is trigged by things like
int func(int c, more args)
{ locals consuming frame;
if(c==1)return(5);
.... work with args, locals, globals...
...
}
When c==1 no frame is allocated and we return the constant...
My question is, is there other case of alternate prologs ?
like 'may be' partial frame alloc?
Thanx in advance,
Cheers,
Phi