* emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from
OTHER_END_SYMBOLS. * emulparams/armelf_linux.sh: Likewise. * emulparams/armnto.sh: Likewise. * emulparams/criself.sh: Likewise. * emulparams/elf32mcore.sh: Likewise. * emulparams/criself.sh (OTHER_SYMBOLS): Define. * emulparams/crislinux.sh (OTHER_SYMBOLS): Define. (OTHER_END_SYMBOLS): Don't define. * emulparams/elf32fr30.sh: Likewise. * emulparams/elf64mmix.sh: Likewise. * emulparams/hppa64linux.sh: Likewise. * emulparams/m32relf.sh: Likewise. * emulparams/vxworks.sh: Likewise. * scripttempl/armbpabi.sc (OTHER_BSS_SECTIONS): Delete. (OTHER_BSS_END_SYMBOLS): Add. (OTHER_END_SYMBOLS): Move before current end sym definitions. (OTHER_SYMBOLS): Replace OTHER_END_SYMBOLS near end of script. * scripttempl/elf.sc: Likewise. * scripttempl/elf32sh-symbian.sc: Likewise. * scripttempl/elf_chaos.sc: Likewise. * scripttempl/elfxtensa.sc: Likewise. * scripttempl/iq2000.sc: Likewise. * scripttempl/xstormy16.sc: Likewise. * scripttempl/elf.sc (LBSS, LARGE_SECTIONS): Delete. (REL_LDATA, REL_LBSS, REL_LRODATA): Delete. (REL_LARGE, LARGE_SECTIONS): Add. * emulparams/elf_x86_64.sh (LARGE_SECTIONS): Define as script text. (REL_LARGE): Define. * emulparams/hppa64linux.sh (OTHER_BSS_SECTIONS): Don't define. (LARGE_SECTIONS): Define. * emulparams/hppa64linux.sh (OTHER_BSS_SECTIONS): Don't define. (LARGE_SECTIONS): Define.
This commit is contained in:
parent
34f2aa282e
commit
827a1c67ae
37
ld/ChangeLog
37
ld/ChangeLog
@ -1,3 +1,40 @@
|
||||
2005-08-05 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* emulparams/armelf.sh (OTHER_BSS_END_SYMBOLS): Split out from
|
||||
OTHER_END_SYMBOLS.
|
||||
* emulparams/armelf_linux.sh: Likewise.
|
||||
* emulparams/armnto.sh: Likewise.
|
||||
* emulparams/criself.sh: Likewise.
|
||||
* emulparams/elf32mcore.sh: Likewise.
|
||||
* emulparams/criself.sh (OTHER_SYMBOLS): Define.
|
||||
* emulparams/crislinux.sh (OTHER_SYMBOLS): Define.
|
||||
(OTHER_END_SYMBOLS): Don't define.
|
||||
* emulparams/elf32fr30.sh: Likewise.
|
||||
* emulparams/elf64mmix.sh: Likewise.
|
||||
* emulparams/hppa64linux.sh: Likewise.
|
||||
* emulparams/m32relf.sh: Likewise.
|
||||
* emulparams/vxworks.sh: Likewise.
|
||||
* scripttempl/armbpabi.sc (OTHER_BSS_SECTIONS): Delete.
|
||||
(OTHER_BSS_END_SYMBOLS): Add.
|
||||
(OTHER_END_SYMBOLS): Move before current end sym definitions.
|
||||
(OTHER_SYMBOLS): Replace OTHER_END_SYMBOLS near end of script.
|
||||
* scripttempl/elf.sc: Likewise.
|
||||
* scripttempl/elf32sh-symbian.sc: Likewise.
|
||||
* scripttempl/elf_chaos.sc: Likewise.
|
||||
* scripttempl/elfxtensa.sc: Likewise.
|
||||
* scripttempl/iq2000.sc: Likewise.
|
||||
* scripttempl/xstormy16.sc: Likewise.
|
||||
|
||||
* scripttempl/elf.sc (LBSS, LARGE_SECTIONS): Delete.
|
||||
(REL_LDATA, REL_LBSS, REL_LRODATA): Delete.
|
||||
(REL_LARGE, LARGE_SECTIONS): Add.
|
||||
* emulparams/elf_x86_64.sh (LARGE_SECTIONS): Define as script text.
|
||||
(REL_LARGE): Define.
|
||||
* emulparams/hppa64linux.sh (OTHER_BSS_SECTIONS): Don't define.
|
||||
(LARGE_SECTIONS): Define.
|
||||
* emulparams/hppa64linux.sh (OTHER_BSS_SECTIONS): Don't define.
|
||||
(LARGE_SECTIONS): Define.
|
||||
|
||||
2005-08-04 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* ldemul.c (ldemul_do_assignments, do_assignments_default): Delete.
|
||||
|
@ -8,7 +8,8 @@ TEMPLATE_NAME=elf32
|
||||
EXTRA_EM_FILE=armelf
|
||||
OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)'
|
||||
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
|
||||
OTHER_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;'
|
||||
OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
|
||||
OTHER_END_SYMBOLS='__end__ = . ;'
|
||||
OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }'
|
||||
OTHER_READONLY_SECTIONS="
|
||||
.ARM.extab ${RELOCATING-0} : { *(.ARM.extab${RELOCATING+* .gnu.linkonce.armextab.*}) }
|
||||
|
@ -13,7 +13,8 @@ GENERATE_PIE_SCRIPT=yes
|
||||
DATA_START_SYMBOLS='__data_start = . ;';
|
||||
OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)'
|
||||
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
|
||||
OTHER_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;'
|
||||
OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
|
||||
OTHER_END_SYMBOLS='__end__ = . ;'
|
||||
OTHER_SECTIONS='.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }'
|
||||
|
||||
TEXT_START_ADDR=0x00008000
|
||||
|
@ -8,7 +8,8 @@ TEMPLATE_NAME=elf32
|
||||
EXTRA_EM_FILE=armelf
|
||||
OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)'
|
||||
OTHER_BSS_SYMBOLS='__bss_start__ = .;'
|
||||
OTHER_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ; __end__ = . ;'
|
||||
OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;'
|
||||
OTHER_END_SYMBOLS='__end__ = . ;'
|
||||
|
||||
DATA_START_SYMBOLS='__data_start = . ;';
|
||||
|
||||
|
@ -42,12 +42,12 @@ OTHER_SDATA_SECTIONS="${RELOCATING+PROVIDE (__Edata = .);}"
|
||||
# address, we can't get to it with OTHER_BSS_SYMBOLS, neither can we
|
||||
# use ADDR(.bss) there. Instead, we use the symbol support for the
|
||||
# end symbol.
|
||||
OTHER_END_SYMBOLS='
|
||||
OTHER_BSS_END_SYMBOLS='
|
||||
PROVIDE (__Ebss = .);
|
||||
PROVIDE (__end = .);
|
||||
__Sbss = ADDR (.bss);
|
||||
PROVIDE (_bss_start = __Sbss);
|
||||
'
|
||||
OTHER_END_SYMBOLS='PROVIDE (__end = .);'
|
||||
|
||||
INIT_START='
|
||||
. = ALIGN(2);
|
||||
@ -90,7 +90,7 @@ CTOR_END='
|
||||
'
|
||||
|
||||
# Also add the other symbols provided for rsim/xsim and elinux.
|
||||
OTHER_END_SYMBOLS='
|
||||
OTHER_SYMBOLS='
|
||||
PROVIDE (__Eall = .);
|
||||
PROVIDE (__Endmem = 0x10000000);
|
||||
PROVIDE (__Stacksize = 0);
|
||||
|
@ -28,10 +28,10 @@ DATA_START_SYMBOLS='PROVIDE (__Sdata = .);'
|
||||
# Smuggle an "OTHER_DATA_END_SYMBOLS" here.
|
||||
OTHER_SDATA_SECTIONS="${RELOCATING+PROVIDE (__Edata = .);}"
|
||||
OTHER_BSS_SYMBOLS='PROVIDE (__Sbss = .);'
|
||||
OTHER_END_SYMBOLS='PROVIDE (__Ebss = .);'
|
||||
OTHER_BSS_END_SYMBOLS='PROVIDE (__Ebss = .);'
|
||||
|
||||
# Also add the other symbols provided for rsim/xsim and elinux.
|
||||
OTHER_END_SYMBOLS='
|
||||
OTHER_SYMBOLS='
|
||||
PROVIDE (__Eall = .);
|
||||
PROVIDE (__Endmem = 0x10000000);
|
||||
PROVIDE (__Stacksize = 0);
|
||||
|
@ -7,4 +7,4 @@ MAXPAGESIZE=256
|
||||
ENTRY=_start
|
||||
EMBEDDED=yes
|
||||
NOP=0x9fa09fa0
|
||||
OTHER_END_SYMBOLS='PROVIDE (__stack = 0x200000);'
|
||||
OTHER_SYMBOLS='PROVIDE (__stack = 0x200000);'
|
||||
|
@ -22,7 +22,7 @@ EMBEDDED=yes
|
||||
NOP=0x0e0e0e0e
|
||||
|
||||
OTHER_BSS_SYMBOLS="__bss_start__ = . ;"
|
||||
OTHER_END_SYMBOLS="__bss_end__ = . ;"
|
||||
OTHER_BSS_END_SYMBOLS="__bss_end__ = . ;"
|
||||
|
||||
# This sets the stack to the top of the simulator memory (2^19 bytes).
|
||||
STACK_ADDR=0x80000
|
||||
|
@ -58,4 +58,4 @@ OTHER_SECTIONS='
|
||||
# EXECUTABLE_SYMBOLS.
|
||||
# By default, put the high end of the stack where the register stack
|
||||
# begins. They grow in opposite directions. */
|
||||
OTHER_END_SYMBOLS="PROVIDE (__Stack_start = 0x6000000000000000);"
|
||||
OTHER_SYMBOLS="PROVIDE (__Stack_start = 0x6000000000000000);"
|
||||
|
@ -12,9 +12,32 @@ TEMPLATE_NAME=elf32
|
||||
GENERATE_SHLIB_SCRIPT=yes
|
||||
GENERATE_PIE_SCRIPT=yes
|
||||
NO_SMALL_DATA=yes
|
||||
LARGE_SECTIONS=yes
|
||||
SEPARATE_GOTPLT=24
|
||||
|
||||
LARGE_SECTIONS="
|
||||
.lbss ${RELOCATING-0} :
|
||||
{
|
||||
*(.dynlbss)
|
||||
*(.lbss${RELOCATING+ .lbss.* .gnu.linkonce.lb.*})
|
||||
*(LARGE_COMMON)
|
||||
}
|
||||
.lrodata ${RELOCATING-0} ${RELOCATING+ALIGN(${MAXPAGESIZE}) + (. & (${MAXPAGESIZE} - 1))} :
|
||||
{
|
||||
*(.lrodata${RELOCATING+ .lrodata.* .gnu.linkonce.lr.*})
|
||||
}
|
||||
.ldata ${RELOCATING-0} ${RELOCATING+ALIGN(${MAXPAGESIZE}) + (. & (${MAXPAGESIZE} - 1))} :
|
||||
{
|
||||
*(.ldata${RELOCATING+ .ldata.* .gnu.linkonce.l.*})
|
||||
${RELOCATING+. = ALIGN(. != 0 ? ${ALIGNMENT} : 1);}
|
||||
}"
|
||||
REL_LARGE="
|
||||
.rel.ldata ${RELOCATING-0} : { *(.rel.ldata${RELOCATING+ .rel.ldata.* .rel.gnu.linkonce.l.*}) }
|
||||
.rela.ldata ${RELOCATING-0} : { *(.rela.ldata${RELOCATING+ .rela.ldata.* .rela.gnu.linkonce.l.*}) }
|
||||
.rel.lbss ${RELOCATING-0} : { *(.rel.lbss${RELOCATING+ .rel.lbss.* .rel.gnu.linkonce.lb.*}) }
|
||||
.rela.lbss ${RELOCATING-0} : { *(.rela.lbss${RELOCATING+ .rela.lbss.* .rela.gnu.linkonce.lb.*}) }
|
||||
.rel.lrodata ${RELOCATING-0} : { *(.rel.lrodata${RELOCATING+ .rel.lrodata.* .rel.gnu.linkonce.lr.*}) }
|
||||
.rela.lrodata ${RELOCATING-0} : { *(.rela.lrodata${RELOCATING+ .rela.lrodata.* .rela.gnu.linkonce.lr.*}) }"
|
||||
|
||||
if [ "x${host}" = "x${target}" ]; then
|
||||
case " $EMULATION_LIBPATH " in
|
||||
*" ${EMULATION_NAME} "*)
|
||||
|
@ -30,12 +30,12 @@ OTHER_READWRITE_SECTIONS="
|
||||
# The PA64 ELF port has two additional bss sections. huge bss and thread bss.
|
||||
# Make sure they end up in the appropriate location. We also have to set
|
||||
# __TLS_SIZE to the size of the thread bss section.
|
||||
OTHER_BSS_SECTIONS="
|
||||
LARGE_SECTIONS="
|
||||
.hbss ${RELOCATING-0} : { *(.hbss) }
|
||||
.tbss ${RELOCATING-0} : { *(.tbss) }
|
||||
"
|
||||
#OTHER_END_SYMBOLS='PROVIDE (__TLS_SIZE = SIZEOF (.tbss));'
|
||||
OTHER_END_SYMBOLS='
|
||||
#OTHER_SYMBOLS='PROVIDE (__TLS_SIZE = SIZEOF (.tbss));'
|
||||
OTHER_SYMBOLS='
|
||||
PROVIDE (__TLS_SIZE = 0);
|
||||
PROVIDE (__TLS_INIT_SIZE = 0);
|
||||
PROVIDE (__TLS_INIT_START = 0);
|
||||
|
@ -9,4 +9,4 @@ MAXPAGESIZE=32
|
||||
EMBEDDED=yes
|
||||
|
||||
# This sets the stack to the top of simulator memory (8MB).
|
||||
OTHER_END_SYMBOLS='PROVIDE (_stack = 0x800000);'
|
||||
OTHER_SYMBOLS='PROVIDE (_stack = 0x800000);'
|
||||
|
@ -21,5 +21,5 @@ FINI_END='KEEP (*(.fini$99));
|
||||
PROVIDE (_etext = .);'
|
||||
|
||||
ETEXT_NAME=etext_unrelocated
|
||||
OTHER_END_SYMBOLS="PROVIDE (_ehdr = ${TEXT_START_ADDR});"
|
||||
OTHER_SYMBOLS="PROVIDE (_ehdr = ${TEXT_START_ADDR});"
|
||||
DATA_END_SYMBOLS=".edata : { PROVIDE (_edata = .); }"
|
||||
|
@ -293,10 +293,10 @@ cat <<EOF
|
||||
.bss section disappears because there are no input sections. */
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
}
|
||||
${OTHER_BSS_SECTIONS}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+PROVIDE (end = .);}
|
||||
${RELOCATING+${DATA_SEGMENT_END}}
|
||||
|
||||
@ -353,7 +353,7 @@ cat <<EOF
|
||||
|
||||
${STACK_ADDR+${STACK}}
|
||||
${OTHER_SECTIONS}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+${OTHER_SYMBOLS}}
|
||||
${RELOCATING+${STACKNOTE}}
|
||||
EOF
|
||||
|
||||
|
@ -14,7 +14,6 @@
|
||||
# (e.g., .PARISC.global)
|
||||
# OTHER_RELRO_SECTIONS - other than .data.rel.ro ...
|
||||
# (e.g. PPC32 .fixup, .got[12])
|
||||
# OTHER_BSS_SECTIONS - other than .bss .sbss ...
|
||||
# OTHER_SECTIONS - at the end
|
||||
# EXECUTABLE_SYMBOLS - symbols that must be defined for an
|
||||
# executable (e.g., _DYNAMIC_LINK)
|
||||
@ -46,7 +45,7 @@
|
||||
# FINI_START, FINI_END - statements just before and just after
|
||||
# combination of .fini sections.
|
||||
# STACK_ADDR - start of a .stack section.
|
||||
# OTHER_END_SYMBOLS - symbols to place right at the end of the script.
|
||||
# OTHER_SYMBOLS - symbols to place right at the end of the script.
|
||||
# ETEXT_NAME - name of a symbol for the end of the text section,
|
||||
# normally etext.
|
||||
# SEPARATE_GOTPLT - if set, .got.plt should be separate output section,
|
||||
@ -166,31 +165,6 @@ if test -z "${SDATA_GOT}"; then
|
||||
SDATA_GOT=" "
|
||||
fi
|
||||
fi
|
||||
if test -n "${LARGE_SECTIONS}"; then
|
||||
LBSS="
|
||||
.lbss ${RELOCATING-0} :
|
||||
{
|
||||
*(.dynlbss)
|
||||
*(.lbss${RELOCATING+ .lbss.* .gnu.linkonce.lb.*})
|
||||
*(LARGE_COMMON)
|
||||
}"
|
||||
LARGE_SECTIONS="
|
||||
.lrodata ${RELOCATING-0} ${RELOCATING+ALIGN(${MAXPAGESIZE}) + (. & (${MAXPAGESIZE} - 1))} :
|
||||
{
|
||||
*(.lrodata${RELOCATING+ .lrodata.* .gnu.linkonce.lr.*})
|
||||
}
|
||||
.ldata ${RELOCATING-0} ${RELOCATING+ALIGN(${MAXPAGESIZE}) + (. & (${MAXPAGESIZE} - 1))} :
|
||||
{
|
||||
*(.ldata${RELOCATING+ .ldata.* .gnu.linkonce.l.*})
|
||||
${RELOCATING+. = ALIGN(. != 0 ? ${ALIGNMENT} : 1);}
|
||||
}"
|
||||
REL_LDATA=".rel.ldata ${RELOCATING-0} : { *(.rel.ldata${RELOCATING+ .rel.ldata.* .rel.gnu.linkonce.l.*}) }
|
||||
.rela.ldata ${RELOCATING-0} : { *(.rela.ldata${RELOCATING+ .rela.ldata.* .rela.gnu.linkonce.l.*}) }"
|
||||
REL_LBSS=".rel.lbss ${RELOCATING-0} : { *(.rel.lbss${RELOCATING+ .rel.lbss.* .rel.gnu.linkonce.lb.*}) }
|
||||
.rela.lbss ${RELOCATING-0} : { *(.rela.lbss${RELOCATING+ .rela.lbss.* .rela.gnu.linkonce.lb.*}) }"
|
||||
REL_LRODATA=".rel.lrodata ${RELOCATING-0} : { *(.rel.lrodata${RELOCATING+ .rel.lrodata.* .rel.gnu.linkonce.lr.*}) }
|
||||
.rela.lrodata ${RELOCATING-0} : { *(.rela.lrodata${RELOCATING+ .rela.lrodata.* .rela.gnu.linkonce.lr.*}) }"
|
||||
fi
|
||||
test -n "$SEPARATE_GOTPLT" && SEPARATE_GOTPLT=" "
|
||||
CTOR=".ctors ${CONSTRUCTING-0} :
|
||||
{
|
||||
@ -308,9 +282,7 @@ eval $COMBRELOCCAT <<EOF
|
||||
${REL_SBSS2}
|
||||
.rel.bss ${RELOCATING-0} : { *(.rel.bss${RELOCATING+ .rel.bss.* .rel.gnu.linkonce.b.*}) }
|
||||
.rela.bss ${RELOCATING-0} : { *(.rela.bss${RELOCATING+ .rela.bss.* .rela.gnu.linkonce.b.*}) }
|
||||
${REL_LDATA}
|
||||
${REL_LBSS}
|
||||
${REL_LRODATA}
|
||||
${REL_LARGE}
|
||||
EOF
|
||||
if [ -n "$COMBRELOC" ]; then
|
||||
cat <<EOF
|
||||
@ -451,8 +423,8 @@ cat <<EOF
|
||||
pad the .data section. */
|
||||
${RELOCATING+. = ALIGN(. != 0 ? ${ALIGNMENT} : 1);}
|
||||
}
|
||||
${LBSS}
|
||||
${OTHER_BSS_SECTIONS}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${LARGE_SECTIONS}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
@ -503,7 +475,7 @@ cat <<EOF
|
||||
|
||||
${STACK_ADDR+${STACK}}
|
||||
${OTHER_SECTIONS}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+${OTHER_SYMBOLS}}
|
||||
${RELOCATING+${STACKNOTE}}
|
||||
}
|
||||
EOF
|
||||
|
@ -8,7 +8,6 @@
|
||||
# OTHER_TEXT_SECTIONS - these get put in .text when relocating
|
||||
# OTHER_READWRITE_SECTIONS - other than .data .bss .ctors .sdata ...
|
||||
# (e.g., .PARISC.global)
|
||||
# OTHER_BSS_SECTIONS - other than .bss .sbss ...
|
||||
# OTHER_SECTIONS - at the end
|
||||
# EXECUTABLE_SYMBOLS - symbols that must be defined for an
|
||||
# executable (e.g., _DYNAMIC_LINK)
|
||||
@ -34,7 +33,7 @@
|
||||
# FINI_START, FINI_END - statements just before and just after
|
||||
# combination of .fini sections.
|
||||
# STACK_ADDR - start of a .stack section.
|
||||
# OTHER_END_SYMBOLS - symbols to place right at the end of the script.
|
||||
# OTHER_SYMBOLS - symbols to place right at the end of the script.
|
||||
#
|
||||
# When adding sections, do note that the names of some sections are used
|
||||
# when specifying the start address of the next.
|
||||
@ -257,10 +256,10 @@ SECTIONS
|
||||
.bss section disappears because there are no input sections. */
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
} :data
|
||||
${OTHER_BSS_SECTIONS}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+PROVIDE (end = .);}
|
||||
${RELOCATING+${DATA_SEGMENT_END}}
|
||||
|
||||
@ -371,7 +370,7 @@ cat <<EOF
|
||||
|
||||
${STACK_ADDR+${STACK}}
|
||||
${OTHER_SECTIONS}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+${OTHER_SYMBOLS}}
|
||||
${RELOCATING+${STACKNOTE}}
|
||||
}
|
||||
EOF
|
||||
|
@ -10,7 +10,6 @@
|
||||
# OTHER_TEXT_SECTIONS - these get put in .text when relocating
|
||||
# OTHER_READWRITE_SECTIONS - other than .data .bss .ctors .sdata ...
|
||||
# (e.g., .PARISC.global)
|
||||
# OTHER_BSS_SECTIONS - other than .bss .sbss ...
|
||||
# OTHER_SECTIONS - at the end
|
||||
# EXECUTABLE_SYMBOLS - symbols that must be defined for an
|
||||
# executable (e.g., _DYNAMIC_LINK)
|
||||
@ -36,7 +35,7 @@
|
||||
# FINI_START, FINI_END - statements just before and just after
|
||||
# combination of .fini sections.
|
||||
# STACK_ADDR - start of a .stack section.
|
||||
# OTHER_END_SYMBOLS - symbols to place right at the end of the script.
|
||||
# OTHER_SYMBOLS - symbols to place right at the end of the script.
|
||||
#
|
||||
# When adding sections, do note that the names of some sections are used
|
||||
# when specifying the start address of the next.
|
||||
@ -298,10 +297,10 @@ cat <<EOF
|
||||
.bss section disappears because there are no input sections. */
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
}
|
||||
${OTHER_BSS_SECTIONS}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+PROVIDE (end = .);}
|
||||
|
||||
/* Stabs debugging sections. */
|
||||
@ -349,6 +348,6 @@ cat <<EOF
|
||||
|
||||
${STACK_ADDR+${STACK}}
|
||||
${OTHER_SECTIONS}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+${OTHER_SYMBOLS}}
|
||||
}
|
||||
EOF
|
||||
|
@ -14,7 +14,6 @@
|
||||
# (e.g., .PARISC.global)
|
||||
# OTHER_RELRO_SECTIONS - other than .data.rel.ro ...
|
||||
# (e.g. PPC32 .fixup, .got[12])
|
||||
# OTHER_BSS_SECTIONS - other than .bss .sbss ...
|
||||
# OTHER_SECTIONS - at the end
|
||||
# EXECUTABLE_SYMBOLS - symbols that must be defined for an
|
||||
# executable (e.g., _DYNAMIC_LINK)
|
||||
@ -46,7 +45,7 @@
|
||||
# FINI_START, FINI_END - statements just before and just after
|
||||
# combination of .fini sections.
|
||||
# STACK_ADDR - start of a .stack section.
|
||||
# OTHER_END_SYMBOLS - symbols to place right at the end of the script.
|
||||
# OTHER_SYMBOLS - symbols to place right at the end of the script.
|
||||
# ETEXT_NAME - name of a symbol for the end of the text section,
|
||||
# normally etext.
|
||||
# SEPARATE_GOTPLT - if set, .got.plt should be separate output section,
|
||||
@ -404,10 +403,10 @@ cat <<EOF
|
||||
.bss section disappears because there are no input sections. */
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
}
|
||||
${OTHER_BSS_SECTIONS}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+PROVIDE (end = .);}
|
||||
${RELOCATING+${DATA_SEGMENT_END}}
|
||||
|
||||
@ -454,7 +453,7 @@ cat <<EOF
|
||||
|
||||
${STACK_ADDR+${STACK}}
|
||||
${OTHER_SECTIONS}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+${OTHER_SYMBOLS}}
|
||||
${RELOCATING+${STACKNOTE}}
|
||||
}
|
||||
EOF
|
||||
|
@ -8,7 +8,6 @@
|
||||
# OTHER_TEXT_SECTIONS - these get put in .text when relocating
|
||||
# OTHER_READWRITE_SECTIONS - other than .data .bss .ctors .sdata ...
|
||||
# (e.g., .PARISC.global)
|
||||
# OTHER_BSS_SECTIONS - other than .bss .sbss ...
|
||||
# OTHER_SECTIONS - at the end
|
||||
# EXECUTABLE_SYMBOLS - symbols that must be defined for an
|
||||
# executable (e.g., _DYNAMIC_LINK)
|
||||
@ -388,10 +387,10 @@ cat <<EOF
|
||||
.bss section disappears because there are no input sections. */
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
}
|
||||
${RELOCATING+${OTHER_BSS_SECTIONS}}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+PROVIDE (end = .);}
|
||||
|
||||
/* Stabs debugging sections. */
|
||||
|
@ -7,7 +7,6 @@
|
||||
# OTHER_TEXT_SECTIONS - these get put in .text when relocating
|
||||
# OTHER_READWRITE_SECTIONS - other than .data .bss .ctors .sdata ...
|
||||
# (e.g., .PARISC.global)
|
||||
# OTHER_BSS_SECTIONS - other than .bss .sbss ...
|
||||
# OTHER_SECTIONS - at the end
|
||||
# EXECUTABLE_SYMBOLS - symbols that must be defined for an
|
||||
# executable (e.g., _DYNAMIC_LINK)
|
||||
@ -144,11 +143,11 @@ SECTIONS
|
||||
.bss section disappears because there are no input sections. */
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
} > RAM
|
||||
${RELOCATING+${OTHER_BSS_SECTIONS}}
|
||||
${RELOCATING+${OTHER_BSS_END_SYMBOLS}}
|
||||
${RELOCATING+. = ALIGN(${ALIGNMENT});}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+_end = .;}
|
||||
${RELOCATING+__stack = .;}
|
||||
${RELOCATING+${OTHER_END_SYMBOLS}}
|
||||
${RELOCATING+PROVIDE (end = .);}
|
||||
|
||||
/* Read-only sections in ROM. */
|
||||
|
Loading…
x
Reference in New Issue
Block a user