diff options
| author | Boris Gjenero <dreamlayers@rockbox.org> | 2011-11-22 17:34:01 +0000 |
|---|---|---|
| committer | Boris Gjenero <dreamlayers@rockbox.org> | 2011-11-22 17:34:01 +0000 |
| commit | e62dfa5225a1773350bcf2236dc6516bdfc694d2 (patch) | |
| tree | f5e2e80b14e8e021852b822b77f8ec075da3fafe | |
| parent | 706575f04bd4d6372fd4779d9052f506253f18ca (diff) | |
| download | rockbox-e62dfa5225a1773350bcf2236dc6516bdfc694d2.zip rockbox-e62dfa5225a1773350bcf2236dc6516bdfc694d2.tar.gz rockbox-e62dfa5225a1773350bcf2236dc6516bdfc694d2.tar.bz2 rockbox-e62dfa5225a1773350bcf2236dc6516bdfc694d2.tar.xz | |
FS#12397 : On targets which load .data directly into its final location and lack code for moving it, remove linker script trick which ignores section alignment and word-aligns the section instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31041 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/target/arm/imx31/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/ipod/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/iriver/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/olympus/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/pbell/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/philips/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/pnx0101/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/samsung/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/sandisk/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/tatung/app.lds | 10 | ||||
| -rw-r--r-- | firmware/target/arm/tcc780x/app.lds | 10 |
11 files changed, 11 insertions, 99 deletions
diff --git a/firmware/target/arm/imx31/app.lds b/firmware/target/arm/imx31/app.lds index 0325f89..60187fe4 100644 --- a/firmware/target/arm/imx31/app.lds +++ b/firmware/target/arm/imx31/app.lds @@ -60,21 +60,13 @@ SECTIONS *(.rodata.str1.4) *(.irodata) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) *(.idata) . = ALIGN(0x4); - _dataend = .; } > DRAM #if 0 /* Unneeded at the moment */ diff --git a/firmware/target/arm/ipod/app.lds b/firmware/target/arm/ipod/app.lds index 3fe08fe..9c7eb16 100644 --- a/firmware/target/arm/ipod/app.lds +++ b/firmware/target/arm/ipod/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/iriver/app.lds b/firmware/target/arm/iriver/app.lds index de355c3..a98f33d 100644 --- a/firmware/target/arm/iriver/app.lds +++ b/firmware/target/arm/iriver/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/olympus/app.lds b/firmware/target/arm/olympus/app.lds index de355c3..a98f33d 100644 --- a/firmware/target/arm/olympus/app.lds +++ b/firmware/target/arm/olympus/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/pbell/app.lds b/firmware/target/arm/pbell/app.lds index de355c3..a98f33d 100644 --- a/firmware/target/arm/pbell/app.lds +++ b/firmware/target/arm/pbell/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/philips/app.lds b/firmware/target/arm/philips/app.lds index de355c3..a98f33d 100644 --- a/firmware/target/arm/philips/app.lds +++ b/firmware/target/arm/philips/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/pnx0101/app.lds b/firmware/target/arm/pnx0101/app.lds index 6464b0d..3b7b73c 100644 --- a/firmware/target/arm/pnx0101/app.lds +++ b/firmware/target/arm/pnx0101/app.lds @@ -57,20 +57,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM /DISCARD/ : diff --git a/firmware/target/arm/samsung/app.lds b/firmware/target/arm/samsung/app.lds index de355c3..a98f33d 100644 --- a/firmware/target/arm/samsung/app.lds +++ b/firmware/target/arm/samsung/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/sandisk/app.lds b/firmware/target/arm/sandisk/app.lds index de355c3..a98f33d 100644 --- a/firmware/target/arm/sandisk/app.lds +++ b/firmware/target/arm/sandisk/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/tatung/app.lds b/firmware/target/arm/tatung/app.lds index cda0190..a00d5f1 100644 --- a/firmware/target/arm/tatung/app.lds +++ b/firmware/target/arm/tatung/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM #if NOCACHE_BASE != 0 diff --git a/firmware/target/arm/tcc780x/app.lds b/firmware/target/arm/tcc780x/app.lds index 9d5570a..e84ea05 100644 --- a/firmware/target/arm/tcc780x/app.lds +++ b/firmware/target/arm/tcc780x/app.lds @@ -56,20 +56,12 @@ SECTIONS *(.rodata.str1.1) *(.rodata.str1.4) . = ALIGN(0x4); - - /* Pseudo-allocate the copies of the data sections */ - _datacopy = .; } > DRAM - /* TRICK ALERT! For RAM execution, we put the .data section at the - same load address as the copy. Thus, we don't waste extra RAM - when we don't actually need the copy. */ - .data : AT ( _datacopy ) + .data : { - _datastart = .; *(.data*) . = ALIGN(0x4); - _dataend = .; } > DRAM /DISCARD/ : |