URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-old/] [newlib-1.17.0/] [libgloss/] [mn10200/] [eval.ld] - Rev 816
Compare with Previous | Blame | View Log
/* Linker script for the MN10200 Evaluation Board.It differs from the default linker script only in theaddresses assigned to text and stack sections.*/OUTPUT_FORMAT("elf32-mn10200", "elf32-mn10200","elf32-mn10200")OUTPUT_ARCH(mn10200)ENTRY(_start)GROUP(-lc -leval -lgcc)SEARCH_DIR(.);/* Do we need any of these for elf?__DYNAMIC = 0; */SECTIONS{/* Read-only sections, merged into text segment: *//* Start of RAM (leaving room for Cygmon data) */. = 0x408000;.interp : { *(.interp) }.hash : { *(.hash) }.dynsym : { *(.dynsym) }.dynstr : { *(.dynstr) }.gnu.version : { *(.gnu.version) }.gnu.version_d : { *(.gnu.version_d) }.gnu.version_r : { *(.gnu.version_r) }.rel.text :{ *(.rel.text) *(.rel.gnu.linkonce.t*) }.rela.text :{ *(.rela.text) *(.rela.gnu.linkonce.t*) }.rel.data :{ *(.rel.data) *(.rel.gnu.linkonce.d*) }.rela.data :{ *(.rela.data) *(.rela.gnu.linkonce.d*) }.rel.rodata :{ *(.rel.rodata) *(.rel.gnu.linkonce.r*) }.rela.rodata :{ *(.rela.rodata) *(.rela.gnu.linkonce.r*) }.rel.got : { *(.rel.got) }.rela.got : { *(.rela.got) }.rel.ctors : { *(.rel.ctors) }.rela.ctors : { *(.rela.ctors) }.rel.dtors : { *(.rel.dtors) }.rela.dtors : { *(.rela.dtors) }.rel.init : { *(.rel.init) }.rela.init : { *(.rela.init) }.rel.fini : { *(.rel.fini) }.rela.fini : { *(.rela.fini) }.rel.bss : { *(.rel.bss) }.rela.bss : { *(.rela.bss) }.rel.plt : { *(.rel.plt) }.rela.plt : { *(.rela.plt) }.init : { *(.init) } =0.plt : { *(.plt) }.text :{*(.text)*(.stub)/* .gnu.warning sections are handled specially by elf32.em. */*(.gnu.warning)*(.gnu.linkonce.t*)} =0_etext = .;PROVIDE (etext = .);.fini : { *(.fini) } =0.rodata : { *(.rodata) *(.gnu.linkonce.r*) }.rodata1 : { *(.rodata1) }/* Adjust the address for the data segment. We want to adjust up tothe same address within the page on the next page up. */. = ALIGN(1) + (. & (1 - 1));.data :{*(.data)*(.gnu.linkonce.d*)CONSTRUCTORS}.data1 : { *(.data1) }.ctors :{___ctors = .;/* gcc uses crtbegin.o to find the start of the constructors, sowe make sure it is first. Because this is a wildcard, itdoesn't matter if the user does not actually link againstcrtbegin.o; the linker won't look for a file to match awildcard. The wildcard also means that it doesn't matter whichdirectory crtbegin.o is in. */*crtbegin.o(.ctors)*(SORT(.ctors.*))*(.ctors)___ctors_end = .;}.dtors :{___dtors = .;*crtbegin.o(.dtors)*(SORT(.dtors.*))*(.dtors)___dtors_end = .;}.got : { *(.got.plt) *(.got) }.dynamic : { *(.dynamic) }/* We want the small data sections together, so single-instruction offsetscan access them all, and initialized data all before uninitialized, sowe can shorten the on-disk segment size. */.sdata : { *(.sdata) }_edata = .;PROVIDE (edata = .);__bss_start = .;.sbss : { *(.sbss) *(.scommon) }.bss :{*(.dynbss)*(.bss)*(COMMON)}. = ALIGN(32 / 8);_end = . ;PROVIDE (end = .);/* Stabs debugging sections. */.stab 0 : { *(.stab) }.stabstr 0 : { *(.stabstr) }.stab.excl 0 : { *(.stab.excl) }.stab.exclstr 0 : { *(.stab.exclstr) }.stab.index 0 : { *(.stab.index) }.stab.indexstr 0 : { *(.stab.indexstr) }.comment 0 : { *(.comment) }/* DWARF debug sections.Symbols in the DWARF debugging sections are relative to the beginningof the section so we begin them at 0. *//* DWARF 1 */.debug 0 : { *(.debug) }.line 0 : { *(.line) }/* GNU DWARF 1 extensions */.debug_srcinfo 0 : { *(.debug_srcinfo) }.debug_sfnames 0 : { *(.debug_sfnames) }/* DWARF 1.1 and DWARF 2 */.debug_aranges 0 : { *(.debug_aranges) }.debug_pubnames 0 : { *(.debug_pubnames) }/* DWARF 2 */.debug_info 0 : { *(.debug_info) }.debug_abbrev 0 : { *(.debug_abbrev) }.debug_line 0 : { *(.debug_line) }.debug_frame 0 : { *(.debug_frame) }.debug_str 0 : { *(.debug_str) }.debug_loc 0 : { *(.debug_loc) }.debug_macinfo 0 : { *(.debug_macinfo) }.debug_ranges 0 : { *(.debug_ranges) }/* SGI/MIPS DWARF 2 extensions */.debug_weaknames 0 : { *(.debug_weaknames) }.debug_funcnames 0 : { *(.debug_funcnames) }.debug_typenames 0 : { *(.debug_typenames) }.debug_varnames 0 : { *(.debug_varnames) }/* Top of RAM is 0x43ffff, but Cygmon uses the top 4K for its stack. */.stack 0x43f000 : { _stack = .; *(.stack) *(._stack) }/* These must appear regardless of . */}
