diff options
author | Michael Meissner <gnu@the-meissners.org> | 2001-03-08 02:20:25 +0000 |
---|---|---|
committer | Michael Meissner <gnu@the-meissners.org> | 2001-03-08 02:20:25 +0000 |
commit | 788fca5a32cb78de1e95f8a4d895c1db019e6aa6 (patch) | |
tree | c12bb70071c2e32305a9842e8b7abd7b3389a791 | |
parent | df425bc0dd07e99e14176f2bc34a83b93d37e717 (diff) | |
download | fsf-binutils-gdb-788fca5a32cb78de1e95f8a4d895c1db019e6aa6.zip fsf-binutils-gdb-788fca5a32cb78de1e95f8a4d895c1db019e6aa6.tar.gz fsf-binutils-gdb-788fca5a32cb78de1e95f8a4d895c1db019e6aa6.tar.bz2 |
Add support for -fdata-sections
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/scripttempl/elfd10v.sc | 21 |
2 files changed, 24 insertions, 3 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 73d3a21..f364024 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2001-03-07 Michael Meissner <meissner@redhat.com> + + * scripttempl/elfd10v.sc (.rodata,.rodata1,.data1,.sdata): Deal + with sections created by -fdata-sections. + (.dynbss,.bss): Ditto. + 2001-03-05 Alan Modra <alan@linuxcare.com.au> * emultempl/m68kelf.em (m68k_elf_after_allocation): Call diff --git a/ld/scripttempl/elfd10v.sc b/ld/scripttempl/elfd10v.sc index 4dca63c..3d69755 100644 --- a/ld/scripttempl/elfd10v.sc +++ b/ld/scripttempl/elfd10v.sc @@ -77,7 +77,9 @@ SECTIONS { ${RELOCATING+${TEXT_START_SYMBOLS}} KEEP (*(.init)) + KEEP (*(.init.*)) KEEP (*(.fini)) + KEEP (*(.fini.*)) *(.text) *(.text.*) /* .gnu.warning sections are handled specially by elf32.em. */ @@ -88,9 +90,15 @@ SECTIONS } ${RELOCATING+ >INSN} =${NOP-0} .rodata ${RELOCATING-0} : { - *(.rodata) *(.gnu.linkonce.r*) + *(.rodata) + *(.gnu.linkonce.r*) + *(.rodata.*) } ${RELOCATING+ >DATA} - .rodata1 ${RELOCATING-0} : { *(.rodata1) } ${RELOCATING+ >DATA} + + .rodata1 ${RELOCATING-0} : { + *(.rodata1) + *(.rodata1.*) + } ${RELOCATING+ >DATA} .data ${RELOCATING-0} : { @@ -107,7 +115,11 @@ SECTIONS /* We want the small data sections together, so single-instruction offsets can access them all, and initialized data all before uninitialized, so we can shorten the on-disk segment size. */ - .sdata ${RELOCATING-0} : { *(.sdata) } ${RELOCATING+ >DATA} + .sdata ${RELOCATING-0} : { + *(.sdata) + *(.sdata.*) + } ${RELOCATING+ >DATA} + ${RELOCATING+_edata = .;} ${RELOCATING+PROVIDE (edata = .);} ${RELOCATING+__bss_start = .;} @@ -115,9 +127,12 @@ SECTIONS .bss ${RELOCATING-0} : { *(.dynbss) + *(.dynbss.*) *(.bss) + *(.bss.*) *(COMMON) } ${RELOCATING+ >DATA} + ${RELOCATING+_end = . ;} ${RELOCATING+PROVIDE (end = .);} |