ARM Compiler toolchain provides the following run-time memory models:
- One-region model
The application stack and heap grow towards each other in the same region of memory. See Figure 7. In this run-time memory model, the heap is checked against the value of the stack pointer when new heap space is allocated, for example, when
- Two-region model
The stack and heap are placed in separate regions of memory, see Figure 8. For example, you might have a small block of fast RAM that you want to reserve for stack use only. For a two-region model you must import
In this run-time memory model, the heap is checked against the heap limit when new heap space is allocated.
In both run-time memory models, the stack grows unchecked.