avr-gcc-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-gcc-list] Stack use - possible bug


From: Dale
Subject: [avr-gcc-list] Stack use - possible bug
Date: Wed, 9 Jun 2010 14:42:49 +0200
User-agent: Mutt/1.5.20 (2009-06-14)

Hi

Stumbled onto this due to dire shortage of ram and monitoring stack
usage. To get an idea of whether it was enough, etc.

I'll try and put together sample code which replicates it but the
scenario for now is:

static void initialise(void)
{
        char    buf[50];        // some data

        // call a bunch of functions
}

int main(void) 
{
        initialise();
        
        // bunch of stuff
}

Now, initialise() is only ever called once and therefore is optimised
and included inline into main().

What I find is that space used by buf[] is never released from the
stack. There may in fact be more since initialise() calls a whole bunch
of other functions, some of which may or may not have variables on the
stack and/or be one-off functions and as a result 'rolled-into' code
that then forms main().

Given my constrained setup, its critical that this stack space is freed.

Anyone come across this? Is it a known issue?

--

Cheers,

Dale.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]