summaryrefslogtreecommitdiff
path: root/firmware/target/mips/ingenic_jz47xx
diff options
context:
space:
mode:
authorBoris Gjenero <dreamlayers@rockbox.org>2011-12-18 06:43:08 +0000
committerBoris Gjenero <dreamlayers@rockbox.org>2011-12-18 06:43:08 +0000
commitca9111ef641f42ccb32610d8f3ac44767b062e94 (patch)
tree09ae9a1760e8eae9a502b24c2b5cc8981cc73837 /firmware/target/mips/ingenic_jz47xx
parentdc07503ad4f6f9722baddddca5ba7abe22ec34ba (diff)
downloadrockbox-ca9111ef641f42ccb32610d8f3ac44767b062e94.tar.gz
rockbox-ca9111ef641f42ccb32610d8f3ac44767b062e94.zip
Add KEEP() around vectors in linker scripts.
Vectors are needed by the CPU, but they don't need to be accessed by Rockbox. Without the KEEP(), they can be removed when liking with --gc-sections, creating a broken binary without any warnings. This tells the linker to not remove them. It should enable use of --gc-sections for all targets. When not using --gc-sections, this does not change the binary. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31351 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/mips/ingenic_jz47xx')
-rw-r--r--firmware/target/mips/ingenic_jz47xx/app.lds10
-rw-r--r--firmware/target/mips/ingenic_jz47xx/boot.lds10
2 files changed, 10 insertions, 10 deletions
diff --git a/firmware/target/mips/ingenic_jz47xx/app.lds b/firmware/target/mips/ingenic_jz47xx/app.lds
index 6221a787c9..a8ac6ff0bf 100644
--- a/firmware/target/mips/ingenic_jz47xx/app.lds
+++ b/firmware/target/mips/ingenic_jz47xx/app.lds
@@ -55,14 +55,14 @@ SECTIONS
55 .iram IRAMORIG: AT (_edata) 55 .iram IRAMORIG: AT (_edata)
56 { 56 {
57 _iramstart = .; 57 _iramstart = .;
58 *(.vectors.1); 58 KEEP(*(.vectors.1));
59 . = 0x100; 59 . = 0x100;
60 *(.vectors.2); 60 KEEP(*(.vectors.2));
61 . = 0x180; 61 . = 0x180;
62 *(.vectors.3); 62 KEEP(*(.vectors.3));
63 . = 0x200; 63 . = 0x200;
64 *(.vectors.4); 64 KEEP(*(.vectors.4));
65 *(.vectors); 65 KEEP(*(.vectors));
66 66
67 *(.icode); 67 *(.icode);
68 *(.irodata); 68 *(.irodata);
diff --git a/firmware/target/mips/ingenic_jz47xx/boot.lds b/firmware/target/mips/ingenic_jz47xx/boot.lds
index a236a3f40a..c207fcbac3 100644
--- a/firmware/target/mips/ingenic_jz47xx/boot.lds
+++ b/firmware/target/mips/ingenic_jz47xx/boot.lds
@@ -49,14 +49,14 @@ SECTIONS
49 .iram IRAMORIG: 49 .iram IRAMORIG:
50 { 50 {
51 _iramstart = .; 51 _iramstart = .;
52 *(.vectors.1); 52 KEEP(*(.vectors.1));
53 . = 0x100; 53 . = 0x100;
54 *(.vectors.2); 54 KEEP(*(.vectors.2));
55 . = 0x180; 55 . = 0x180;
56 *(.vectors.3); 56 KEEP(*(.vectors.3));
57 . = 0x200; 57 . = 0x200;
58 *(.vectors.4); 58 KEEP(*(.vectors.4));
59 *(.vectors); 59 KEEP(*(.vectors));
60 60
61 *(.icode); 61 *(.icode);
62 *(.irodata); 62 *(.irodata);