diff options
author | Denis Chertykov <chertykov@gmail.com> | 2014-07-08 20:15:18 +0400 |
---|---|---|
committer | Denis Chertykov <chertykov@gmail.com> | 2014-07-08 20:15:18 +0400 |
commit | b484180108158f427f3637987de02199416ed53a (patch) | |
tree | c123a1d627f71707de7f5046b3d22074ad15795b /ld/scripttempl | |
parent | 5bc8cb6f842e588e7ae9f3b9f52f9f41fb97bf34 (diff) | |
download | gdb-b484180108158f427f3637987de02199416ed53a.zip gdb-b484180108158f427f3637987de02199416ed53a.tar.gz gdb-b484180108158f427f3637987de02199416ed53a.tar.bz2 |
* scripttempl/avr.sc: Remove KEEP for .data and
force .bss VMA to end of .data VMA.
Diffstat (limited to 'ld/scripttempl')
-rw-r--r-- | ld/scripttempl/avr.sc | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/ld/scripttempl/avr.sc b/ld/scripttempl/avr.sc index 10714e1..d356b71 100644 --- a/ld/scripttempl/avr.sc +++ b/ld/scripttempl/avr.sc @@ -166,10 +166,7 @@ SECTIONS .data ${RELOCATING-0} : { ${RELOCATING+ PROVIDE (__data_start = .) ; } - /* --gc-sections will delete empty .data. This leads to wrong start - addresses for subsequent sections because -Tdata= from the command - line will have no effect, see PR13697. Thus, keep .data */ - KEEP (*(.data)) + *(.data) ${RELOCATING+ *(.data*)} *(.rodata) /* We need to include .rodata here if gcc is used */ ${RELOCATING+ *(.rodata*)} /* with -fdata-sections. */ @@ -179,7 +176,7 @@ SECTIONS ${RELOCATING+ PROVIDE (__data_end = .) ; } } ${RELOCATING+ > data ${RELOCATING+AT> text}} - .bss ${RELOCATING-0} :${RELOCATING+ AT (ADDR (.bss))} + .bss ${RELOCATING+ ADDR(.data) + SIZEOF (.data)} ${RELOCATING-0} :${RELOCATING+ AT (ADDR (.bss))} { ${RELOCATING+ PROVIDE (__bss_start = .) ; } *(.bss) |