diff --git a/src/link/link.ld b/src/link/link.ld index 943066b..938ddbd 100644 --- a/src/link/link.ld +++ b/src/link/link.ld @@ -7,11 +7,10 @@ MEMORY io : ORIGIN = 0xA0000000, LENGTH = 0x00800000 /* 8M */ } -stack_ptr = 0x7FFFEFF0; - STARTUP(startup.o) INPUT(kernel.o) +DEBUGGER_VAR_SIZE = 0x10000; SECTIONS { .start : @@ -82,4 +81,11 @@ SECTIONS . = ALIGN(32 / 8); . = ALIGN(32 / 8); _end = .; PROVIDE (end = .); + . = (ORIGIN(ram) + LENGTH(ram) - DEBUGGER_VAR_SIZE - 0x10); + stack_ptr = . | ~(LENGTH(ram)-1) & 0x7fffffff; + . = . + 0x10; + .dbg_vars . (NOLOAD) : + { + *(.dbg_vars) + } }