Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Unused Static Stack Varibles

Name: Anonymous 2009-10-31 1:48

Hey /prog/,

In C, are variables located in the stack recycled/freed when they are no longer needed? I suppose that this depends on the compiler, but does anyone know if GCC does this?

To be a little clearer, let's say I have these two translation units...

main.c/.h
settings.c/.h

main() calls the function get_settings() (located in settings.c) which will fill the variables (located in main.c) with data read from a file and then returns.

Since there is no longer any purpose for the staic variables declared in settings.c, are they freed once get_settings() returns?

Name: Anonymous 2009-11-01 8:45

>>48
Smart enough? Let's say you have a pool of usable registers, for the variable `a', the compiler assigns one register (edx), and after `a' becomes out of scope, the register(edx) becomes free to be used for another variable, in which case it assigns it to b. This was just an example. Go read the dragon book or some other book on compiler design. Or if you can't be bothered to read some proper literature, http://en.wikipedia.org/wiki/Register_allocation

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List