URL
https://opencores.org/ocsvn/open8_urisc/open8_urisc/trunk
Subversion Repositories open8_urisc
[/] [open8_urisc/] [trunk/] [gnu/] [binutils/] [ld/] [scripttempl/] [elf32cr16c.sc] - Rev 323
Go to most recent revision | Compare with Previous | Blame | View Log
# Linker Script for National Semiconductor's CR16C-ELF32.test -z "$ENTRY" && ENTRY=_startcat <<EOF/* Example Linker Script for linking NS CR16C or CR16CPluself32 files, which were compiled with either the near datamodel or the default data model. */${RELOCATING+ENTRY(${ENTRY})}MEMORY{near_rom : ORIGIN = 0x4, LENGTH = 512K - 4near_ram : ORIGIN = 512K, LENGTH = 512K - 64Krom : ORIGIN = 1M, LENGTH = 3Mram : ORIGIN = 4M, LENGTH = 10M}SECTIONS{/* The heap is located in near memory, to suit both the near anddefault data models. The heap and stack are aligned to the buswidth, as a speed optimization for accessing data locatedthere. The alignment to 4 bytes is compatible for both the CR16Cbus width (2 bytes) and CR16CPlus bus width (4 bytes). */.text : { __TEXT_START = .; *(.text) __TEXT_END = .; } > rom.rdata : { __RDATA_START = .; *(.rdata_4) *(.rdata_2) *(.rdata_1) __RDATA_END = .; } > near_rom.ctor ALIGN(4) : { __CTOR_LIST = .; *(.ctors) __CTOR_END = .; } > near_rom.dtor ALIGN(4) : { __DTOR_LIST = .; *(.dtors) __DTOR_END = .; } > near_rom.data : { __DATA_START = .; *(.data_4) *(.data_2) *(.data_1) *(.data) __DATA_END = .; } > ram AT > rom.bss (NOLOAD) : { __BSS_START = .; *(.bss_4) *(.bss_2) *(.bss_1) *(.bss) *(COMMON) __BSS_END = .; } > ram.nrdata : { __NRDATA_START = .; *(.nrdat_4) *(.nrdat_2) *(.nrdat_1) __NRDATA_END = .; } > near_rom.ndata : { __NDATA_START = .; *(.ndata_4) *(.ndata_2) *(.ndata_1) __NDATA_END = .; } > near_ram AT > rom.nbss (NOLOAD) : { __NBSS_START = .; *(.nbss_4) *(.nbss_2) *(.nbss_1) *(.ncommon) __NBSS_END = .; } > near_ram.heap (NOLOAD) : { . = ALIGN(4); __HEAP_START = .; . += 0x2000; __HEAP_MAX = .; } > near_ram.stack (NOLOAD) : { . = ALIGN(4); . += 0x6000; __STACK_START = .; } > ram.istack (NOLOAD) : { . = ALIGN(2); . += 0x100; __ISTACK_START = .; } > ram}__DATA_IMAGE_START = LOADADDR(.data);__NDATA_IMAGE_START = LOADADDR(.ndata);EOF
Go to most recent revision | Compare with Previous | Blame | View Log
