mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-23 19:50:13 +08:00
* scripttempl/elf.sc: Move non-text .dynamic section before
.plt/.got/.sdata* group. (OTHER_GOT_SECTIONS): Move to immediately after .got. (OTHER_SDATA_SECTIONS): Add. * emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than OTHER_GOT_SECTIONS. * emulparams/crislinux.sh: Likewise. * emulparams/elf32b4300.sh: Likewise. * emulparams/elf32bmip.sh: Likewise. * emulparams/elf32bmipn32.sh: Likewise. * emulparams/elf32bsmip.sh: Likewise. * emulparams/elf32btsmip.sh: Likewise. * emulparams/elf32ebmip.sh: Likewise. * emulparams/elf32elmip.sh: Likewise. * emulparams/elf32l4300.sh: Likewise. * emulparams/elf32lmip.sh: Likewise. * emulparams/elf32lsmip.sh: Likewise. * emulparams/elf32ltsmip.sh: Likewise. * emulparams/elf64bmip.sh: Likewise. * emulparams/elf64btsmip.sh: Likewise. * emulparams/elf64ltsmip.sh: Likewise.
This commit is contained in:
24
ld/ChangeLog
24
ld/ChangeLog
@ -1,3 +1,27 @@
|
|||||||
|
2001-08-09 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
|
* scripttempl/elf.sc: Move non-text .dynamic section before
|
||||||
|
.plt/.got/.sdata* group.
|
||||||
|
(OTHER_GOT_SECTIONS): Move to immediately after .got.
|
||||||
|
(OTHER_SDATA_SECTIONS): Add.
|
||||||
|
* emulparams/criself.sh: Use OTHER_SDATA_SECTIONS rather than
|
||||||
|
OTHER_GOT_SECTIONS.
|
||||||
|
* emulparams/crislinux.sh: Likewise.
|
||||||
|
* emulparams/elf32b4300.sh: Likewise.
|
||||||
|
* emulparams/elf32bmip.sh: Likewise.
|
||||||
|
* emulparams/elf32bmipn32.sh: Likewise.
|
||||||
|
* emulparams/elf32bsmip.sh: Likewise.
|
||||||
|
* emulparams/elf32btsmip.sh: Likewise.
|
||||||
|
* emulparams/elf32ebmip.sh: Likewise.
|
||||||
|
* emulparams/elf32elmip.sh: Likewise.
|
||||||
|
* emulparams/elf32l4300.sh: Likewise.
|
||||||
|
* emulparams/elf32lmip.sh: Likewise.
|
||||||
|
* emulparams/elf32lsmip.sh: Likewise.
|
||||||
|
* emulparams/elf32ltsmip.sh: Likewise.
|
||||||
|
* emulparams/elf64bmip.sh: Likewise.
|
||||||
|
* emulparams/elf64btsmip.sh: Likewise.
|
||||||
|
* emulparams/elf64ltsmip.sh: Likewise.
|
||||||
|
|
||||||
2001-08-08 Alan Modra <amodra@bigpond.net.au>
|
2001-08-08 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
* genscripts.sh: Source the emulparams script before each output
|
* genscripts.sh: Source the emulparams script before each output
|
||||||
|
@ -36,7 +36,7 @@ OTHER_READONLY_SECTIONS='PROVIDE (__Etext = .);'
|
|||||||
DATA_START_SYMBOLS='PROVIDE (__Sdata = .);'
|
DATA_START_SYMBOLS='PROVIDE (__Sdata = .);'
|
||||||
|
|
||||||
# Smuggle an "OTHER_DATA_END_SYMBOLS" here.
|
# Smuggle an "OTHER_DATA_END_SYMBOLS" here.
|
||||||
OTHER_GOT_SECTIONS='PROVIDE (__Edata = .);'
|
OTHER_SDATA_SECTIONS='PROVIDE (__Edata = .);'
|
||||||
|
|
||||||
# If .bss does not immediately follow .data but has its own start
|
# If .bss does not immediately follow .data but has its own start
|
||||||
# address, we can't get to it with OTHER_BSS_SYMBOLS, neither can we
|
# address, we can't get to it with OTHER_BSS_SYMBOLS, neither can we
|
||||||
|
@ -26,7 +26,7 @@ OTHER_READONLY_SECTIONS='PROVIDE (__Etext = .);'
|
|||||||
DATA_START_SYMBOLS='PROVIDE (__Sdata = .);'
|
DATA_START_SYMBOLS='PROVIDE (__Sdata = .);'
|
||||||
|
|
||||||
# Smuggle an "OTHER_DATA_END_SYMBOLS" here.
|
# Smuggle an "OTHER_DATA_END_SYMBOLS" here.
|
||||||
OTHER_GOT_SECTIONS='PROVIDE (__Edata = .);'
|
OTHER_SDATA_SECTIONS='PROVIDE (__Edata = .);'
|
||||||
OTHER_BSS_SYMBOLS='PROVIDE (__Sbss = .);'
|
OTHER_BSS_SYMBOLS='PROVIDE (__Sbss = .);'
|
||||||
OTHER_BSS_END_SYMBOLS='PROVIDE (__Ebss = .);'
|
OTHER_BSS_END_SYMBOLS='PROVIDE (__Ebss = .);'
|
||||||
|
|
||||||
|
@ -9,7 +9,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -13,7 +13,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -17,7 +17,7 @@ ENTRY=__start
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
.srdata : { *(.srdata) }
|
.srdata : { *(.srdata) }
|
||||||
|
@ -13,7 +13,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -13,7 +13,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -10,7 +10,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -10,7 +10,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -9,7 +9,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -13,7 +13,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -13,7 +13,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -13,7 +13,7 @@ OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)'
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -20,7 +20,7 @@ ENTRY=__start
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
.srdata : { *(.srdata) }
|
.srdata : { *(.srdata) }
|
||||||
|
@ -25,7 +25,7 @@ ENTRY=__start
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -25,7 +25,7 @@ ENTRY=__start
|
|||||||
OTHER_GOT_SYMBOLS='
|
OTHER_GOT_SYMBOLS='
|
||||||
_gp = ALIGN(16) + 0x7ff0;
|
_gp = ALIGN(16) + 0x7ff0;
|
||||||
'
|
'
|
||||||
OTHER_GOT_SECTIONS='
|
OTHER_SDATA_SECTIONS='
|
||||||
.lit8 : { *(.lit8) }
|
.lit8 : { *(.lit8) }
|
||||||
.lit4 : { *(.lit4) }
|
.lit4 : { *(.lit4) }
|
||||||
'
|
'
|
||||||
|
@ -17,7 +17,8 @@
|
|||||||
# DATA_START_SYMBOLS - symbols that appear at the start of the
|
# DATA_START_SYMBOLS - symbols that appear at the start of the
|
||||||
# .data section.
|
# .data section.
|
||||||
# OTHER_GOT_SYMBOLS - symbols defined just before .got.
|
# OTHER_GOT_SYMBOLS - symbols defined just before .got.
|
||||||
# OTHER_GOT_SECTIONS - sections just after .got and .sdata.
|
# OTHER_GOT_SECTIONS - sections just after .got.
|
||||||
|
# OTHER_SDATA_SECTIONS - sections just after .sdata.
|
||||||
# OTHER_BSS_SYMBOLS - symbols that appear at the start of the
|
# OTHER_BSS_SYMBOLS - symbols that appear at the start of the
|
||||||
# .bss section besides __bss_start.
|
# .bss section besides __bss_start.
|
||||||
# DATA_PLT - .plt should be in data segment, not text segment.
|
# DATA_PLT - .plt should be in data segment, not text segment.
|
||||||
@ -308,14 +309,15 @@ SECTIONS
|
|||||||
.gcc_except_table : { *(.gcc_except_table) }
|
.gcc_except_table : { *(.gcc_except_table) }
|
||||||
${WRITABLE_RODATA+${RODATA}}
|
${WRITABLE_RODATA+${RODATA}}
|
||||||
${RELOCATING+${OTHER_READWRITE_SECTIONS}}
|
${RELOCATING+${OTHER_READWRITE_SECTIONS}}
|
||||||
|
${TEXT_DYNAMIC-${DYNAMIC}}
|
||||||
${RELOCATING+${CTOR}}
|
${RELOCATING+${CTOR}}
|
||||||
${RELOCATING+${DTOR}}
|
${RELOCATING+${DTOR}}
|
||||||
${DATA_PLT+${PLT}}
|
${DATA_PLT+${PLT}}
|
||||||
${RELOCATING+${OTHER_GOT_SYMBOLS}}
|
${RELOCATING+${OTHER_GOT_SYMBOLS}}
|
||||||
.got ${RELOCATING-0} : { *(.got.plt) *(.got) }
|
.got ${RELOCATING-0} : { *(.got.plt) *(.got) }
|
||||||
|
${RELOCATING+${OTHER_GOT_SECTIONS}}
|
||||||
${CREATE_SHLIB+${SDATA2}}
|
${CREATE_SHLIB+${SDATA2}}
|
||||||
${CREATE_SHLIB+${SBSS2}}
|
${CREATE_SHLIB+${SBSS2}}
|
||||||
${TEXT_DYNAMIC-${DYNAMIC}}
|
|
||||||
/* We want the small data sections together, so single-instruction offsets
|
/* We want the small data sections together, so single-instruction offsets
|
||||||
can access them all, and initialized data all before uninitialized, so
|
can access them all, and initialized data all before uninitialized, so
|
||||||
we can shorten the on-disk segment size. */
|
we can shorten the on-disk segment size. */
|
||||||
@ -326,7 +328,7 @@ SECTIONS
|
|||||||
${RELOCATING+*(.sdata.*)}
|
${RELOCATING+*(.sdata.*)}
|
||||||
${RELOCATING+*(.gnu.linkonce.s.*)}
|
${RELOCATING+*(.gnu.linkonce.s.*)}
|
||||||
}
|
}
|
||||||
${RELOCATING+${OTHER_GOT_SECTIONS}}
|
${RELOCATING+${OTHER_SDATA_SECTIONS}}
|
||||||
${RELOCATING+_edata = .;}
|
${RELOCATING+_edata = .;}
|
||||||
${RELOCATING+PROVIDE (edata = .);}
|
${RELOCATING+PROVIDE (edata = .);}
|
||||||
${RELOCATING+__bss_start = .;}
|
${RELOCATING+__bss_start = .;}
|
||||||
|
Reference in New Issue
Block a user