mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-09-10 05:52:21 +08:00
* scripttempl/elf32cr16.sc: Emit empty script for ld -r and ld -Ur.
* scripttempl/elf32cr16c.sc: Likewise. * scripttempl/elf32crx.sc: Likewise. * scripttempl/tic54xcoff.sc: Likewise. * scripttempl/aix.sc: Delete ${RELOCATING-0}. * scripttempl/avr.sc: Likewise. * scripttempl/elf32msp430.sc: Likewise. * scripttempl/elf32msp430_3.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf_chaos.sc: Likewise. * scripttempl/elfi370.sc: Likewise. * scripttempl/nw.sc: Likewise. * scripttempl/psos.sc: Likewise. * scripttempl/armbpabi.sc: Delete ${RELOCATING-0} and ${CONSTRUCTING-0}. * scripttempl/elf.sc: Likewise. * scripttempl/elf64hppa.sc: Likewise. * scripttempl/elfd10v.sc: Likewise. * scripttempl/elfd30v.sc: Likewise. * scripttempl/elfm68hc11.sc: Likewise. * scripttempl/elfm68hc12.sc: Likewise. * scripttempl/elfmicroblaze.sc: Likewise. * scripttempl/elfxtensa.sc: Likewise. * scripttempl/iq2000.sc: Likewise. * scripttempl/mep.sc: Likewise. * scripttempl/xstormy16.sc: Likewise.
This commit is contained in:
@ -24,7 +24,7 @@ test -z "${LITTLE_OUTPUT_FORMAT}" && LITTLE_OUTPUT_FORMAT=${OUTPUT_FORMAT}
|
||||
if [ -z "$MACHINE" ]; then OUTPUT_ARCH=${ARCH}; else OUTPUT_ARCH=${ARCH}:${MACHINE}; fi
|
||||
test "$LD_FLAG" = "N" && DATA_ADDR=.
|
||||
|
||||
CTOR=".ctors ${CONSTRUCTING-0} :
|
||||
CTOR=".ctors :
|
||||
{
|
||||
${CONSTRUCTING+ PROVIDE (__CTOR_LIST__ = .); }
|
||||
${CONSTRUCTING+${CTOR_START}}
|
||||
@ -34,7 +34,7 @@ CTOR=".ctors ${CONSTRUCTING-0} :
|
||||
${CONSTRUCTING+ PROVIDE(__CTOR_END__ = .); }
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY}}"
|
||||
|
||||
DTOR=" .dtors ${CONSTRUCTING-0} :
|
||||
DTOR=" .dtors :
|
||||
{
|
||||
${CONSTRUCTING+ PROVIDE(__DTOR_LIST__ = .); }
|
||||
KEEP (*(.dtors))
|
||||
@ -127,34 +127,34 @@ PRE_COMPUTE_DATA_SIZE="
|
||||
"
|
||||
|
||||
INSTALL_RELOC="
|
||||
.install0 0 : { *(.install0) }
|
||||
.install1 0 : { *(.install1) }
|
||||
.install2 0 : { *(.install2) }
|
||||
.install3 0 : { *(.install3) }
|
||||
.install4 0 : { *(.install4) }
|
||||
.install0 : { *(.install0) }
|
||||
.install1 : { *(.install1) }
|
||||
.install2 : { *(.install2) }
|
||||
.install3 : { *(.install3) }
|
||||
.install4 : { *(.install4) }
|
||||
"
|
||||
|
||||
FINISH_RELOC="
|
||||
.fini0 0 : { *(.fini0) }
|
||||
.fini1 0 : { *(.fini1) }
|
||||
.fini2 0 : { *(.fini2) }
|
||||
.fini3 0 : { *(.fini3) }
|
||||
.fini4 0 : { *(.fini4) }
|
||||
.fini0 : { *(.fini0) }
|
||||
.fini1 : { *(.fini1) }
|
||||
.fini2 : { *(.fini2) }
|
||||
.fini3 : { *(.fini3) }
|
||||
.fini4 : { *(.fini4) }
|
||||
"
|
||||
|
||||
BSS_DATA_RELOC="
|
||||
.data1 0 : { *(.data1) }
|
||||
.data1 : { *(.data1) }
|
||||
|
||||
/* We want the small data sections together, so single-instruction offsets
|
||||
can access them all, and initialized data all before uninitialized, so
|
||||
we can shorten the on-disk segment size. */
|
||||
.sdata 0 : { *(.sdata) }
|
||||
.sbss 0 : { *(.sbss) }
|
||||
.scommon 0 : { *(.scommon) }
|
||||
.sdata : { *(.sdata) }
|
||||
.sbss : { *(.sbss) }
|
||||
.scommon : { *(.scommon) }
|
||||
"
|
||||
|
||||
SOFT_REGS_RELOC="
|
||||
.softregs 0 : { *(.softregs) }
|
||||
.softregs : { *(.softregs) }
|
||||
"
|
||||
|
||||
cat <<EOF
|
||||
@ -172,113 +172,113 @@ ${RELOCATING+${MEMORY_DEF}}
|
||||
|
||||
SECTIONS
|
||||
{
|
||||
.hash ${RELOCATING-0} : { *(.hash) }
|
||||
.dynsym ${RELOCATING-0} : { *(.dynsym) }
|
||||
.dynstr ${RELOCATING-0} : { *(.dynstr) }
|
||||
.gnu.version ${RELOCATING-0} : { *(.gnu.version) }
|
||||
.gnu.version_d ${RELOCATING-0} : { *(.gnu.version_d) }
|
||||
.gnu.version_r ${RELOCATING-0} : { *(.gnu.version_r) }
|
||||
.hash : { *(.hash) }
|
||||
.dynsym : { *(.dynsym) }
|
||||
.dynstr : { *(.dynstr) }
|
||||
.gnu.version : { *(.gnu.version) }
|
||||
.gnu.version_d : { *(.gnu.version_d) }
|
||||
.gnu.version_r : { *(.gnu.version_r) }
|
||||
|
||||
.rel.text ${RELOCATING-0} :
|
||||
.rel.text :
|
||||
{
|
||||
*(.rel.text)
|
||||
${RELOCATING+*(.rel.text.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.t.*)}
|
||||
}
|
||||
.rela.text ${RELOCATING-0} :
|
||||
.rela.text :
|
||||
{
|
||||
*(.rela.text)
|
||||
${RELOCATING+*(.rela.text.*)}
|
||||
${RELOCATING+*(.rela.gnu.linkonce.t.*)}
|
||||
}
|
||||
.rel.data ${RELOCATING-0} :
|
||||
.rel.data :
|
||||
{
|
||||
*(.rel.data)
|
||||
${RELOCATING+*(.rel.data.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.d.*)}
|
||||
}
|
||||
.rela.data ${RELOCATING-0} :
|
||||
.rela.data :
|
||||
{
|
||||
*(.rela.data)
|
||||
${RELOCATING+*(.rela.data.*)}
|
||||
${RELOCATING+*(.rela.gnu.linkonce.d.*)}
|
||||
}
|
||||
.rel.rodata ${RELOCATING-0} :
|
||||
.rel.rodata :
|
||||
{
|
||||
*(.rel.rodata)
|
||||
${RELOCATING+*(.rel.rodata.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.r.*)}
|
||||
}
|
||||
.rela.rodata ${RELOCATING-0} :
|
||||
.rela.rodata :
|
||||
{
|
||||
*(.rela.rodata)
|
||||
${RELOCATING+*(.rela.rodata.*)}
|
||||
${RELOCATING+*(.rela.gnu.linkonce.r.*)}
|
||||
}
|
||||
.rel.sdata ${RELOCATING-0} :
|
||||
.rel.sdata :
|
||||
{
|
||||
*(.rel.sdata)
|
||||
${RELOCATING+*(.rel.sdata.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.s.*)}
|
||||
}
|
||||
.rela.sdata ${RELOCATING-0} :
|
||||
.rela.sdata :
|
||||
{
|
||||
*(.rela.sdata)
|
||||
${RELOCATING+*(.rela.sdata.*)}
|
||||
${RELOCATING+*(.rela.gnu.linkonce.s.*)}
|
||||
}
|
||||
.rel.sbss ${RELOCATING-0} :
|
||||
.rel.sbss :
|
||||
{
|
||||
*(.rel.sbss)
|
||||
${RELOCATING+*(.rel.sbss.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.sb.*)}
|
||||
}
|
||||
.rela.sbss ${RELOCATING-0} :
|
||||
.rela.sbss :
|
||||
{
|
||||
*(.rela.sbss)
|
||||
${RELOCATING+*(.rela.sbss.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.sb.*)}
|
||||
}
|
||||
.rel.bss ${RELOCATING-0} :
|
||||
.rel.bss :
|
||||
{
|
||||
*(.rel.bss)
|
||||
${RELOCATING+*(.rel.bss.*)}
|
||||
${RELOCATING+*(.rel.gnu.linkonce.b.*)}
|
||||
}
|
||||
.rela.bss ${RELOCATING-0} :
|
||||
.rela.bss :
|
||||
{
|
||||
*(.rela.bss)
|
||||
${RELOCATING+*(.rela.bss.*)}
|
||||
${RELOCATING+*(.rela.gnu.linkonce.b.*)}
|
||||
}
|
||||
.rel.stext ${RELOCATING-0} : { *(.rel.stest) }
|
||||
.rela.stext ${RELOCATING-0} : { *(.rela.stest) }
|
||||
.rel.etext ${RELOCATING-0} : { *(.rel.etest) }
|
||||
.rela.etext ${RELOCATING-0} : { *(.rela.etest) }
|
||||
.rel.sdata ${RELOCATING-0} : { *(.rel.sdata) }
|
||||
.rela.sdata ${RELOCATING-0} : { *(.rela.sdata) }
|
||||
.rel.edata ${RELOCATING-0} : { *(.rel.edata) }
|
||||
.rela.edata ${RELOCATING-0} : { *(.rela.edata) }
|
||||
.rel.eit_v ${RELOCATING-0} : { *(.rel.eit_v) }
|
||||
.rela.eit_v ${RELOCATING-0} : { *(.rela.eit_v) }
|
||||
.rel.ebss ${RELOCATING-0} : { *(.rel.ebss) }
|
||||
.rela.ebss ${RELOCATING-0} : { *(.rela.ebss) }
|
||||
.rel.srodata ${RELOCATING-0} : { *(.rel.srodata) }
|
||||
.rela.srodata ${RELOCATING-0} : { *(.rela.srodata) }
|
||||
.rel.erodata ${RELOCATING-0} : { *(.rel.erodata) }
|
||||
.rela.erodata ${RELOCATING-0} : { *(.rela.erodata) }
|
||||
.rel.got ${RELOCATING-0} : { *(.rel.got) }
|
||||
.rela.got ${RELOCATING-0} : { *(.rela.got) }
|
||||
.rel.ctors ${RELOCATING-0} : { *(.rel.ctors) }
|
||||
.rela.ctors ${RELOCATING-0} : { *(.rela.ctors) }
|
||||
.rel.dtors ${RELOCATING-0} : { *(.rel.dtors) }
|
||||
.rela.dtors ${RELOCATING-0} : { *(.rela.dtors) }
|
||||
.rel.init ${RELOCATING-0} : { *(.rel.init) }
|
||||
.rela.init ${RELOCATING-0} : { *(.rela.init) }
|
||||
.rel.fini ${RELOCATING-0} : { *(.rel.fini) }
|
||||
.rela.fini ${RELOCATING-0} : { *(.rela.fini) }
|
||||
.rel.plt ${RELOCATING-0} : { *(.rel.plt) }
|
||||
.rela.plt ${RELOCATING-0} : { *(.rela.plt) }
|
||||
.rel.stext : { *(.rel.stest) }
|
||||
.rela.stext : { *(.rela.stest) }
|
||||
.rel.etext : { *(.rel.etest) }
|
||||
.rela.etext : { *(.rela.etest) }
|
||||
.rel.sdata : { *(.rel.sdata) }
|
||||
.rela.sdata : { *(.rela.sdata) }
|
||||
.rel.edata : { *(.rel.edata) }
|
||||
.rela.edata : { *(.rela.edata) }
|
||||
.rel.eit_v : { *(.rel.eit_v) }
|
||||
.rela.eit_v : { *(.rela.eit_v) }
|
||||
.rel.ebss : { *(.rel.ebss) }
|
||||
.rela.ebss : { *(.rela.ebss) }
|
||||
.rel.srodata : { *(.rel.srodata) }
|
||||
.rela.srodata : { *(.rela.srodata) }
|
||||
.rel.erodata : { *(.rel.erodata) }
|
||||
.rela.erodata : { *(.rela.erodata) }
|
||||
.rel.got : { *(.rel.got) }
|
||||
.rela.got : { *(.rela.got) }
|
||||
.rel.ctors : { *(.rel.ctors) }
|
||||
.rela.ctors : { *(.rela.ctors) }
|
||||
.rel.dtors : { *(.rel.dtors) }
|
||||
.rela.dtors : { *(.rela.dtors) }
|
||||
.rel.init : { *(.rel.init) }
|
||||
.rela.init : { *(.rela.init) }
|
||||
.rel.fini : { *(.rel.fini) }
|
||||
.rela.fini : { *(.rela.fini) }
|
||||
.rel.plt : { *(.rel.plt) }
|
||||
.rela.plt : { *(.rela.plt) }
|
||||
|
||||
/* Concatenate .page0 sections. Put them in the page0 memory bank
|
||||
unless we are creating a relocatable file. */
|
||||
@ -288,12 +288,12 @@ SECTIONS
|
||||
} ${RELOCATING+ > page0}
|
||||
|
||||
/* Start of text section. */
|
||||
.stext ${RELOCATING-0} :
|
||||
.stext :
|
||||
{
|
||||
*(.stext)
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY}}
|
||||
|
||||
.init ${RELOCATING-0} :
|
||||
.init :
|
||||
{
|
||||
*(.init)
|
||||
} ${RELOCATING+=${NOP-0}}
|
||||
@ -301,7 +301,7 @@ SECTIONS
|
||||
${RELOCATING-${INSTALL_RELOC}}
|
||||
${RELOCATING-${FINISH_RELOC}}
|
||||
|
||||
.text ${RELOCATING-0}:
|
||||
.text :
|
||||
{
|
||||
/* Put startup code at beginning so that _start keeps same address. */
|
||||
${RELOCATING+${STARTUP_CODE}}
|
||||
@ -322,17 +322,17 @@ SECTIONS
|
||||
${RELOCATING+. = ALIGN(2);}
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY} =0xa7a7a7a7}
|
||||
|
||||
.eh_frame ${RELOCATING-0} :
|
||||
.eh_frame :
|
||||
{
|
||||
KEEP (*(.eh_frame))
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY}}
|
||||
|
||||
.gcc_except_table ${RELOCATING-0} :
|
||||
.gcc_except_table :
|
||||
{
|
||||
*(.gcc_except_table)
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY}}
|
||||
|
||||
.rodata ${RELOCATING-0} :
|
||||
.rodata :
|
||||
{
|
||||
*(.rodata)
|
||||
${RELOCATING+*(.rodata.*)}
|
||||
@ -340,7 +340,7 @@ SECTIONS
|
||||
${RELOCATING+. = ALIGN(2);}
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY} =0xffffffff}
|
||||
|
||||
.rodata1 ${RELOCATING-0} :
|
||||
.rodata1 :
|
||||
{
|
||||
*(.rodata1)
|
||||
${RELOCATING+. = ALIGN(2);}
|
||||
@ -350,7 +350,7 @@ SECTIONS
|
||||
${RELOCATING+${CTOR}}
|
||||
${RELOCATING+${DTOR}}
|
||||
|
||||
.jcr ${RELOCATING-0} :
|
||||
.jcr :
|
||||
{
|
||||
KEEP (*(.jcr))
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY}}
|
||||
@ -363,7 +363,7 @@ SECTIONS
|
||||
We construct the DATA image section in PROM at end of all these
|
||||
read-only sections. The data image must be copied at init time.
|
||||
Refer to GNU ld, Section 3.6.8.2 Output Section LMA. */
|
||||
.data ${RELOCATING-0} : ${RELOCATING+AT (__data_image)}
|
||||
.data : ${RELOCATING+AT (__data_image)}
|
||||
{
|
||||
${RELOCATING+__data_section_start = .;}
|
||||
${RELOCATING+PROVIDE (__data_section_start = .);}
|
||||
@ -387,7 +387,7 @@ SECTIONS
|
||||
|
||||
${RELOCATING+${PRE_COMPUTE_DATA_SIZE}}
|
||||
|
||||
/* .install ${RELOCATING-0}:
|
||||
/* .install :
|
||||
{
|
||||
. = _data_image_end;
|
||||
} ${RELOCATING+ > ${TEXT_MEMORY}} */
|
||||
@ -396,7 +396,7 @@ SECTIONS
|
||||
${RELOCATING-${BSS_DATA_RELOC}}
|
||||
${RELOCATING-${SOFT_REGS_RELOC}}
|
||||
|
||||
.bss ${RELOCATING-0} :
|
||||
.bss :
|
||||
{
|
||||
${RELOCATING+__bss_start = .;}
|
||||
${RELOCATING+*(.softregs)}
|
||||
@ -413,7 +413,7 @@ SECTIONS
|
||||
${RELOCATING+__bss_size = SIZEOF(.bss);}
|
||||
${RELOCATING+PROVIDE (__bss_size = SIZEOF(.bss));}
|
||||
|
||||
.eeprom ${RELOCATING-0} :
|
||||
.eeprom :
|
||||
{
|
||||
*(.eeprom)
|
||||
*(.eeprom.*)
|
||||
|
Reference in New Issue
Block a user