diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2003-01-03 16:45:10 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2003-01-03 16:45:10 +0000 |
commit | 8f10c925f6a4a02a870d16057ec9e57f5c6ee2c3 (patch) | |
tree | 75d0e71c5d80ebf8523fe3c2859d1c03b53eb10b /c/src/lib/libbsp/mips/jmr3904/startup | |
parent | 2003-01-03 Eugeny S. Mints <Eugeny.Mints@oktet.ru> (diff) | |
download | rtems-8f10c925f6a4a02a870d16057ec9e57f5c6ee2c3.tar.bz2 |
2002-12-08 Greg Menke <gregory.menke@gsfc.nasa.gov>
* bsp_specs: Added crtbegin/crtend and INIT_FINI for C++ support.
* linkcmds: Added .init, .fini & related sections.
Diffstat (limited to 'c/src/lib/libbsp/mips/jmr3904/startup')
-rw-r--r-- | c/src/lib/libbsp/mips/jmr3904/startup/linkcmds | 49 |
1 files changed, 35 insertions, 14 deletions
diff --git a/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds b/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds index 0c52ba4b3e..02b9d192a2 100644 --- a/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds +++ b/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds @@ -22,16 +22,27 @@ SECTIONS *(.text) *(.text.*) *(.gnu.linkonce.t*) - *(.init) *(.mips16.fn.*) *(.mips16.call.*) PROVIDE (__runtime_reloc_start = .); *(.rel.sdata) PROVIDE (__runtime_reloc_stop = .); - *(.fini) - etext = .; - _etext = .; - } + + *(.gcc_except_table) + *(.eh_frame_hdr) + *(.eh_frame) + } + + .init : + { + KEEP(*(.init)) + } + + .fini : + { + KEEP(*(.fini)) + } + .ctors : { /* gcc uses crtbegin.o to find the start of @@ -62,9 +73,11 @@ SECTIONS KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) + + etext = .; + _etext = .; } - . = .; .rdata : { *(.rdata) *(.rodata) @@ -72,30 +85,38 @@ SECTIONS *(.gnu.linkonce.r*) } _fdata = ALIGN(16); + .data : { *(.data) *(.data.*) *(.gnu.linkonce.d*) - SORT(CONSTRUCTORS) + SORT(CONSTRUCTORS) } . = ALIGN(8); - _gp = . + 0x8000; + + .jcr : { + KEEP (*(.jcr)) + } + + _gp = ALIGN(16) + 0x7440; __global = _gp; + + .sdata : { + *(.sdata) + *(.sdata.*) + *(.gnu.linkonce.s*) + } .lit8 : { *(.lit8) } .lit4 : { *(.lit4) } - .sdata : { - *(.sdata) - *(.sdata.*) - *(.gnu.linkonce.s*) - } - . = ALIGN(4); + edata = .; _edata = .; _fbss = .; + .sbss : { *(.sbss) *(.scommon) |