This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Local variables storage optimization

Hi ,

I am using ARM Cortex M4 . When I compile my code I get "No space in Execution region with .ANY selector matching section .const data .When I decrease the code size I am able to compile the code properly.I think I am overusing the data section which in my controller is 32KB.

I want to know where are all local variables stored in ARM KEIL IDE.Is it stored in Stack dynamically or stored in DATA memory Statically .

Thanks in advance

Regards,
Dhanush

Parents
  • "So small that it is not realistically usable for automatic variable storage."

    Yes, some processors has a stack just intended to handle a couple of levels of return addresses.

    Real general-purpose processors on the other hand allows an arbitrary chunk of the RAM to be used as stack - or as multiple stacks in case of use with an OS that allows threads.

    The 8051 is better suited for a language like Forth, with software-implemented push and pop operations. Most high-level procedural languages expects arbitrary access to an arbitrary amount of local variables.

Reply
  • "So small that it is not realistically usable for automatic variable storage."

    Yes, some processors has a stack just intended to handle a couple of levels of return addresses.

    Real general-purpose processors on the other hand allows an arbitrary chunk of the RAM to be used as stack - or as multiple stacks in case of use with an OS that allows threads.

    The 8051 is better suited for a language like Forth, with software-implemented push and pop operations. Most high-level procedural languages expects arbitrary access to an arbitrary amount of local variables.

Children