Files
tinygo/targets/avr.ld
Ayke van Laethem ce0abac5a3 avr: use compiler-rt
2020-06-27 01:22:31 +02:00

56 lines
1.2 KiB
Plaintext

MEMORY
{
FLASH_TEXT (rw) : ORIGIN = 0, LENGTH = __flash_size - _bootloader_size
RAM (xrw) : ORIGIN = 0x800000 + __ram_start, LENGTH = __ram_size
}
ENTRY(main)
SECTIONS
{
.text : ALIGN(2)
{
KEEP(*(.vectors))
KEEP(*(.text.__vector_RESET))
KEEP(*(.text.main)) /* main must follow the reset handler */
*(.text)
*(.text.*)
*(.rodata)
*(.rodata.*)
*(.progmem.data)
. = ALIGN(16); /* required because of lld (not sure why) */
} > FLASH_TEXT
.stack (NOLOAD) :
{
. += _stack_size;
_stack_top = .;
} >RAM
_sidata = LOADADDR(.data);
.data :
{
_sdata = .; /* used by startup code */
*(.data)
*(.data.*)
_edata = .; /* used by startup code */
} >RAM AT>FLASH_TEXT
.bss :
{
_sbss = .; /* used by startup code */
*(.bss)
*(.bss.*)
*(COMMON)
_ebss = .; /* used by startup code */
} >RAM
}
/* For the memory allocator. */
_heap_start = _ebss;
_heap_end = ORIGIN(RAM) + LENGTH(RAM);
_globals_start = _sdata;
_globals_end = _ebss;