diff options
author | Joel Sherrill <joel.sherrill@oarcorp.com> | 2014-04-02 11:39:20 -0500 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@oarcorp.com> | 2014-04-04 09:26:08 -0500 |
commit | 95cb09ed746e7daeca2158c7ecdf0249cfcbc5c8 (patch) | |
tree | f57d1ce86431fa136cf2e712edf8cdbd282409b3 /c/src/lib/libbsp | |
parent | schedulerpriorityaffinitysmp.h: Fix compilation error introduced by recent ch... (diff) | |
download | rtems-95cb09ed746e7daeca2158c7ecdf0249cfcbc5c8.tar.bz2 |
sparc/shared/.../linkcmds.base: Correct C++ support
Add KEEP() for .eh_frame*, .ctor*, and .dtor*.
Diffstat (limited to 'c/src/lib/libbsp')
-rw-r--r-- | c/src/lib/libbsp/sparc/shared/startup/linkcmds.base | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base b/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base index 2ed927d6a2..add1f00ff3 100644 --- a/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base +++ b/c/src/lib/libbsp/sparc/shared/startup/linkcmds.base @@ -63,7 +63,7 @@ SECTIONS *(.text*) . = ALIGN (16); - *(.eh_frame) + KEEP(*(.eh_frame*)) . = ALIGN (16); *(.gnu.linkonce.t*) @@ -87,13 +87,11 @@ SECTIONS The .ctor section from the crtend file contains the end of ctors marker and it must be last */ KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) + KEEP (*(SORT(.ctors*))) KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o ) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) + KEEP (*(SORT(.dtors*))) _rodata_start = . ; *(.rodata*) @@ -102,8 +100,8 @@ SECTIONS etext = ALIGN(0x10); _etext = .; - KEEP(*(.init)) - KEEP(*(.fini)) + KEEP(*(.init*)) + KEEP(*(.fini*)) *(.lit) *(.shdata) . = ALIGN (16); @@ -159,6 +157,7 @@ SECTIONS _sdata = . ; *(.data*) *(.gnu.linkonce.d*) + . = ALIGN(0x10); *(.gcc_except_table*) . = ALIGN(0x10); edata = .; |