This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Move location of .jumptables section and add .hightext section to AVR linker script.


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4c0b797e0d2005780d8f0300f0ccc14b9d7c13b5

commit 4c0b797e0d2005780d8f0300f0ccc14b9d7c13b5
Author: Georg-Johann Lay <gjl@gcc.gnu.org>
Date:   Wed Jun 14 12:23:39 2017 +0100

    Move location of .jumptables section and add .hightext section to AVR linker script.
    
    	PR ld/21583
    	* scripttempl/avr.sc (.jumptables): Move down in text section.
    	(.hightext): New in text.

Diff:
---
 ld/ChangeLog          |  6 ++++++
 ld/scripttempl/avr.sc | 17 ++++++++++++-----
 2 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4924787..44064fd 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,9 @@
+2017-06-14  Georg-Johann Lay  <gjl@gcc.gnu.org>
+
+	PR ld/21583
+	* scripttempl/avr.sc (.jumptables): Move down in text section.
+	(.hightext): New in text.
+
 2017-06-14  Sebastian Huber  <sebastian.huber@embedded-brains.de>
 
 	* configure.tgt (epiphany-*-elf): Accept epiphany-*-*.
diff --git a/ld/scripttempl/avr.sc b/ld/scripttempl/avr.sc
index 1b74dc4..07553b4 100644
--- a/ld/scripttempl/avr.sc
+++ b/ld/scripttempl/avr.sc
@@ -132,11 +132,6 @@ SECTIONS
     
     ${RELOCATING+. = ALIGN(2);}
 
-    /* For future tablejump instruction arrays for 3 byte pc devices.
-       We don't relax jump/call instructions within these sections.  */
-    *(.jumptables) 
-    ${RELOCATING+ *(.jumptables*)}
-
     /* For code that needs to reside in the lower 128k progmem.  */
     *(.lowtext)
     ${RELOCATING+ *(.lowtext*)}
@@ -196,6 +191,18 @@ SECTIONS
     KEEP (*(.fini1))
     *(.fini0)  /* Infinite loop after program termination.  */
     KEEP (*(.fini0))
+
+    /* For code that needs not to reside in the lower progmem.  */
+    *(.hightext)
+    ${RELOCATING+ *(.hightext*)}
+
+    ${RELOCATING+. = ALIGN(2);}
+
+    /* For tablejump instruction arrays.  We don't relax
+       JMP / CALL instructions within these sections.  */
+    *(.jumptables)
+    ${RELOCATING+ *(.jumptables*)}
+
     ${RELOCATING+ _etext = . ; }
   } ${RELOCATING+ > text}
 EOF


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]