|
@@ -60,27 +60,7 @@ SECTIONS
|
|
__rel_dyn_end = .;
|
|
__rel_dyn_end = .;
|
|
}
|
|
}
|
|
|
|
|
|
- .deadcode : {
|
|
|
|
- /*
|
|
|
|
- * Workaround for a binutils feature (or bug?).
|
|
|
|
- *
|
|
|
|
- * The GNU ld from binutils puts the dynamic relocation
|
|
|
|
- * entries into the .rel.dyn section. Sometimes it
|
|
|
|
- * allocates more dynamic relocation entries than it needs
|
|
|
|
- * and the unused slots are set to R_MIPS_NONE entries.
|
|
|
|
- *
|
|
|
|
- * However the size of the .rel.dyn section in the ELF
|
|
|
|
- * section header does not cover the unused entries, so
|
|
|
|
- * objcopy removes those during stripping.
|
|
|
|
- *
|
|
|
|
- * Create a small section here to avoid that.
|
|
|
|
- */
|
|
|
|
- LONG(0xffffffff);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- .dynsym : {
|
|
|
|
- *(.dynsym)
|
|
|
|
- }
|
|
|
|
|
|
+ _end = .;
|
|
|
|
|
|
.bss __rel_dyn_start (OVERLAY) : {
|
|
.bss __rel_dyn_start (OVERLAY) : {
|
|
__bss_start = .;
|
|
__bss_start = .;
|
|
@@ -91,15 +71,39 @@ SECTIONS
|
|
__bss_end = .;
|
|
__bss_end = .;
|
|
}
|
|
}
|
|
|
|
|
|
- /DISCARD/ : {
|
|
|
|
|
|
+ .dynsym _end : {
|
|
|
|
+ *(.dynsym)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .dynbss : {
|
|
*(.dynbss)
|
|
*(.dynbss)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .dynstr : {
|
|
*(.dynstr)
|
|
*(.dynstr)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .dynamic : {
|
|
*(.dynamic)
|
|
*(.dynamic)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .plt : {
|
|
|
|
+ *(.plt)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .interp : {
|
|
*(.interp)
|
|
*(.interp)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .gnu : {
|
|
|
|
+ *(.gnu*)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .MIPS.stubs : {
|
|
|
|
+ *(.MIPS.stubs)
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ .hash : {
|
|
*(.hash)
|
|
*(.hash)
|
|
- *(.gnu.*)
|
|
|
|
- *(.plt)
|
|
|
|
- *(.got.plt)
|
|
|
|
- *(.rel.plt)
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|