This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[AVR] Add DATA_ORIGIN macro in linker script template
- From: Anatoly Sokolov <aesok at post dot ru>
- To: binutils at sourceware dot org
- Cc: eweddington at cso dot atmel dot com, aesok at post dot ru
- Date: Sat, 2 May 2009 15:49:15 +0400
- Subject: [AVR] Add DATA_ORIGIN macro in linker script template
Hello.
This patch add the DATA_ORIGIN macro in linker script template for AVR target
to allow have different default data section stat address for different
architectures.
Anatoly.
2009-04-02 Anatoly Sokolov <aesok@post.ru>
* scripttempl/avr.sc (MEMORY): Use DATA_ORIGIN.
* emulparams/avr1.sh (DATA_ORIGIN): Add.
* emulparams/avr2.sh (DATA_ORIGIN): Add.
* emulparams/avr25.sh (DATA_ORIGIN): Add.
* emulparams/avr3.sh (DATA_ORIGIN): Add.
* emulparams/avr31.sh (DATA_ORIGIN): Add.
* emulparams/avr35.sh (DATA_ORIGIN): Add.
* emulparams/avr4.sh (DATA_ORIGIN): Add.
* emulparams/avr5.sh (DATA_ORIGIN): Add.
* emulparams/avr51.sh (DATA_ORIGIN): Add.
(DATA_LENGTH): Update.
* emulparams/avr6.sh (DATA_ORIGIN): Add.
(DATA_LENGTH): Update.
Index: src/ld/emulparams/avr1.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr1.sh,v
retrieving revision 1.2
diff -u -r1.2 avr1.sh
--- src/ld/emulparams/avr1.sh 24 May 2006 07:36:11 -0000 1.2
+++ src/ld/emulparams/avr1.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=8K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr2.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr2.sh,v
retrieving revision 1.2
diff -u -r1.2 avr2.sh
--- src/ld/emulparams/avr2.sh 24 May 2006 07:36:11 -0000 1.2
+++ src/ld/emulparams/avr2.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=8K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr25.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr25.sh,v
retrieving revision 1.1
diff -u -r1.1 avr25.sh
--- src/ld/emulparams/avr25.sh 9 Aug 2008 05:35:13 -0000 1.1
+++ src/ld/emulparams/avr25.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=8K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr3.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr3.sh,v
retrieving revision 1.2
diff -u -r1.2 avr3.sh
--- src/ld/emulparams/avr3.sh 24 May 2006 07:36:11 -0000 1.2
+++ src/ld/emulparams/avr3.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=128K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr31.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr31.sh,v
retrieving revision 1.1
diff -u -r1.1 avr31.sh
--- src/ld/emulparams/avr31.sh 9 Aug 2008 05:35:13 -0000 1.1
+++ src/ld/emulparams/avr31.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=128K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr35.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr35.sh,v
retrieving revision 1.1
diff -u -r1.1 avr35.sh
--- src/ld/emulparams/avr35.sh 9 Aug 2008 05:35:13 -0000 1.1
+++ src/ld/emulparams/avr35.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=64K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr4.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr4.sh,v
retrieving revision 1.2
diff -u -r1.2 avr4.sh
--- src/ld/emulparams/avr4.sh 24 May 2006 07:36:11 -0000 1.2
+++ src/ld/emulparams/avr4.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=8K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr5.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr5.sh,v
retrieving revision 1.2
diff -u -r1.2 avr5.sh
--- src/ld/emulparams/avr5.sh 24 May 2006 07:36:11 -0000 1.2
+++ src/ld/emulparams/avr5.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=128K
+DATA_ORIGIN=0x800060
DATA_LENGTH=0xffa0
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr51.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr51.sh,v
retrieving revision 1.1
diff -u -r1.1 avr51.sh
--- src/ld/emulparams/avr51.sh 9 Aug 2008 05:35:13 -0000 1.1
+++ src/ld/emulparams/avr51.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=128K
-DATA_LENGTH=0xffa0
+DATA_ORIGIN=0x800100
+DATA_LENGTH=0xff00
EXTRA_EM_FILE=avrelf
Index: src/ld/emulparams/avr6.sh
===================================================================
RCS file: /cvs/src/src/ld/emulparams/avr6.sh,v
retrieving revision 1.1
diff -u -r1.1 avr6.sh
--- src/ld/emulparams/avr6.sh 24 May 2006 07:36:11 -0000 1.1
+++ src/ld/emulparams/avr6.sh 2 May 2009 11:06:39 -0000
@@ -7,5 +7,6 @@
TEMPLATE_NAME=elf32
TEXT_LENGTH=1024K
-DATA_LENGTH=0xffa0
+DATA_ORIGIN=0x800200
+DATA_LENGTH=0xfe00
EXTRA_EM_FILE=avrelf
Index: src/ld/scripttempl/avr.sc
===================================================================
RCS file: /cvs/src/src/ld/scripttempl/avr.sc,v
retrieving revision 1.6
diff -u -r1.6 avr.sc
--- src/ld/scripttempl/avr.sc 5 Oct 2008 04:12:04 -0000 1.6
+++ src/ld/scripttempl/avr.sc 2 May 2009 11:06:39 -0000
@@ -5,7 +5,7 @@
MEMORY
{
text (rx) : ORIGIN = 0, LENGTH = $TEXT_LENGTH
- data (rw!x) : ORIGIN = 0x800060, LENGTH = $DATA_LENGTH
+ data (rw!x) : ORIGIN = $DATA_ORIGIN, LENGTH = $DATA_LENGTH
eeprom (rw!x) : ORIGIN = 0x810000, LENGTH = 64K
}