[rtems commit] sparc/shared/.../linkcmds.base: Correct C++ support
Joel Sherrill
joel at rtems.org
Fri Apr 4 14:19:10 UTC 2014
Module: rtems
Branch: master
Commit: 95cb09ed746e7daeca2158c7ecdf0249cfcbc5c8
Changeset: http://git.rtems.org/rtems/commit/?id=95cb09ed746e7daeca2158c7ecdf0249cfcbc5c8
Author: Joel Sherrill <joel.sherrill at oarcorp.com>
Date: Wed Apr 2 11:39:20 2014 -0500
sparc/shared/.../linkcmds.base: Correct C++ support
Add KEEP() for .eh_frame*, .ctor*, and .dtor*.
---
.../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 2ed927d..add1f00 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 = .;
More information about the vc
mailing list