2007-04-27 Kazu Hirata <kazu@codesourcery.com>

* libgloss/m68k/fido.sc: Catch .text.*, .rodata.*, .data.*,
        .bss.*, .ctor.*, and .dtor.*.  Wrap ctor/dtor-related sections
        with KEEP.
This commit is contained in:
Jeff Johnston 2007-04-27 16:00:45 +00:00
parent 5682d0f1a7
commit 7369eb7af3
2 changed files with 25 additions and 16 deletions

View File

@ -1,3 +1,9 @@
2007-04-27 Kazu Hirata <kazu@codesourcery.com>
* libgloss/m68k/fido.sc: Catch .text.*, .rodata.*, .data.*,
.bss.*, .ctor.*, and .dtor.*. Wrap ctor/dtor-related sections
with KEEP.
2007-04-04 Patrick Mansfield <patmans@us.ibm.com> 2007-04-04 Patrick Mansfield <patmans@us.ibm.com>
* spu/syscalls.c: Rename _send_to_ppe __send_to_ppe, and set errno * spu/syscalls.c: Rename _send_to_ppe __send_to_ppe, and set errno

View File

@ -142,21 +142,22 @@ SECTIONS {
/* Text section. */ /* Text section. */
.text : .text :
{ {
*(.text .gnu.linkonce.t.*) *(.text .text.*)
*(.gnu.linkonce.t.*)
. = ALIGN(0x4); . = ALIGN(0x4);
__CTOR_LIST__ = .; /* These are for running static constructors and destructors under ELF. */
___CTOR_LIST__ = .; KEEP (*crtbegin.o(.ctors))
LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
*(.ctors) KEEP (*(SORT(.ctors.*)))
LONG(0) KEEP (*crtend.o(.ctors))
__CTOR_END__ = .; KEEP (*crtbegin.o(.dtors))
__DTOR_LIST__ = .; KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors))
___DTOR_LIST__ = .; KEEP (*(SORT(.dtors.*)))
LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2) KEEP (*crtend.o(.dtors))
*(.dtors)
LONG(0) *(.rodata .rodata.*)
__DTOR_END__ = .; *(.gnu.linkonce.r.*)
*(.rodata* .gnu.linkonce.r.*)
*(.gcc_except_table) *(.gcc_except_table)
*(.eh_frame) *(.eh_frame)
@ -188,7 +189,8 @@ SECTIONS {
_data = .; _data = .;
KEEP (*(.jcr)); KEEP (*(.jcr));
*(.shdata); *(.shdata);
*(.data .gnu.linkonce.d.*); *(.data .data.*)
*(.gnu.linkonce.d.*)
_edata_cksum = .; _edata_cksum = .;
*(checksum); *(checksum);
_edata = .; _edata = .;
@ -200,7 +202,8 @@ SECTIONS {
. = ALIGN(0x4); . = ALIGN(0x4);
__bss_start = . ; __bss_start = . ;
*(.shbss) *(.shbss)
*(.bss .gnu.linkonce.b.*) *(.bss .bss.*)
*(.gnu.linkonce.b.*)
*(COMMON) *(COMMON)
_end = ALIGN (0x8); _end = ALIGN (0x8);
__end = _end; __end = _end;