PR 6943
authorAlan Modra <amodra@gmail.com>
Sun, 5 Oct 2008 04:12:04 +0000 (04:12 +0000)
committerAlan Modra <amodra@gmail.com>
Sun, 5 Oct 2008 04:12:04 +0000 (04:12 +0000)
* scripttempl/avr.sc (.bss): Set lma when relocating.
(.bss, .noinit): No need to set vma when relocating.
(.text, .bss, ,noinit): Set vma to zero when not relocating.

ld/ChangeLog
ld/scripttempl/avr.sc

index fc8345f..63563dd 100644 (file)
@@ -1,3 +1,10 @@
+2008-10-05  Alan Modra  <amodra@bigpond.net.au>
+
+       PR 6943
+       * scripttempl/avr.sc (.bss): Set lma when relocating.
+       (.bss, .noinit): No need to set vma when relocating.
+       (.text, .bss, ,noinit): Set vma to zero when not relocating.
+
 2008-10-04  Alan Modra  <amodra@bigpond.net.au>
 
        PR 6931
index 7368caf..23b3046 100644 (file)
@@ -72,7 +72,7 @@ SECTIONS
   .rela.plt    ${RELOCATING-0} : { *(.rela.plt)                }
 
   /* Internal text space or external memory.  */
-  .text :
+  .text ${RELOCATING-0} :
   {
     *(.vectors)
     KEEP(*(.vectors))
@@ -168,7 +168,7 @@ SECTIONS
     ${RELOCATING+ PROVIDE (__data_end = .) ; }
   } ${RELOCATING+ > data}
 
-  .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} :
+  .bss ${RELOCATING-0} :${RELOCATING+ AT (ADDR (.bss))}
   {
     ${RELOCATING+ PROVIDE (__bss_start = .) ; }
     *(.bss)
@@ -181,7 +181,7 @@ SECTIONS
   ${RELOCATING+ __data_load_end = __data_load_start + SIZEOF(.data); }
 
   /* Global data not cleared after reset.  */
-  .noinit ${RELOCATING+ SIZEOF(.bss) + ADDR(.bss)} :
+  .noinit ${RELOCATING-0}:
   {
     ${RELOCATING+ PROVIDE (__noinit_start = .) ; }
     *(.noinit*)