mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-14 16:03:41 +00:00
Set up a stack
I forgot to actually set up a stack for the program but strangely it (mostly) worked - probably due to inlining.
This commit is contained in:
@@ -26,6 +26,14 @@ SECTIONS
|
|||||||
/* used by the startup to initialize data */
|
/* used by the startup to initialize data */
|
||||||
_sidata = LOADADDR(.data);
|
_sidata = LOADADDR(.data);
|
||||||
|
|
||||||
|
/* Put the stack at the bottom of RAM, so that the application will
|
||||||
|
* crash on stack overflow instead of silently corrupting memory.
|
||||||
|
* See: http://blog.japaric.io/stack-overflow-protection/ */
|
||||||
|
.stack :
|
||||||
|
{
|
||||||
|
KEEP(*(.stack))
|
||||||
|
} >RAM
|
||||||
|
|
||||||
/* This is the initialized data section
|
/* This is the initialized data section
|
||||||
The program executes knowing that the data is in the RAM
|
The program executes knowing that the data is in the RAM
|
||||||
but the loader puts the initial values in the FLASH (inidata).
|
but the loader puts the initial values in the FLASH (inidata).
|
||||||
|
|||||||
Reference in New Issue
Block a user