INCLUDE file.ld
MEMORY
{
@> @<Some random portion of \ld\ code@> @=
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 20K
FLASH (rx!w) : ORIGIN = 0x8000000, LENGTH = 128K
ASH (rx) : ORIGIN = 8001000, LENGTH = 128K
@> @<Some random portion of \ld\ code@> @=
CLASH (rx) : ORIGIN = 700000, LENGTH = 128K
ASH (rx) : ORIGIN = $8000000, LENGTH = 128K
CLASH (rx) : ORIGIN = 700000B, LENGTH = 128K
INCLUDE file.mem
@> @<Some random portion of \ld\ code@> @=
}
_estack = 0x20005000;
_bstack = a > 0 ? NEXT(11) : 0x19;
@> @<Some random portion of \ld\ code@> @=
PROVIDE( var1 = . );
PROVIDE_HIDDEN( var2 = . );
@> @<Some random portion of \ld\ code@> @=
HIDDEN( var3 = . );
ENTRY(_entry);
SECTIONS
{
@> @<Some random portion of \ld\ code@> @=
. = ORIGIN(FLASH);
.isr_vector ALIGN(8) (NOLOAD): AT(.) ALIGN(.) ALIGN_WITH_INPUT SUBALIGN(8) SPECIAL
{
. = ALIGN(4);
KEEP(*(.isr_vector))
. = ALIGN(4);
} > FLASH AT > RAM : FLASH : RAM : OTHER = . + 8
@> @<Some random portion of \ld\ code@> @=
.text :
{
/* skip this comment */;
. = ALIGN(4);
*(.text)
*(.text.*)
*(.rodata)
*(.rodata*)
*(.glue_7)
*(.glue_7t)
. = ALIGN(4);
_etext = . + 8;
_sidata = _etext;
PROVIDE( var1 = . );
PROVIDE_HIDDEN( var2 = . );
HIDDEN( var3 = . );
} >FLASH AT > RAM
@> @<Some random portion of \ld\ code@> @=
.data : AT ( _sidata )
{
. = ALIGN(4);
_sdata = . ;
*(.data)
*(.data.*)
. = ALIGN(4);
_edata = . ;
} >RAM
.bss :
{
. = ALIGN(4);
_sbss = .;
*(.bss)
*(COMMON)
. = ALIGN(4);
_ebss = . ;
} >RAM
@> @<Some random portion of \ld\ code@> @=
. = ALIGN(0x0001ABCD);
_ffbegin = .;
OVERLAY : NOCROSSREFS AT ( _ffabs ) {
.free_func0
{
*(.free_func0)
. = ALIGN(4);
}
.free_func1
{
*(.free_func1)
}
} >RAM
}