summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/mips/jmr3904/startup
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2003-01-03 16:45:10 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2003-01-03 16:45:10 +0000
commit8f10c925f6a4a02a870d16057ec9e57f5c6ee2c3 (patch)
tree75d0e71c5d80ebf8523fe3c2859d1c03b53eb10b /c/src/lib/libbsp/mips/jmr3904/startup
parent2003-01-03 Eugeny S. Mints <Eugeny.Mints@oktet.ru> (diff)
downloadrtems-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/linkcmds49
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)