diff options
author | Nick Clifton <nickc@redhat.com> | 2013-03-27 13:21:38 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2013-03-27 13:21:38 +0000 |
commit | 861319c9dd0563b1b108e59b80c61a0813f8bcb0 (patch) | |
tree | 717901abb31ba2a248249c28b88e9bde99978099 | |
parent | 840a9a1f86976823f24d53d0a9bf8ab41591868c (diff) | |
download | fsf-binutils-gdb-861319c9dd0563b1b108e59b80c61a0813f8bcb0.zip fsf-binutils-gdb-861319c9dd0563b1b108e59b80c61a0813f8bcb0.tar.gz fsf-binutils-gdb-861319c9dd0563b1b108e59b80c61a0813f8bcb0.tar.bz2 |
PR ld/13812
* scripttempl/avr.sc: Place trampolines before .progmem section.
-rw-r--r-- | ld/ChangeLog | 5 | ||||
-rw-r--r-- | ld/scripttempl/avr.sc | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index d5457a8..bbb7249 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2013-03-27 Georg-Johann Lay <gjl@gcc.gnu.org> + + PR ld/13812 + * scripttempl/avr.sc: Place trampolines before .progmem section. + 2013-03-25 Kai Tietz <ktietz@redhat.com> * ld.texinfo (--disable-runtime-pseudo-reloc): Adjust default. diff --git a/ld/scripttempl/avr.sc b/ld/scripttempl/avr.sc index 10ac27f..bdbec6e 100644 --- a/ld/scripttempl/avr.sc +++ b/ld/scripttempl/avr.sc @@ -82,15 +82,18 @@ SECTIONS /* For data that needs to reside in the lower 64k of progmem. */ *(.progmem.gcc*) - *(.progmem*) - ${RELOCATING+. = ALIGN(2);} + /* PR 13812: Placing the trampolines here gives a better chance + that they will be in range of the code that uses them. */ + ${RELOCATING+. = ALIGN(2);} ${CONSTRUCTING+ __trampolines_start = . ; } /* The jump trampolines for the 16-bit limited relocs will reside here. */ *(.trampolines) *(.trampolines*) ${CONSTRUCTING+ __trampolines_end = . ; } + *(.progmem*) + /* For future tablejump instruction arrays for 3 byte pc devices. We don't relax jump/call instructions within these sections. */ *(.jumptables) |