PR ld/15839

* scripttempl/avr.sc: Do not include gc'able sections into general
	sections during relocatable links.
This commit is contained in:
Nick Clifton 2013-08-23 07:37:31 +00:00
parent 4f2374c7fa
commit 865acd3586
2 changed files with 15 additions and 9 deletions

View File

@ -1,3 +1,9 @@
2013-08-23 Nick Clifton <nickc@redhat.com>
PR ld/15839
* scripttempl/avr.sc: Do not include gc'able sections into general
sections during relocatable links.
2013-08-22 Christian Franke <franke@computer.org> 2013-08-22 Christian Franke <franke@computer.org>
* emultempl/pe.em: Add --disable-large-address-aware option. * emultempl/pe.em: Add --disable-large-address-aware option.

View File

@ -81,7 +81,7 @@ SECTIONS
KEEP(*(.vectors)) KEEP(*(.vectors))
/* For data that needs to reside in the lower 64k of progmem. */ /* For data that needs to reside in the lower 64k of progmem. */
*(.progmem.gcc*) ${RELOCATING+. *(.progmem.gcc*)}
/* PR 13812: Placing the trampolines here gives a better chance /* PR 13812: Placing the trampolines here gives a better chance
that they will be in range of the code that uses them. */ that they will be in range of the code that uses them. */
@ -89,21 +89,21 @@ SECTIONS
${CONSTRUCTING+ __trampolines_start = . ; } ${CONSTRUCTING+ __trampolines_start = . ; }
/* The jump trampolines for the 16-bit limited relocs will reside here. */ /* The jump trampolines for the 16-bit limited relocs will reside here. */
*(.trampolines) *(.trampolines)
*(.trampolines*) ${RELOCATING+. *(.trampolines*)}
${CONSTRUCTING+ __trampolines_end = . ; } ${CONSTRUCTING+ __trampolines_end = . ; }
*(.progmem*) ${RELOCATING+. *(.progmem*)}
${RELOCATING+. = ALIGN(2);} ${RELOCATING+. = ALIGN(2);}
/* For future tablejump instruction arrays for 3 byte pc devices. /* For future tablejump instruction arrays for 3 byte pc devices.
We don't relax jump/call instructions within these sections. */ We don't relax jump/call instructions within these sections. */
*(.jumptables) *(.jumptables)
*(.jumptables*) ${RELOCATING+. *(.jumptables*)}
/* For code that needs to reside in the lower 128k progmem. */ /* For code that needs to reside in the lower 128k progmem. */
*(.lowtext) *(.lowtext)
*(.lowtext*) ${RELOCATING+. *(.lowtext*)}
${CONSTRUCTING+ __ctors_start = . ; } ${CONSTRUCTING+ __ctors_start = . ; }
${CONSTRUCTING+ *(.ctors) } ${CONSTRUCTING+ *(.ctors) }
@ -138,7 +138,7 @@ SECTIONS
KEEP (*(.init9)) KEEP (*(.init9))
*(.text) *(.text)
${RELOCATING+. = ALIGN(2);} ${RELOCATING+. = ALIGN(2);}
*(.text.*) ${RELOCATING+ *(.text.*)}
${RELOCATING+. = ALIGN(2);} ${RELOCATING+. = ALIGN(2);}
*(.fini9) /* _exit() starts here. */ *(.fini9) /* _exit() starts here. */
KEEP (*(.fini9)) KEEP (*(.fini9))
@ -170,9 +170,9 @@ SECTIONS
addresses for subsequent sections because -Tdata= from the command addresses for subsequent sections because -Tdata= from the command
line will have no effect, see PR13697. Thus, keep .data */ line will have no effect, see PR13697. Thus, keep .data */
KEEP (*(.data)) KEEP (*(.data))
*(.data*) ${RELOCATING+*(.data*)}
*(.rodata) /* We need to include .rodata here if gcc is used */ *(.rodata) /* We need to include .rodata here if gcc is used */
*(.rodata*) /* with -fdata-sections. */ ${RELOCATING+ *(.rodata*)} /* with -fdata-sections. */
*(.gnu.linkonce.d*) *(.gnu.linkonce.d*)
${RELOCATING+. = ALIGN(2);} ${RELOCATING+. = ALIGN(2);}
${RELOCATING+ _edata = . ; } ${RELOCATING+ _edata = . ; }
@ -183,7 +183,7 @@ SECTIONS
{ {
${RELOCATING+ PROVIDE (__bss_start = .) ; } ${RELOCATING+ PROVIDE (__bss_start = .) ; }
*(.bss) *(.bss)
*(.bss*) ${RELOCATING+ *(.bss*)}
*(COMMON) *(COMMON)
${RELOCATING+ PROVIDE (__bss_end = .) ; } ${RELOCATING+ PROVIDE (__bss_end = .) ; }
} ${RELOCATING+ > data} } ${RELOCATING+ > data}