Files
mkrtos-real/mkrtos_bootstrap/bsp/SWM34S/link.lds
2024-03-31 16:06:11 +00:00

71 lines
1.3 KiB
Plaintext
Executable File

/* Entry Point */
ENTRY(Reset_Handler)
/* Specify the memory areas */
MEMORY
{
ROM (arx) : ORIGIN = 0x00000000, LENGTH = 0x00080000 /* 512k */
RAM (arw) : ORIGIN = 0x20000000, LENGTH = 0x00010000 /* 64k */
}
/* Define output sections */
SECTIONS
{
. = ORIGIN(ROM);
.text :
{
KEEP(*(.isr_vector))
*(.text)
*(.text*)
*(.rodata*)
} > ROM
. = ALIGN(4);
__data_load__ = LOADADDR(.data);
. = ALIGN(4);
.data :
{
__data_start__ = .;
*(.data)
*(.data*)
. = ALIGN(4);
__data_end__ = .;
} > RAM AT> ROM
. = ALIGN(4);
.bss :
{
__bss_start__ = .;
*(.bss)
*(.bss*)
*(COMMON)
. = ALIGN(4);
__bss_end__ = .;
} > RAM
. = ALIGN(4);
.heap :
{
end = .;
__HeapBase = .;
*(.heap)
} > RAM
/* .stack_dummy section doesn't contains any symbols.
* It is only used for linker to calculate size of stack sections */
.stack_dummy :
{
*(.stack)
} > RAM
__StackTop = ORIGIN(RAM) + LENGTH(RAM);
__StackLimit = __StackTop - SIZEOF(.stack_dummy);
assert(__StackLimit >= __HeapLimit, "region RAM overflowed with stack")
}