diff --git a/ld/ChangeLog b/ld/ChangeLog index b9d65e2d3f..8b15d2a63b 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2013-02-27 Nick Clifton + + * scripttempl/elf32msp430.sc: Add placement of .data.* sections. + Add alignment of .bss section. + * scripttempl/elf32msp430_3.sc: Likewise. + 2013-02-26 Nick Clifton PR ld/15188 diff --git a/ld/scripttempl/elf32msp430.sc b/ld/scripttempl/elf32msp430.sc index beabd89a2b..69c22ba657 100644 --- a/ld/scripttempl/elf32msp430.sc +++ b/ld/scripttempl/elf32msp430.sc @@ -144,7 +144,7 @@ SECTIONS ${RELOCATING+ PROVIDE (__data_start = .) ; } ${RELOCATING+. = ALIGN(2);} *(.data) - ${RELOCATING+. = ALIGN(2);} + *(.data.*) *(.gnu.linkonce.d*) ${RELOCATING+. = ALIGN(2);} ${RELOCATING+ _edata = . ; } @@ -177,6 +177,7 @@ SECTIONS .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : { + ${RELOCATING+. = ALIGN(2);} ${RELOCATING+ PROVIDE (__bss_start = .) ; } *(.bss) *(COMMON) diff --git a/ld/scripttempl/elf32msp430_3.sc b/ld/scripttempl/elf32msp430_3.sc index 0ddcf0f491..4e2152f5ec 100644 --- a/ld/scripttempl/elf32msp430_3.sc +++ b/ld/scripttempl/elf32msp430_3.sc @@ -118,7 +118,9 @@ SECTIONS .data ${RELOCATING-0} : ${RELOCATING+AT (ADDR (.text) + SIZEOF (.text))} { ${RELOCATING+ PROVIDE (__data_start = .) ; } + ${RELOCATING+. = ALIGN(2);} *(.data) + *(.data.*) *(.gnu.linkonce.d*) ${RELOCATING+. = ALIGN(2);} ${RELOCATING+ _edata = . ; } @@ -126,6 +128,7 @@ SECTIONS .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : { + ${RELOCATING+. = ALIGN(2);} ${RELOCATING+ PROVIDE (__bss_start = .) ; } *(.bss) *(COMMON)