ENTRY(entry) SECTIONS { .text : { KEEP(*(.vectors)) *(.text*) . = ALIGN(4); *(.rodata*) . = ALIGN(4); } >rom .preinit_array : { . = ALIGN(4); __preinit_array_start = .; KEEP (*(.preinit_array)) __preinit_array_end = .; } >rom .init_array : { . = ALIGN(4); __init_array_start = .; KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) __init_array_end = .; } >rom .fini_array : { . = ALIGN(4); __fini_array_start = .; KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) __fini_array_end = .; } >rom .ARM.extab : { *(.ARM.extab*) } >rom .ARM.exidx : { __exidx_start = .; *(.ARM.exidx*) __exidx_end = .; } >rom . = ALIGN(4); _etext = .; .nvram (NOLOAD) : { *(.nvram*) } >nvrammem .data : { _data = .; *(.data*) . = ALIGN(4); _edata = .; } >ram AT >rom _data_loadaddr = LOADADDR(.data); .bss : { *(.bss*) *(COMMON) . = ALIGN(4); _ebss = .; } >ram /DISCARD/ : { *(.eh_frame) } .heap (NOLOAD) : { *(.heap*) _heap = .; } >heapmem . = ALIGN(4); end = .; }