diff options
author | Alan Modra <amodra@gmail.com> | 2017-10-12 21:28:30 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2017-10-12 23:30:43 +1030 |
commit | 6c19b93bcd0d136f7be4d1e1e3f2e8d7b5917009 (patch) | |
tree | 1bed658f45d0a3648437c12080f8aec2d11278f4 /ld/scripttempl | |
parent | 1d75a8e26e6def4f492c84a5f678e41ddebda799 (diff) | |
download | gdb-6c19b93bcd0d136f7be4d1e1e3f2e8d7b5917009.zip gdb-6c19b93bcd0d136f7be4d1e1e3f2e8d7b5917009.tar.gz gdb-6c19b93bcd0d136f7be4d1e1e3f2e8d7b5917009.tar.bz2 |
ld whitespace fixes
* pe-dll.c: Formatting, whitespace fixes.
* NEWS: Whitespace fixes.
* configure.ac: Likewise.
* configure.tgt: Likewise.
* deffilep.y: Likewise.
* genscripts.sh: Likewise.
* ld.texinfo: Likewise.
* ldgram.y: Likewise.
* ldlang.c: Likewise.
* ldlex.l: Likewise.
* lexsup.c: Likewise.
* plugin.c: Likewise.
* emulparams/arc-endianness.sh: Likewise.
* emulparams/elf32_x86_64.sh: Likewise.
* emulparams/elf64mmix.sh: Likewise.
* emulparams/elf_x86_64.sh: Likewise.
* emulparams/h8300elf.sh: Likewise.
* emulparams/h8300elf_linux.sh: Likewise.
* emulparams/vxworks.sh: Likewise.
* emultempl/aarch64elf.em: Likewise.
* emultempl/aix.em: Likewise.
* emultempl/armelf.em: Likewise.
* emultempl/avrelf.em: Likewise.
* emultempl/beos.em: Likewise.
* emultempl/hppaelf.em: Likewise.
* emultempl/m68kcoff.em: Likewise.
* emultempl/m68kelf.em: Likewise.
* emultempl/metagelf.em: Likewise.
* emultempl/msp430.em: Likewise.
* emultempl/nds32elf.em: Likewise.
* emultempl/pe.em: Likewise.
* emultempl/pep.em: Likewise.
* emultempl/ppc64elf.em: Likewise.
* emultempl/sh64elf.em: Likewise.
* emultempl/spu_ovl.S: Likewise.
* emultempl/spuelf.em: Likewise.
* emultempl/tic6xdsbt.em: Likewise.
* emultempl/ticoff.em: Likewise.
* emultempl/vms.em: Likewise.
* po/Make-in: Likewise.
* scripttempl/DWARF.sc: Likewise.
* scripttempl/aix.sc: Likewise.
* scripttempl/alpha.sc: Likewise.
* scripttempl/alphavms.sc: Likewise.
* scripttempl/aout.sc: Likewise.
* scripttempl/arclinux.sc: Likewise.
* scripttempl/armaout.sc: Likewise.
* scripttempl/armbpabi.sc: Likewise.
* scripttempl/armcoff.sc: Likewise.
* scripttempl/avr.sc: Likewise.
* scripttempl/crisaout.sc: Likewise.
* scripttempl/delta68.sc: Likewise.
* scripttempl/dlx.sc: Likewise.
* scripttempl/elf.sc: Likewise.
* scripttempl/elf32cr16.sc: Likewise.
* scripttempl/elf32cr16c.sc: Likewise.
* scripttempl/elf32crx.sc: Likewise.
* scripttempl/elf32msp430.sc: Likewise.
* scripttempl/elf32msp430_3.sc: Likewise.
* scripttempl/elf32sh-symbian.sc: Likewise.
* scripttempl/elf32xc16x.sc: Likewise.
* scripttempl/elf32xc16xl.sc: Likewise.
* scripttempl/elf32xc16xs.sc: Likewise.
* scripttempl/elf64hppa.sc: Likewise.
* scripttempl/elf_chaos.sc: Likewise.
* scripttempl/elfarc.sc: Likewise.
* scripttempl/elfarcv2.sc: Likewise.
* scripttempl/elfd10v.sc: Likewise.
* scripttempl/elfd30v.sc: Likewise.
* scripttempl/elfi370.sc: Likewise.
* scripttempl/elfm68hc11.sc: Likewise.
* scripttempl/elfm68hc12.sc: Likewise.
* scripttempl/elfmicroblaze.sc: Likewise.
* scripttempl/elfxgate.sc: Likewise.
* scripttempl/elfxtensa.sc: Likewise.
* scripttempl/epiphany_4x4.sc: Likewise.
* scripttempl/epocpe.sc: Likewise.
* scripttempl/h8300.sc: Likewise.
* scripttempl/h8300h.sc: Likewise.
* scripttempl/h8300hn.sc: Likewise.
* scripttempl/h8300s.sc: Likewise.
* scripttempl/h8300sn.sc: Likewise.
* scripttempl/h8300sx.sc: Likewise.
* scripttempl/h8300sxn.sc: Likewise.
* scripttempl/h8500.sc: Likewise.
* scripttempl/h8500b.sc: Likewise.
* scripttempl/h8500c.sc: Likewise.
* scripttempl/h8500m.sc: Likewise.
* scripttempl/h8500s.sc: Likewise.
* scripttempl/hppaelf.sc: Likewise.
* scripttempl/i386beos.sc: Likewise.
* scripttempl/i386coff.sc: Likewise.
* scripttempl/i386go32.sc: Likewise.
* scripttempl/i386msdos.sc: Likewise.
* scripttempl/i860coff.sc: Likewise.
* scripttempl/i960.sc: Likewise.
* scripttempl/ia64vms.sc: Likewise.
* scripttempl/ip2k.sc: Likewise.
* scripttempl/iq2000.sc: Likewise.
* scripttempl/m68kaux.sc: Likewise.
* scripttempl/m68kcoff.sc: Likewise.
* scripttempl/m88kbcs.sc: Likewise.
* scripttempl/mcorepe.sc: Likewise.
* scripttempl/mep.sc: Likewise.
* scripttempl/mips.sc: Likewise.
* scripttempl/mipsbsd.sc: Likewise.
* scripttempl/mmo.sc: Likewise.
* scripttempl/moxie.sc: Likewise.
* scripttempl/nds32elf.sc: Likewise.
* scripttempl/nw.sc: Likewise.
* scripttempl/pe.sc: Likewise.
* scripttempl/pep.sc: Likewise.
* scripttempl/pj.sc: Likewise.
* scripttempl/ppcpe.sc: Likewise.
* scripttempl/psos.sc: Likewise.
* scripttempl/riscix.sc: Likewise.
* scripttempl/sh.sc: Likewise.
* scripttempl/sparccoff.sc: Likewise.
* scripttempl/st2000.sc: Likewise.
* scripttempl/tic30aout.sc: Likewise.
* scripttempl/tic30coff.sc: Likewise.
* scripttempl/tic4xcoff.sc: Likewise.
* scripttempl/tic54xcoff.sc: Likewise.
* scripttempl/tic80coff.sc: Likewise.
* scripttempl/v850.sc: Likewise.
* scripttempl/v850_rh850.sc: Likewise.
* scripttempl/vanilla.sc: Likewise.
* scripttempl/visium.sc: Likewise.
* scripttempl/w65.sc: Likewise.
* scripttempl/xstormy16.sc: Likewise.
* scripttempl/z80.sc: Likewise.
* scripttempl/z8000.sc: Likewise.
* configure: Regenerate.
Diffstat (limited to 'ld/scripttempl')
92 files changed, 642 insertions, 645 deletions
diff --git a/ld/scripttempl/DWARF.sc b/ld/scripttempl/DWARF.sc index 0f23251..7f67733 100644 --- a/ld/scripttempl/DWARF.sc +++ b/ld/scripttempl/DWARF.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/aix.sc b/ld/scripttempl/aix.sc index 01a0104..c84b16a 100644 --- a/ld/scripttempl/aix.sc +++ b/ld/scripttempl/aix.sc @@ -4,7 +4,7 @@ # specified by the -H option. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -67,7 +67,7 @@ SECTIONS .loader : { *(.loader) } - + .debug : { *(.debug) } diff --git a/ld/scripttempl/alpha.sc b/ld/scripttempl/alpha.sc index 21dab54..188ad6d 100644 --- a/ld/scripttempl/alpha.sc +++ b/ld/scripttempl/alpha.sc @@ -4,7 +4,7 @@ # defaults are appropriate for an Alpha running OSF/1. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/alphavms.sc b/ld/scripttempl/alphavms.sc index 81d6f38..fac087f 100644 --- a/ld/scripttempl/alphavms.sc +++ b/ld/scripttempl/alphavms.sc @@ -2,7 +2,7 @@ # Tristan Gingold <gingold@adacore.com>. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/aout.sc b/ld/scripttempl/aout.sc index 896541e..f678d00 100644 --- a/ld/scripttempl/aout.sc +++ b/ld/scripttempl/aout.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/arclinux.sc b/ld/scripttempl/arclinux.sc index e692f13..82a7937 100644 --- a/ld/scripttempl/arclinux.sc +++ b/ld/scripttempl/arclinux.sc @@ -54,9 +54,9 @@ # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # 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, @@ -427,13 +427,13 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;/__rela_iplt_/d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;/__rela_iplt_/d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;/__rel_iplt_/d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;/__rel_iplt_/d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } EOF @@ -463,10 +463,10 @@ emit_dyn() cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d;/^[ ]*\.rela\./d;/__rela_iplt_/d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d;/^[ ]*\.rela\./d;/__rela_iplt_/d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d;/^[ ]*\.rel\./d;/__rel_iplt_/d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d;/^[ ]*\.rel\./d;/__rel_iplt_/d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ diff --git a/ld/scripttempl/armaout.sc b/ld/scripttempl/armaout.sc index ee2bdf7..323dbc0 100644 --- a/ld/scripttempl/armaout.sc +++ b/ld/scripttempl/armaout.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/armbpabi.sc b/ld/scripttempl/armbpabi.sc index dee1028..2b9a3da 100644 --- a/ld/scripttempl/armbpabi.sc +++ b/ld/scripttempl/armbpabi.sc @@ -4,7 +4,7 @@ # that apply; only BPABI-specific variables will be noted here. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -52,7 +52,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} *(.sdata${RELOCATING+ .sdata.* .gnu.linkonce.s.*}) @@ -88,7 +88,7 @@ FINI_ARRAY=".fini_array ${RELOCATING-0} : KEEP (*(.fini_array)) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (__fini_array_end = .);}} }" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -166,23 +166,23 @@ ${RELOCATING- /* For some reason, the Solaris linker makes bad executables at non-zero addresses. Could be a Solaris ld bug, could be a GNU ld bug. But for now assigning the zero vmas works. */} -/* ARM's proprietary toolchain generate these symbols to match the start +/* ARM's proprietary toolchain generate these symbols to match the start and end of particular sections of the image. SymbianOS uses these - symbols. We provide them for compatibility with ARM's toolchains. - These symbols should be bound locally; each shared object may define - its own version of these symbols. */ - + symbols. We provide them for compatibility with ARM's toolchains. + These symbols should be bound locally; each shared object may define + its own version of these symbols. */ + VERSION -{ +{ /* Give these a dummy version to work around linker lameness. The name used shouldn't matter as these are all local symbols. */ - __GNU { - local: + __GNU { + local: Image\$\$ER_RO\$\$Base; Image\$\$ER_RO\$\$Limit; SHT\$\$INIT_ARRAY\$\$Base; SHT\$\$INIT_ARRAY\$\$Limit; - .ARM.exidx\$\$Base; + .ARM.exidx\$\$Base; .ARM.exidx\$\$Limit; }; } @@ -203,8 +203,8 @@ SECTIONS EOF cat <<EOF - .init ${RELOCATING-0} : - { + .init ${RELOCATING-0} : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} @@ -393,13 +393,13 @@ cat <<EOF .rel.dyn 0 : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC cat <<EOF } .rela.dyn 0 : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC cat <<EOF } EOF diff --git a/ld/scripttempl/armcoff.sc b/ld/scripttempl/armcoff.sc index eb26519..c87ebf7 100644 --- a/ld/scripttempl/armcoff.sc +++ b/ld/scripttempl/armcoff.sc @@ -2,7 +2,7 @@ # Based on i386coff.sc by Ian Taylor <ian@cygnus.com>. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -49,9 +49,9 @@ SECTIONS *(.glue_7t) *(.glue_7) *(.rdata) - ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; + ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; LONG (-1); *(.ctors); *(.ctor); LONG (0); } - ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; + ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; LONG (-1); *(.dtors); *(.dtor); LONG (0); } *(.fini) ${RELOCATING+ etext = .;} @@ -60,13 +60,13 @@ SECTIONS .data ${RELOCATING+${DATA_ADDR-0x40000 + (ALIGN(0x8) & 0xfffc0fff)}} : { ${RELOCATING+ __data_start__ = . ;} *(.data*) - + ${RELOCATING+*(.gcc_exc*)} ${RELOCATING+___EH_FRAME_BEGIN__ = . ;} ${RELOCATING+*(.eh_fram*)} ${RELOCATING+___EH_FRAME_END__ = . ;} ${RELOCATING+LONG(0);} - + ${RELOCATING+ __data_end__ = . ;} ${RELOCATING+ edata = .;} ${RELOCATING+ _edata = .;} @@ -74,7 +74,7 @@ SECTIONS ${CONSTRUCTING+${RELOCATING-$CTOR}} ${CONSTRUCTING+${RELOCATING-$DTOR}} .bss ${RELOCATING+ ALIGN(0x8)} : - { + { ${RELOCATING+ __bss_start__ = . ;} *(.bss) *(COMMON) @@ -85,7 +85,7 @@ SECTIONS ${RELOCATING+ _end = .;} ${RELOCATING+ __end__ = .;} - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/avr.sc b/ld/scripttempl/avr.sc index 7a146b7..eb4b045 100644 --- a/ld/scripttempl/avr.sc +++ b/ld/scripttempl/avr.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -129,7 +129,7 @@ SECTIONS ${RELOCATING+ *libc.a:*(.progmem.data)} ${RELOCATING+ *(.progmem.*)} - + ${RELOCATING+. = ALIGN(2);} /* For code that needs to reside in the lower 128k progmem. */ @@ -331,7 +331,7 @@ cat <<EOF .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } - .comment 0 : { *(.comment) } + .comment 0 : { *(.comment) } .note.gnu.build-id : { *(.note.gnu.build-id) } EOF diff --git a/ld/scripttempl/crisaout.sc b/ld/scripttempl/crisaout.sc index 4b6179a..606e9ca 100644 --- a/ld/scripttempl/crisaout.sc +++ b/ld/scripttempl/crisaout.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -22,7 +22,7 @@ SECTIONS ${CONSTRUCTING+ __Stext = .;} ${RELOCATING+*(.startup)} *(.text) - ${CONSTRUCTING+__start = DEFINED(__start) ? __start : + ${CONSTRUCTING+__start = DEFINED(__start) ? __start : DEFINED(_start) ? _start : DEFINED(start) ? start : DEFINED(.startup) ? .startup + 2 : 2;} diff --git a/ld/scripttempl/delta68.sc b/ld/scripttempl/delta68.sc index b126d64..82c40e6 100644 --- a/ld/scripttempl/delta68.sc +++ b/ld/scripttempl/delta68.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -45,7 +45,7 @@ SECTIONS ${RELOCATING+ __.data.end = .}; } .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : - { + { ${RELOCATING+ __.bss.start = .}; *(.bss) *(COMMON) diff --git a/ld/scripttempl/dlx.sc b/ld/scripttempl/dlx.sc index 8ba18f5..67e3a27 100644 --- a/ld/scripttempl/dlx.sc +++ b/ld/scripttempl/dlx.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/elf.sc b/ld/scripttempl/elf.sc index d9138bc..c0845c5 100644 --- a/ld/scripttempl/elf.sc +++ b/ld/scripttempl/elf.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -54,9 +54,9 @@ # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # 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, @@ -429,13 +429,13 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;/__rela_iplt_/d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;/__rela_iplt_/d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;/__rel_iplt_/d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;/__rel_iplt_/d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } EOF @@ -465,10 +465,10 @@ emit_dyn() cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d;/^[ ]*\.rela\./d;/__rela_iplt_/d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d;/^[ ]*\.rela\./d;/__rela_iplt_/d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d;/^[ ]*\.rel\./d;/__rel_iplt_/d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d;/^[ ]*\.rel\./d;/__rel_iplt_/d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ diff --git a/ld/scripttempl/elf32cr16.sc b/ld/scripttempl/elf32cr16.sc index 247d8de..821ba15 100644 --- a/ld/scripttempl/elf32cr16.sc +++ b/ld/scripttempl/elf32cr16.sc @@ -1,7 +1,7 @@ # Linker Script for National Semiconductor's CR16-ELF32. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -28,8 +28,8 @@ ${RELOCATING+ENTRY(${ENTRY})} /* Define memory regions. */ MEMORY { - rom : ORIGIN = 0x2, LENGTH = 3M - ram : ORIGIN = 4M, LENGTH = 10M + rom : ORIGIN = 0x2, LENGTH = 3M + ram : ORIGIN = 4M, LENGTH = 10M } /* Many sections come in three flavours. There is the 'real' section, @@ -50,25 +50,25 @@ MEMORY SECTIONS { .init : - { - __INIT_START = .; + { + __INIT_START = .; KEEP (*(.init)) - __INIT_END = .; + __INIT_END = .; } > rom .fini : - { - __FINI_START = .; + { + __FINI_START = .; KEEP (*(.fini)) - __FINI_END = .; + __FINI_END = .; } > rom .jcr : - { + { KEEP (*(.jcr)) } > rom - .text : + .text : { __TEXT_START = .; *(.text) *(.text.*) *(.gnu.linkonce.t.*) @@ -82,9 +82,9 @@ SECTIONS __RDATA_END = .; } > rom - .ctor ALIGN(4) : - { - __CTOR_START = .; + .ctor ALIGN(4) : + { + __CTOR_START = .; /* The compiler uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it @@ -105,17 +105,17 @@ SECTIONS KEEP (*(EXCLUDE_FILE (*crtend*.o) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) - __CTOR_END = .; + __CTOR_END = .; } > rom - .dtor ALIGN(4) : - { - __DTOR_START = .; + .dtor ALIGN(4) : + { + __DTOR_START = .; KEEP (*crtbegin*.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend*.o) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) - __DTOR_END = .; + __DTOR_END = .; } > rom .data : diff --git a/ld/scripttempl/elf32cr16c.sc b/ld/scripttempl/elf32cr16c.sc index d9d8840..b4c4335 100644 --- a/ld/scripttempl/elf32cr16c.sc +++ b/ld/scripttempl/elf32cr16c.sc @@ -1,7 +1,7 @@ # Linker Script for National Semiconductor's CR16C-ELF32. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -26,8 +26,8 @@ MEMORY { near_rom : ORIGIN = 0x4, LENGTH = 512K - 4 near_ram : ORIGIN = 512K, LENGTH = 512K - 64K - rom : ORIGIN = 1M, LENGTH = 3M - ram : ORIGIN = 4M, LENGTH = 10M + rom : ORIGIN = 1M, LENGTH = 3M + ram : ORIGIN = 4M, LENGTH = 10M } SECTIONS @@ -38,7 +38,7 @@ SECTIONS there. The alignment to 4 bytes is compatible for both the CR16C bus width (2 bytes) and CR16CPlus bus width (4 bytes). */ - .text : { __TEXT_START = .; *(.text) __TEXT_END = .; } > rom + .text : { __TEXT_START = .; *(.text) __TEXT_END = .; } > rom .rdata : { __RDATA_START = .; *(.rdata_4) *(.rdata_2) *(.rdata_1) __RDATA_END = .; } > near_rom .ctor ALIGN(4) : { __CTOR_LIST = .; *(.ctors) __CTOR_END = .; } > near_rom .dtor ALIGN(4) : { __DTOR_LIST = .; *(.dtors) __DTOR_END = .; } > near_rom diff --git a/ld/scripttempl/elf32crx.sc b/ld/scripttempl/elf32crx.sc index 0eca32d..3cc45c7 100644 --- a/ld/scripttempl/elf32crx.sc +++ b/ld/scripttempl/elf32crx.sc @@ -1,7 +1,7 @@ # Linker Script for National Semiconductor's CRX-ELF32. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -30,8 +30,8 @@ ${RELOCATING+ENTRY(${ENTRY})} /* Define memory regions. */ MEMORY { - rom : ORIGIN = 0x2, LENGTH = 3M - ram : ORIGIN = 4M, LENGTH = 10M + rom : ORIGIN = 0x2, LENGTH = 3M + ram : ORIGIN = 4M, LENGTH = 10M } /* Many sections come in three flavours. There is the 'real' section, @@ -52,25 +52,25 @@ MEMORY SECTIONS { .init : - { - __INIT_START = .; + { + __INIT_START = .; KEEP (*(.init)) - __INIT_END = .; + __INIT_END = .; } > rom .fini : - { - __FINI_START = .; + { + __FINI_START = .; KEEP (*(.fini)) - __FINI_END = .; + __FINI_END = .; } > rom .jcr : - { + { KEEP (*(.jcr)) } > rom - .text : + .text : { __TEXT_START = .; *(.text) *(.text.*) *(.gnu.linkonce.t.*) @@ -84,9 +84,9 @@ SECTIONS __RDATA_END = .; } > rom - .ctor ALIGN(4) : - { - __CTOR_START = .; + .ctor ALIGN(4) : + { + __CTOR_START = .; /* The compiler uses crtbegin.o to find the start of the constructors, so we make sure it is first. Because this is a wildcard, it @@ -99,7 +99,7 @@ SECTIONS KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin?.o(.ctors)) - + /* We don't want to include the .ctor section from the crtend.o file until after the sorted ctors. The .ctor section from the crtend file contains the @@ -108,18 +108,18 @@ SECTIONS KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o) .ctors)) KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) - __CTOR_END = .; + __CTOR_END = .; } > rom - .dtor ALIGN(4) : - { - __DTOR_START = .; + .dtor ALIGN(4) : + { + __DTOR_START = .; KEEP (*crtbegin.o(.dtors)) KEEP (*crtbegin?.o(.dtors)) KEEP (*(EXCLUDE_FILE (*crtend.o *crtend?.o) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) - __DTOR_END = .; + __DTOR_END = .; } > rom .data : diff --git a/ld/scripttempl/elf32msp430.sc b/ld/scripttempl/elf32msp430.sc index 7ba02d9..2fed94a 100644 --- a/ld/scripttempl/elf32msp430.sc +++ b/ld/scripttempl/elf32msp430.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -7,8 +7,8 @@ HEAP_SECTION_MSP430=" " HEAP_MEMORY_MSP430=" " -if test ${GOT_HEAP_MSP-0} -ne 0 -then +if test ${GOT_HEAP_MSP-0} -ne 0 +then HEAP_SECTION_MSP430=".heap ${RELOCATING-0} : { ${RELOCATING+ PROVIDE (__heap_data_start = .) ; } @@ -18,7 +18,7 @@ HEAP_SECTION_MSP430=".heap ${RELOCATING-0} : ${RELOCATING+ PROVIDE (__heap_bottom = .) ; } ${RELOCATING+ PROVIDE (__heap_top = ${HEAP_START} + ${HEAP_LENGTH}) ; } } ${RELOCATING+ > heap}" -HEAP_MEMORY_MSP430="heap(rwx) : ORIGIN = $HEAP_START, LENGTH = $HEAP_LENGTH" +HEAP_MEMORY_MSP430="heap(rwx) : ORIGIN = $HEAP_START, LENGTH = $HEAP_LENGTH" fi @@ -34,9 +34,9 @@ OUTPUT_ARCH(${ARCH}) MEMORY { - text (rx) : ORIGIN = $ROM_START, LENGTH = $ROM_SIZE - data (rwx) : ORIGIN = $RAM_START, LENGTH = $RAM_SIZE - vectors (rw) : ORIGIN = 0xffe0, LENGTH = 0x20 + text (rx) : ORIGIN = $ROM_START, LENGTH = $ROM_SIZE + data (rwx) : ORIGIN = $RAM_START, LENGTH = $RAM_SIZE + vectors (rw) : ORIGIN = 0xffe0, LENGTH = 0x20 bootloader(rx) : ORIGIN = 0x0c00, LENGTH = 1K infomem(rx) : ORIGIN = 0x1000, LENGTH = 256 infomemnobits(rx) : ORIGIN = 0x1000, LENGTH = 256 @@ -53,7 +53,7 @@ SECTIONS ${RELOCATING+. = ALIGN(2);} *(.bootloader.*) } ${RELOCATING+ > bootloader} - + /* Information memory. */ .infomem ${RELOCATING-0} : { @@ -270,7 +270,7 @@ SECTIONS __romdatastart = LOADADDR(.data); __romdatacopysize = SIZEOF(.data); - + .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : { ${RELOCATING+. = ALIGN(2);} @@ -304,9 +304,9 @@ SECTIONS /* Stabs for profiling information*/ .profiler 0 : { *(.profiler) } - + /* Stabs debugging sections. */ - .stab 0 : { *(.stab) } + .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } diff --git a/ld/scripttempl/elf32msp430_3.sc b/ld/scripttempl/elf32msp430_3.sc index 3a02c7e..7849b9b 100644 --- a/ld/scripttempl/elf32msp430_3.sc +++ b/ld/scripttempl/elf32msp430_3.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -17,7 +17,7 @@ OUTPUT_ARCH(${ARCH}) MEMORY { text (rx) : ORIGIN = $ROM_START, LENGTH = $ROM_SIZE - data (rwx) : ORIGIN = $RAM_START, LENGTH = $RAM_SIZE + data (rwx) : ORIGIN = $RAM_START, LENGTH = $RAM_SIZE vectors (rw) : ORIGIN = 0xffe0, LENGTH = 0x20 } @@ -137,7 +137,7 @@ SECTIONS } ${RELOCATING+ > text} .data ${RELOCATING-0} : - { + { ${RELOCATING+ PROVIDE (__data_start = .) ; } ${RELOCATING+. = ALIGN(2);} *(.data) @@ -146,10 +146,10 @@ SECTIONS ${RELOCATING+. = ALIGN(2);} ${RELOCATING+ _edata = . ; } } ${RELOCATING+ > data ${RELOCATING+AT> text}} - + __romdatastart = LOADADDR(.data); __romdatacopysize = SIZEOF(.data); - + .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : { ${RELOCATING+. = ALIGN(2);} @@ -193,14 +193,14 @@ SECTIONS } /* Stabs debugging sections. */ - .stab 0 : { *(.stab) } + .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } - + EOF . $srcdir/scripttempl/DWARF.sc diff --git a/ld/scripttempl/elf32sh-symbian.sc b/ld/scripttempl/elf32sh-symbian.sc index b44b643..9a7d5d3 100644 --- a/ld/scripttempl/elf32sh-symbian.sc +++ b/ld/scripttempl/elf32sh-symbian.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -29,15 +29,15 @@ # DATA_PLT - .plt should be in data segment, not text segment. # BSS_PLT - .plt should be in bss segment # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # OTHER_SYMBOLS - symbols to place right at the end of the script. # @@ -104,7 +104,7 @@ FINI_ARRAY=".fini_array ${RELOCATING-0} : KEEP (*(.fini_array)) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (__fini_array_end = .);}} }" -CTOR=".ctors ALIGN(4) : +CTOR=".ctors ALIGN(4) : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -191,11 +191,11 @@ SECTIONS ${CREATE_SHLIB+${RELOCATING+. = ${SHLIB_TEXT_START_ADDR:-0};}} ${CREATE_PIE+${RELOCATING+. = ${SHLIB_TEXT_START_ADDR:-0};}} ${CREATE_SHLIB-${INTERP}} - + ${INITIAL_READONLY_SECTIONS} - .init ALIGN(4) : - { + .init ALIGN(4) : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} @@ -209,24 +209,24 @@ SECTIONS *(.gnu.warning) ${RELOCATING+${OTHER_TEXT_SECTIONS}} } =${NOP-0} - + ${RELOCATING+${CTOR}} ${RELOCATING+${DTOR}} - + .fini ALIGN(4) : { ${RELOCATING+${FINI_START}} KEEP (*(.fini)) ${RELOCATING+${FINI_END}} } =${NOP-0} - + ${RELOCATING+PROVIDE (__etext = .);} ${RELOCATING+PROVIDE (_etext = .);} ${RELOCATING+PROVIDE (etext = .);} - + ${WRITABLE_RODATA-${RODATA}} .rodata1 ALIGN(4) : { *(.rodata1) } - + ExportTable ALIGN(4) : { KEEP (*(ExportTable)) } .eh_frame_hdr ALIGN(4) : { *(.eh_frame_hdr) } :text @@ -252,7 +252,7 @@ SECTIONS *(.data${RELOCATING+ .data.* .gnu.linkonce.d.*}) ${CONSTRUCTING+SORT(CONSTRUCTORS)} } :data - + .data1 ALIGN(4) : { *(.data1) } :data .tdata ALIGN(4) : { *(.tdata${RELOCATING+ .tdata.* .gnu.linkonce.td.*}) } :data .tbss ALIGN(4) : { *(.tbss${RELOCATING+ .tbss.* .gnu.linkonce.tb.*})${RELOCATING+ *(.tcommon)} } :data @@ -331,13 +331,13 @@ cat <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC cat <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC cat <<EOF } EOF diff --git a/ld/scripttempl/elf32xc16x.sc b/ld/scripttempl/elf32xc16x.sc index da439b4..03500b7 100644 --- a/ld/scripttempl/elf32xc16x.sc +++ b/ld/scripttempl/elf32xc16x.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -16,37 +16,37 @@ OUTPUT_ARCH(${ARCH}) ${RELOCATING+ENTRY ("_start")} MEMORY { - - vectarea : o =0x00000, l = 0x0300 - + + vectarea : o =0x00000, l = 0x0300 + introm : o = 0x00400, l = 0x16000 /* The stack starts at the top of main ram. */ - + dram : o = 0x8000 , l = 0xffff /* At the very top of the address space is the 8-bit area. */ - - ldata : o =0x4000 ,l = 0x0200 + + ldata : o =0x4000 ,l = 0x0200 } SECTIONS { .init : - { - *(.init) - } ${RELOCATING+ >introm} - + { + *(.init) + } ${RELOCATING+ >introm} + .text : { - *(.rodata) + *(.rodata) *(.text.*) *(.text) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > introm} .data : { *(.data) *(.data.*) - + ${RELOCATING+ _edata = . ; } } ${RELOCATING+ > dram} @@ -58,16 +58,16 @@ SECTIONS ${RELOCATING+ _end = . ; } } ${RELOCATING+ > dram} - .ldata : - { - *(.ldata) - } ${RELOCATING+ > ldata} +.ldata : + { + *(.ldata) + } ${RELOCATING+ > ldata} - - .vects : - { - *(.vects) - } ${RELOCATING+ > vectarea} + +.vects : + { + *(.vects) + } ${RELOCATING+ > vectarea} } EOF diff --git a/ld/scripttempl/elf32xc16xl.sc b/ld/scripttempl/elf32xc16xl.sc index bd81e9d..2c44f96 100644 --- a/ld/scripttempl/elf32xc16xl.sc +++ b/ld/scripttempl/elf32xc16xl.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -16,39 +16,39 @@ OUTPUT_ARCH(${ARCH}) ${RELOCATING+ENTRY ("_start")} MEMORY { - vectarea : o =0xc00000, l = 0x0300 - + vectarea : o =0xc00000, l = 0x0300 + introm : o = 0xc00300, l = 0x16000 /* The stack starts at the top of main ram. */ - + dram : o = 0x8000 , l = 0xffff /* At the very top of the address space is the 8-bit area. */ - - ldata : o =0x4000 ,l = 0x0200 + + ldata : o =0x4000 ,l = 0x0200 } SECTIONS { /*.vects : - { - *(.vects) - } ${RELOCATING+ > vectarea} */ + { + *(.vects) + } ${RELOCATING+ > vectarea} */ .init : - { - *(.init) - } ${RELOCATING+ >introm} - + { + *(.init) + } ${RELOCATING+ >introm} + .text : { - *(.rodata) + *(.rodata) *(.text.*) *(.text) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > introm} .data : { *(.data) *(.data.*) - + ${RELOCATING+ _edata = . ; } } ${RELOCATING+ > dram} @@ -60,17 +60,14 @@ SECTIONS ${RELOCATING+ _end = . ; } } ${RELOCATING+ > dram} - .ldata : - { - *(.ldata) - } ${RELOCATING+ > ldata} - - - .vects : - { - *(.vects) - } ${RELOCATING+ > vectarea} - +.ldata : + { + *(.ldata) + } ${RELOCATING+ > ldata} +.vects : + { + *(.vects) + } ${RELOCATING+ > vectarea} } EOF diff --git a/ld/scripttempl/elf32xc16xs.sc b/ld/scripttempl/elf32xc16xs.sc index bb71e19..2c44f96 100644 --- a/ld/scripttempl/elf32xc16xs.sc +++ b/ld/scripttempl/elf32xc16xs.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -16,39 +16,39 @@ OUTPUT_ARCH(${ARCH}) ${RELOCATING+ENTRY ("_start")} MEMORY { - vectarea : o =0xc00000, l = 0x0300 - + vectarea : o =0xc00000, l = 0x0300 + introm : o = 0xc00300, l = 0x16000 /* The stack starts at the top of main ram. */ - + dram : o = 0x8000 , l = 0xffff /* At the very top of the address space is the 8-bit area. */ - - ldata : o =0x4000 ,l = 0x0200 + + ldata : o =0x4000 ,l = 0x0200 } SECTIONS { /*.vects : - { - *(.vects) - } ${RELOCATING+ > vectarea} */ + { + *(.vects) + } ${RELOCATING+ > vectarea} */ .init : - { - *(.init) - } ${RELOCATING+ >introm} - + { + *(.init) + } ${RELOCATING+ >introm} + .text : { - *(.rodata) + *(.rodata) *(.text.*) *(.text) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > introm} .data : { *(.data) *(.data.*) - + ${RELOCATING+ _edata = . ; } } ${RELOCATING+ > dram} @@ -60,14 +60,14 @@ SECTIONS ${RELOCATING+ _end = . ; } } ${RELOCATING+ > dram} - .ldata : - { - *(.ldata) - } ${RELOCATING+ > ldata} +.ldata : + { + *(.ldata) + } ${RELOCATING+ > ldata} - .vects : - { - *(.vects) - } ${RELOCATING+ > vectarea} +.vects : + { + *(.vects) + } ${RELOCATING+ > vectarea} } EOF diff --git a/ld/scripttempl/elf64hppa.sc b/ld/scripttempl/elf64hppa.sc index dec42b5..736e50a 100644 --- a/ld/scripttempl/elf64hppa.sc +++ b/ld/scripttempl/elf64hppa.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -45,15 +45,15 @@ # NO_RELA_RELOCS - Don't include .rela.* sections in script # NON_ALLOC_DYN - Place dynamic sections after data segment. # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # 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, @@ -147,7 +147,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} ${CREATE_SHLIB+*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)} @@ -219,7 +219,7 @@ FINI_ARRAY=".fini_array ${RELOCATING-0} : KEEP (*(.fini_array)) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__fini_array_end = .);}} }" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -359,7 +359,7 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rel.ifunc.dyn ${RELOCATING-0} : @@ -369,7 +369,7 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rela.ifunc.dyn ${RELOCATING-0} : @@ -390,18 +390,18 @@ if test -z "${NON_ALLOC_DYN}"; then cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ fi cat <<EOF - .init ${RELOCATING-0} : - { + .init ${RELOCATING-0} : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} @@ -524,10 +524,10 @@ if test -n "${NON_ALLOC_DYN}"; then cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ diff --git a/ld/scripttempl/elf_chaos.sc b/ld/scripttempl/elf_chaos.sc index 8fe15b4..7d4a2b6 100644 --- a/ld/scripttempl/elf_chaos.sc +++ b/ld/scripttempl/elf_chaos.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -31,15 +31,15 @@ # DATA_PLT - .plt should be in data segment, not text segment. # BSS_PLT - .plt should be in bss segment # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # OTHER_SYMBOLS - symbols to place right at the end of the script. # @@ -95,7 +95,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} *(.sdata${RELOCATING+ .sdata.* .gnu.linkonce.s.*}) @@ -226,13 +226,13 @@ cat <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC cat <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC cat <<EOF } EOF diff --git a/ld/scripttempl/elfarc.sc b/ld/scripttempl/elfarc.sc index 4d8fef0..802ef91 100644 --- a/ld/scripttempl/elfarc.sc +++ b/ld/scripttempl/elfarc.sc @@ -26,15 +26,15 @@ # DATA_PLT - .plt should be in data segment, not text segment. # BSS_PLT - .plt should be in bss segment # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # OTHER_END_SYMBOLS - symbols to place right at the end of the script. # @@ -103,7 +103,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} *(.sdata${RELOCATING+ .sdata.* .gnu.linkonce.s.*}) @@ -118,7 +118,7 @@ if test -z "${NO_SMALL_DATA}"; then REL_SBSS2=".rel.sbss2 ${RELOCATING-0} : { *(.rel.sbss2${RELOCATING+ .rel.sbss2.* .rel.gnu.linkonce.sb2.*}) } .rela.sbss2 ${RELOCATING-0} : { *(.rela.sbss2${RELOCATING+ .rela.sbss2.* .rela.gnu.linkonce.sb2.*}) }" fi -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -238,13 +238,13 @@ cat <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC cat <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC cat <<EOF } EOF @@ -254,8 +254,8 @@ cat <<EOF .rela.plt ${RELOCATING-0} : { *(.rela.plt) } ${OTHER_PLT_RELOC_SECTIONS} - .init ${RELOCATING-0} : - { + .init ${RELOCATING-0} : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} @@ -382,17 +382,17 @@ cat <<EOF the setting from ldflags prevails. */ .heap ${RELOCATING-0} : { - ${RELOCATING+ __start_heap = . ; } - ${RELOCATING+ . = . + (DEFINED(__HEAP_SIZE) ? __HEAP_SIZE : (DEFINED(__DEFAULT_HEAP_SIZE) ? __DEFAULT_HEAP_SIZE : 20k)) ; } - ${RELOCATING+ __end_heap = . ; } + ${RELOCATING+ __start_heap = . ; } + ${RELOCATING+ . = . + (DEFINED(__HEAP_SIZE) ? __HEAP_SIZE : (DEFINED(__DEFAULT_HEAP_SIZE) ? __DEFAULT_HEAP_SIZE : 20k)) ; } + ${RELOCATING+ __end_heap = . ; } } ${RELOCATING+. = ALIGN(0x8);} .stack ${RELOCATING-0} : { - ${RELOCATING+ __stack = . ; } - ${RELOCATING+ . = . + (DEFINED(__STACK_SIZE) ? __STACK_SIZE : (DEFINED(__DEFAULT_STACK_SIZE) ? __DEFAULT_STACK_SIZE : 64k)) ; } - ${RELOCATING+ __stack_top = . ; } + ${RELOCATING+ __stack = . ; } + ${RELOCATING+ . = . + (DEFINED(__STACK_SIZE) ? __STACK_SIZE : (DEFINED(__DEFAULT_STACK_SIZE) ? __DEFAULT_STACK_SIZE : 64k)) ; } + ${RELOCATING+ __stack_top = . ; } } /* Stabs debugging sections. */ diff --git a/ld/scripttempl/elfarcv2.sc b/ld/scripttempl/elfarcv2.sc index 21bc74c..ccc608e 100644 --- a/ld/scripttempl/elfarcv2.sc +++ b/ld/scripttempl/elfarcv2.sc @@ -19,7 +19,7 @@ test -z "${ELFSIZE}" && ELFSIZE=32 test -z "${ALIGNMENT}" && ALIGNMENT="${ELFSIZE} / 8" test "$LD_FLAG" = "N" && DATA_ADDR=. -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of diff --git a/ld/scripttempl/elfd10v.sc b/ld/scripttempl/elfd10v.sc index f9e15d9..db95ed1 100644 --- a/ld/scripttempl/elfd10v.sc +++ b/ld/scripttempl/elfd10v.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -9,11 +9,11 @@ test -z "${BIG_OUTPUT_FORMAT}" && BIG_OUTPUT_FORMAT=${OUTPUT_FORMAT} 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=. -INTERP=".interp ${RELOCATING-0} : { *(.interp) }" -PLT=".plt ${RELOCATING-0} : { *(.plt) }" +INTERP=".interp ${RELOCATING-0} : { *(.interp) }" +PLT=".plt ${RELOCATING-0} : { *(.plt) }" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -83,14 +83,14 @@ MEMORY There are other memory regions available on the TS3 (eg ROM, FLASH, etc) but these are not used by this script. */ - + INSN : org = 0x01000000, len = 256K DATA : org = 0x02000000, len = 48K /* This is a fake memory region at the top of the on-chip RAM, used as the start of the (descending) stack. */ - + STACK : org = 0x0200BFFC, len = 4 } diff --git a/ld/scripttempl/elfd30v.sc b/ld/scripttempl/elfd30v.sc index 1281b30..1eceb62 100644 --- a/ld/scripttempl/elfd30v.sc +++ b/ld/scripttempl/elfd30v.sc @@ -1,10 +1,10 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+ __CTOR_LIST__ = .; } /* gcc uses crtbegin.o to find the start of @@ -206,7 +206,7 @@ EOF . $srcdir/scripttempl/DWARF.sc -cat <<EOF +cat <<EOF PROVIDE (__stack = ${STACK_START_ADDR}); } EOF diff --git a/ld/scripttempl/elfi370.sc b/ld/scripttempl/elfi370.sc index 4b7cf3a..dc02844 100644 --- a/ld/scripttempl/elfi370.sc +++ b/ld/scripttempl/elfi370.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -199,7 +199,7 @@ EOF . $srcdir/scripttempl/DWARF.sc -cat <<EOF +cat <<EOF ${ATTRS_SECTIONS} ${OTHER_SECTIONS} } diff --git a/ld/scripttempl/elfm68hc11.sc b/ld/scripttempl/elfm68hc11.sc index 97eb59f..e05f6f5 100644 --- a/ld/scripttempl/elfm68hc11.sc +++ b/ld/scripttempl/elfm68hc11.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -18,7 +18,7 @@ # .data section. # OTHER_BSS_SYMBOLS - symbols that appear at the start of the # .bss section besides __bss_start. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # # When adding sections, do note that the names of some sections are used # when specifying the start address of the next. @@ -29,7 +29,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-0} : { ${CONSTRUCTING+ PROVIDE (__CTOR_LIST__ = .); } ${CONSTRUCTING+${CTOR_START}} @@ -57,7 +57,7 @@ VECTORS=" Bootstrap 0x00c0 Test 0xbfc0 - In general, the vectors address is 0xffc0. This can be overriden + In general, the vectors address is 0xffc0. This can be overriden with the '-defsym vectors_addr=0xbfc0' ld option. Note: for the bootstrap mode, the interrupt vectors are at 0xbfc0 but @@ -239,7 +239,7 @@ SECTIONS ${RELOCATING+*(.rela.gnu.linkonce.s.*)} } .rel.sbss ${RELOCATING-0} : - { + { *(.rel.sbss) ${RELOCATING+*(.rel.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} @@ -250,14 +250,14 @@ SECTIONS ${RELOCATING+*(.rela.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} } - .rel.bss ${RELOCATING-0} : - { + .rel.bss ${RELOCATING-0} : + { *(.rel.bss) ${RELOCATING+*(.rel.bss.*)} ${RELOCATING+*(.rel.gnu.linkonce.b.*)} } - .rela.bss ${RELOCATING-0} : - { + .rela.bss ${RELOCATING-0} : + { *(.rela.bss) ${RELOCATING+*(.rela.bss.*)} ${RELOCATING+*(.rela.gnu.linkonce.b.*)} @@ -300,14 +300,14 @@ SECTIONS } ${RELOCATING+ > page0} /* Start of text section. */ - .stext ${RELOCATING-0} : + .stext ${RELOCATING-0} : { *(.stext) } ${RELOCATING+ > ${TEXT_MEMORY}} .init ${RELOCATING-0} : { - *(.init) + *(.init) } ${RELOCATING+=${NOP-0}} ${RELOCATING-${INSTALL_RELOC}} diff --git a/ld/scripttempl/elfm68hc12.sc b/ld/scripttempl/elfm68hc12.sc index 2405d0f..cd90c6e 100644 --- a/ld/scripttempl/elfm68hc12.sc +++ b/ld/scripttempl/elfm68hc12.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -18,7 +18,7 @@ # .data section. # OTHER_BSS_SYMBOLS - symbols that appear at the start of the # .bss section besides __bss_start. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # # When adding sections, do note that the names of some sections are used # when specifying the start address of the next. @@ -29,7 +29,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-0} : { ${CONSTRUCTING+ PROVIDE (__CTOR_LIST__ = .); } ${CONSTRUCTING+${CTOR_START}} @@ -57,7 +57,7 @@ VECTORS=" Bootstrap 0x00c0 Test 0xbfc0 - In general, the vectors address is 0xffc0. This can be overriden + In general, the vectors address is 0xffc0. This can be overriden with the '-defsym vectors_addr=0xbfc0' ld option. Note: for the bootstrap mode, the interrupt vectors are at 0xbfc0 but @@ -239,7 +239,7 @@ SECTIONS ${RELOCATING+*(.rela.gnu.linkonce.s.*)} } .rel.sbss ${RELOCATING-0} : - { + { *(.rel.sbss) ${RELOCATING+*(.rel.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} @@ -250,14 +250,14 @@ SECTIONS ${RELOCATING+*(.rela.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} } - .rel.bss ${RELOCATING-0} : - { + .rel.bss ${RELOCATING-0} : + { *(.rel.bss) ${RELOCATING+*(.rel.bss.*)} ${RELOCATING+*(.rel.gnu.linkonce.b.*)} } - .rela.bss ${RELOCATING-0} : - { + .rela.bss ${RELOCATING-0} : + { *(.rela.bss) ${RELOCATING+*(.rela.bss.*)} ${RELOCATING+*(.rela.gnu.linkonce.b.*)} @@ -299,14 +299,14 @@ SECTIONS } ${RELOCATING+ > page0} /* Start of text section. */ - .stext ${RELOCATING-0} : + .stext ${RELOCATING-0} : { *(.stext) } ${RELOCATING+ > ${TEXT_MEMORY}} .init ${RELOCATING-0} : { - *(.init) + *(.init) } ${RELOCATING+=${NOP-0}} ${RELOCATING-${INSTALL_RELOC}} diff --git a/ld/scripttempl/elfmicroblaze.sc b/ld/scripttempl/elfmicroblaze.sc index e5574df..6be21fd 100644 --- a/ld/scripttempl/elfmicroblaze.sc +++ b/ld/scripttempl/elfmicroblaze.sc @@ -1,7 +1,7 @@ # Adapted from mips.sc # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -13,7 +13,7 @@ test -z "$ENTRY" && ENTRY=_start #test -z "$TEXT_START_ADDR" && TEXT_START_ADDR="0x0" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -63,7 +63,7 @@ ${RELOCATING+${LIB_SEARCH_DIRS}} ${RELOCATING+ENTRY (${ENTRY})} -_TEXT_START_ADDR = DEFINED(_TEXT_START_ADDR) ? _TEXT_START_ADDR : 0x50; +_TEXT_START_ADDR = DEFINED(_TEXT_START_ADDR) ? _TEXT_START_ADDR : 0x50; _HEAP_SIZE = DEFINED(_HEAP_SIZE) ? _HEAP_SIZE : 0x0; _STACK_SIZE = DEFINED(_STACK_SIZE) ? _STACK_SIZE : 0x400; @@ -121,7 +121,7 @@ SECTIONS } ${RELOCATING+. = ALIGN(4);} .sbss2 : { - ${RELOCATING+PROVIDE (__sbss2_start = .);} + ${RELOCATING+PROVIDE (__sbss2_start = .);} ${RELOCATING+*(.sbss2)} ${RELOCATING+*(.sbss2.*)} ${RELOCATING+*(.gnu.linkonce.sb2.*)} @@ -140,30 +140,30 @@ SECTIONS ${CONSTRUCTING+CONSTRUCTORS}; /* Is this needed? */ } ${RELOCATING+ _edata = . ;} - + /* Added to handle pic code */ - .got : { + .got : { ${RELOCATING+*(.got)} } - .got1 : { + .got1 : { ${RELOCATING+*(.got1)} } - .got2 : { + .got2 : { ${RELOCATING+*(.got2)} } /* Added by Sathya to handle C++ exceptions */ - .eh_frame : { + .eh_frame : { ${RELOCATING+*(.eh_frame)} } - - .jcr : { + + .jcr : { ${RELOCATING+*(.jcr)} } - .gcc_except_table : { + .gcc_except_table : { ${RELOCATING+*(.gcc_except_table)} } @@ -178,7 +178,7 @@ SECTIONS } ${RELOCATING+. = ALIGN(4);} .sbss : { - ${RELOCATING+PROVIDE (__sbss_start = .);} + ${RELOCATING+PROVIDE (__sbss_start = .);} ${RELOCATING+*(.sbss)} ${RELOCATING+*(.sbss.*)} ${RELOCATING+*(.gnu.linkonce.sb.*)} @@ -192,13 +192,13 @@ SECTIONS ${RELOCATING+ . = ALIGN(4);} ${RELOCATING+ _fbss = .;} .bss : { - ${RELOCATING+PROVIDE (__bss_start = .);} + ${RELOCATING+PROVIDE (__bss_start = .);} ${RELOCATING+*(.bss)} ${RELOCATING+*(.bss.*)} ${RELOCATING+*(.gnu.linkonce.b.*)} ${RELOCATING+*(COMMON)} ${RELOCATING+. = ALIGN(. != 0 ? 4 : 1);} - + ${RELOCATING+PROVIDE (__bss_end = .);} } @@ -210,7 +210,7 @@ SECTIONS ${RELOCATING+ _heap_start = .;} ${RELOCATING+ . += _HEAP_SIZE;} ${RELOCATING+ _heap_end = .;} - } + } ${RELOCATING+ . = ALIGN(4);} @@ -222,12 +222,12 @@ SECTIONS ${RELOCATING+ _end = .;} } - .tdata : { + .tdata : { ${RELOCATING+*(.tdata)} ${RELOCATING+*(.tdata.*)} ${RELOCATING+*(.gnu.linkonce.td.*)} } - .tbss : { + .tbss : { ${RELOCATING+*(.tbss)} ${RELOCATING+*(.tbss.*)} ${RELOCATING+*(.gnu.linkonce.tb.*)} diff --git a/ld/scripttempl/elfxgate.sc b/ld/scripttempl/elfxgate.sc index 2f5f201..e737ee4 100644 --- a/ld/scripttempl/elfxgate.sc +++ b/ld/scripttempl/elfxgate.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -18,7 +18,7 @@ # .data section. # OTHER_BSS_SYMBOLS - symbols that appear at the start of the # .bss section besides __bss_start. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # # When adding sections, do note that the names of some sections are used # when specifying the start address of the next. @@ -29,7 +29,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-0} : { ${CONSTRUCTING+ PROVIDE (__CTOR_LIST__ = .); } ${CONSTRUCTING+${CTOR_START}} @@ -57,7 +57,7 @@ VECTORS=" Bootstrap 0x00c0 Test 0xbfc0 - In general, the vectors address is 0xffc0. This can be overriden + In general, the vectors address is 0xffc0. This can be overriden with the '-defsym vectors_addr=0xbfc0' ld option. Note: for the bootstrap mode, the interrupt vectors are at 0xbfc0 but @@ -239,7 +239,7 @@ SECTIONS ${RELOCATING+*(.rela.gnu.linkonce.s.*)} } .rel.sbss ${RELOCATING-0} : - { + { *(.rel.sbss) ${RELOCATING+*(.rel.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} @@ -250,14 +250,14 @@ SECTIONS ${RELOCATING+*(.rela.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} } - .rel.bss ${RELOCATING-0} : - { + .rel.bss ${RELOCATING-0} : + { *(.rel.bss) ${RELOCATING+*(.rel.bss.*)} ${RELOCATING+*(.rel.gnu.linkonce.b.*)} } - .rela.bss ${RELOCATING-0} : - { + .rela.bss ${RELOCATING-0} : + { *(.rela.bss) ${RELOCATING+*(.rela.bss.*)} ${RELOCATING+*(.rela.gnu.linkonce.b.*)} @@ -299,14 +299,14 @@ SECTIONS } ${RELOCATING+ > page0} /* Start of text section. */ - .stext ${RELOCATING-0} : + .stext ${RELOCATING-0} : { *(.stext) } ${RELOCATING+ > ${TEXT_MEMORY}} .init ${RELOCATING-0} : { - *(.init) + *(.init) } ${RELOCATING+=${NOP-0}} ${RELOCATING-${INSTALL_RELOC}} diff --git a/ld/scripttempl/elfxtensa.sc b/ld/scripttempl/elfxtensa.sc index 769168e..64cca65 100644 --- a/ld/scripttempl/elfxtensa.sc +++ b/ld/scripttempl/elfxtensa.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -45,15 +45,15 @@ # NO_RELA_RELOCS - Don't include .rela.* sections in script # NON_ALLOC_DYN - Place dynamic sections after data segment. # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # 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, @@ -98,7 +98,7 @@ # # plus Xtensa-specific literal sections: # .literal .gnu.linkonce.literal.foo -# .lit4 .gnu.linkonce.lit4.foo +# .lit4 .gnu.linkonce.lit4.foo # # plus Xtensa-specific "property table" sections: # .xt.lit .gnu.linkonce.p.foo @@ -164,7 +164,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} ${CREATE_SHLIB+*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)} @@ -236,7 +236,7 @@ FINI_ARRAY=".fini_array ${RELOCATING-0} : KEEP (*(.fini_array)) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__fini_array_end = .);}} }" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -370,13 +370,13 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } EOF @@ -393,10 +393,10 @@ if test -z "${NON_ALLOC_DYN}"; then cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ @@ -534,10 +534,10 @@ if test -n "${NON_ALLOC_DYN}"; then cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ diff --git a/ld/scripttempl/epiphany_4x4.sc b/ld/scripttempl/epiphany_4x4.sc index b661fc2..3fa6c86 100644 --- a/ld/scripttempl/epiphany_4x4.sc +++ b/ld/scripttempl/epiphany_4x4.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -45,15 +45,15 @@ # NO_RELA_RELOCS - Don't include .rela.* sections in script # NON_ALLOC_DYN - Place dynamic sections after data segment. # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # 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. @@ -147,7 +147,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} ${CREATE_SHLIB+*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)} @@ -205,7 +205,7 @@ test "${LARGE_SECTIONS}" = "yes" && LARGE_SECTIONS=" *(.ldata${RELOCATING+ .ldata.* .gnu.linkonce.l.*}) ${RELOCATING+. = ALIGN(. != 0 ? ${ALIGNMENT} : 1);} }" -CTOR=".ctors ADDR(.text) + SIZEOF(.text) ${CONSTRUCTING-0} : +CTOR=".ctors ADDR(.text) + SIZEOF(.text) ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -230,7 +230,7 @@ CTOR=".ctors ADDR(.text) + SIZEOF(.text) ${CONSTRUCTING-0} : KEEP (*(SORT(.ctors.*))) KEEP (*(.ctors)) ${CONSTRUCTING+${CTOR_END}} - } /*> INTERNAL_RAM*/" + } /*> INTERNAL_RAM*/" DTOR=".dtors ADDR(.ctors) + SIZEOF(.ctors) ${CONSTRUCTING-0} : { ${CONSTRUCTING+${DTOR_START}} @@ -291,26 +291,26 @@ __CORE_NUM_ = (__CORE_ROW_ - __FIRST_CORE_ROW_ )* __MAX_NUM_CORES_IN_COLS__ + MEMORY { - EXTERNAL_DRAM_0 (WXAI) : ORIGIN = 0x80000000, LENGTH = 0x1000000 /*.text, data, rodata, bss and .stack*/ + EXTERNAL_DRAM_0 (WXAI) : ORIGIN = 0x80000000, LENGTH = 0x1000000 /*.text, data, rodata, bss and .stack*/ EXTERNAL_DRAM_1 (WXAI) : ORIGIN = 0x81000000, LENGTH = 0x1000000 /*.heap */ - + EXTERNAL_SRAM (WXAI) : ORIGIN = 0x92000000, LENGTH = 8K /* small external RAM, used for testing*/ - + /* run time lib and crt0*/ RESERVED_CRT0_RAM (WXAI) : ORIGIN = 0, LENGTH = 0x400 - + /* user program, per bank usage */ BANK0_SRAM (WXAI) : ORIGIN = LENGTH(RESERVED_CRT0_RAM), LENGTH = 8K - LENGTH(RESERVED_CRT0_RAM) BANK1_SRAM (WXAI) : ORIGIN = 0x2000, LENGTH = 8K BANK2_SRAM (WXAI) : ORIGIN = 0x4000, LENGTH = 8K BANK3_SRAM (WXAI) : ORIGIN = 0x6000, LENGTH = 8K - + /* user program, continious placement */ INTERNAL_RAM (WXAI) : ORIGIN = LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K - LENGTH(RESERVED_CRT0_RAM) - - MMR (WAI) : ORIGIN = 0xF000, LENGTH = 32K - - /* multi cores space */ + + MMR (WAI) : ORIGIN = 0xF000, LENGTH = 32K + + /* multi cores space */ CORE_0x20_0x24_INTERNAL_RAM : ORIGIN = 0x82400000+LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K- LENGTH(RESERVED_CRT0_RAM) CORE_0x20_0x25_INTERNAL_RAM : ORIGIN = 0x82500000+LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K- LENGTH(RESERVED_CRT0_RAM) CORE_0x20_0x26_INTERNAL_RAM : ORIGIN = 0x82600000+LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K- LENGTH(RESERVED_CRT0_RAM) @@ -328,7 +328,7 @@ MEMORY CORE_0x23_0x26_INTERNAL_RAM : ORIGIN = 0x8e600000+LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K- LENGTH(RESERVED_CRT0_RAM) CORE_0x23_0x27_INTERNAL_RAM : ORIGIN = 0x8e700000+LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K- LENGTH(RESERVED_CRT0_RAM) CORE_0x24_0x24_INTERNAL_RAM : ORIGIN = 0x82000000+LENGTH(RESERVED_CRT0_RAM), LENGTH = 32K- LENGTH(RESERVED_CRT0_RAM) - + } @@ -338,35 +338,35 @@ SECTIONS IVT 0 : {*.o(IVT) } > RESERVED_CRT0_RAM RESERVED_CRT0 : {*.o(RESERVED_CRT0) } > RESERVED_CRT0_RAM RESERVED_CRT0 : {*.o(reserved_crt0) } > RESERVED_CRT0_RAM - + CORE_RAM_0 : {*.o(core_ram_0) } > BANK0_SRAM CORE_RAM_1 : {*.o(core_ram_1) } > BANK1_SRAM CORE_RAM_2 : {*.o(core_ram_2) } > BANK2_SRAM CORE_RAM_3 : {*.o(core_ram_3) } > BANK3_SRAM - + SRAM_SOUTH : {*.o(sram) } > EXTERNAL_SRAM DRAM_WEST : {*.o(dram) } > EXTERNAL_DRAM_1 - + CORE_INTERNAL : {*.o(core_ram_internal) } /*> INTERNAL_RAM*/ - + /* the newlib (libc and libm) library is maped to the dedicated section */ - + __new_lib_start_external_ = ( ORIGIN(EXTERNAL_DRAM_0) + __PROG_SIZE_FOR_CORE__ *__CORE_NUM_ ); __new_lib_start_ = DEFINED(__USE_INTERNAL_MEM_FOR_NEW_LIB_) ? ORIGIN(BANK1_SRAM) : __new_lib_start_external_ ; - + NEW_LIB_RO ${RELOCATING+__new_lib_start_} : { lib_a-*.o(.text .rodata ) *.o(libgloss_epiphany) } /* > INTERNAL_RAM*/ - GNU_C_BUILTIN_LIB_RO ADDR(NEW_LIB_RO) + SIZEOF(NEW_LIB_RO) : { - *mulsi3.o(.text .rodata) *modsi3.o(.text .rodata) - *divsi3.o(.text .rodata) *udivsi3.o(.text .rodata) - *umodsi3.o(.text .rodata) _*.o(.text .rodata) - } - - NEW_LIB_WR ADDR(GNU_C_BUILTIN_LIB_RO) + SIZEOF(GNU_C_BUILTIN_LIB_RO) : { lib_a-*.o(.data ) } /* > INTERNAL_RAM*/ - - - __init_start = DEFINED(__USE_INTERNAL_MEM_) ? ORIGIN(BANK1_SRAM) : (ADDR(NEW_LIB_WR) + SIZEOF(NEW_LIB_WR) ) ; + GNU_C_BUILTIN_LIB_RO ADDR(NEW_LIB_RO) + SIZEOF(NEW_LIB_RO) : { + *mulsi3.o(.text .rodata) *modsi3.o(.text .rodata) + *divsi3.o(.text .rodata) *udivsi3.o(.text .rodata) + *umodsi3.o(.text .rodata) _*.o(.text .rodata) + } + + NEW_LIB_WR ADDR(GNU_C_BUILTIN_LIB_RO) + SIZEOF(GNU_C_BUILTIN_LIB_RO) : { lib_a-*.o(.data ) } /* > INTERNAL_RAM*/ + + + __init_start = DEFINED(__USE_INTERNAL_MEM_) ? ORIGIN(BANK1_SRAM) : (ADDR(NEW_LIB_WR) + SIZEOF(NEW_LIB_WR) ) ; __init_start = DEFINED(__USE_INTERNAL_MEM_FOR_NEW_LIB_) ? ADDR(NEW_LIB_WR) + SIZEOF(NEW_LIB_WR) : __init_start; - + /* Read-only sections, merged into text segment: */ /*${CREATE_SHLIB-${CREATE_PIE-${RELOCATING+PROVIDE (__executable_start = ${TEXT_START_ADDR}); . = ${TEXT_BASE_ADDRESS};}}}*/ @@ -433,13 +433,13 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } EOF @@ -456,19 +456,19 @@ if test -z "${NON_ALLOC_DYN}"; then cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ fi cat <<EOF - - .init __init_start : - { + + .init __init_start : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} @@ -476,14 +476,14 @@ cat <<EOF ${TEXT_PLT+${PLT}} ${TINY_READONLY_SECTION} - + .fini ${RELOCATING+ADDR(.init)+SIZEOF(.init)} ${RELOCATING-0} : { ${RELOCATING+${FINI_START}} KEEP (*(.fini)) ${RELOCATING+${FINI_END}} } /*> INTERNAL_RAM*/ =${NOP-0} - + .text ${RELOCATING+ADDR(.fini)+SIZEOF(.fini)} ${RELOCATING-0} : { ${RELOCATING+${TEXT_START_SYMBOLS}} @@ -497,7 +497,7 @@ cat <<EOF ${RELOCATING+PROVIDE (_${ETEXT_NAME} = .);} ${RELOCATING+PROVIDE (${ETEXT_NAME} = .);} ${WRITABLE_RODATA-${RODATA}} - .rodata1 ${RELOCATING-0} : { *(.rodata1) } + .rodata1 ${RELOCATING-0} : { *(.rodata1) } ${CREATE_SHLIB-${SDATA2}} ${CREATE_SHLIB-${SBSS2}} ${OTHER_READONLY_SECTIONS} @@ -524,21 +524,21 @@ cat <<EOF ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__preinit_array_start = .);}} KEEP (*(.preinit_array)) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__preinit_array_end = .);}} - } + } .init_array ${RELOCATING-0} : { ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__init_array_start = .);}} KEEP (*(SORT(.init_array.*))) KEEP (*(.init_array)) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__init_array_end = .);}} - } + } .fini_array ${RELOCATING-0} : { ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__fini_array_start = .);}} KEEP (*(.fini_array)) KEEP (*(SORT(.fini_array.*))) ${RELOCATING+${CREATE_SHLIB-PROVIDE_HIDDEN (${USER_LABEL_PREFIX}__fini_array_end = .);}} - } + } ${SMALL_DATA_CTOR-${RELOCATING+${CTOR}}} ${SMALL_DATA_DTOR-${RELOCATING+${DTOR}}} .jcr ${RELOCATING-0} : { KEEP (*(.jcr)) } @@ -561,7 +561,7 @@ cat <<EOF *(.data${RELOCATING+ .data.* .gnu.linkonce.d.*}) ${CONSTRUCTING+SORT(CONSTRUCTORS)} } /*> INTERNAL_RAM*/ - .data1 ${RELOCATING-0} : { *(.data1) } + .data1 ${RELOCATING-0} : { *(.data1) } ${WRITABLE_RODATA+${RODATA}} ${OTHER_READWRITE_SECTIONS} ${SMALL_DATA_CTOR+${RELOCATING+${CTOR}}} @@ -615,10 +615,10 @@ if test -n "${NON_ALLOC_DYN}"; then cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d' -e '/^[ ]*\.rela\./d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d' -e '/^[ ]*\.rel\./d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ diff --git a/ld/scripttempl/epocpe.sc b/ld/scripttempl/epocpe.sc index 518e0b4..c9e552c9 100644 --- a/ld/scripttempl/epocpe.sc +++ b/ld/scripttempl/epocpe.sc @@ -1,7 +1,7 @@ # Linker script for PE. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -57,7 +57,7 @@ ${RELOCATING+ENTRY (_mainCRTStartup)} SECTIONS { - .text ${RELOCATING+ __image_base__ + __section_alignment__ } : + .text ${RELOCATING+ __image_base__ + __section_alignment__ } : { ${RELOCATING+ *(.init)} *(.text) @@ -65,9 +65,9 @@ SECTIONS *(.glue_7t) *(.glue_7) ${RELOCATING+ *(.text.*)} - ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; + ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; LONG (-1); *(.ctors); *(.ctor); LONG (0); } - ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; + ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; LONG (-1); *(.dtors); *(.dtor); LONG (0); } ${RELOCATING+ *(.fini)} /* ??? Why is .gcc_exc here? */ @@ -88,7 +88,7 @@ SECTIONS breaks building the cygwin32 dll. Instead, we name the section ".data_cygwin_nocopy" and explicitly include it after __data_end__. */ - .data ${RELOCATING+BLOCK(__section_alignment__)} : + .data ${RELOCATING+BLOCK(__section_alignment__)} : { ${RELOCATING+__data_start__ = . ;} *(.data) @@ -125,9 +125,9 @@ SECTIONS See pe.em:sort_sections. */ ${R_IDATA} } - + .CRT ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${R_CRT} } @@ -140,12 +140,12 @@ SECTIONS } .reloc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.reloc) } .rsrc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.rsrc) ${R_RSRC} } diff --git a/ld/scripttempl/h8300.sc b/ld/scripttempl/h8300.sc index 5204db2..e8d72d6 100644 --- a/ld/scripttempl/h8300.sc +++ b/ld/scripttempl/h8300.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -51,7 +51,7 @@ SECTIONS } ${RELOCATING+ > vectors} .init : - { + { *(.init) } ${RELOCATING+ > ram} @@ -61,7 +61,7 @@ SECTIONS *(.text) *(.text.*) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8300h.sc b/ld/scripttempl/h8300h.sc index d621002..aa1c980 100644 --- a/ld/scripttempl/h8300h.sc +++ b/ld/scripttempl/h8300h.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -61,7 +61,7 @@ SECTIONS *(.rodata) *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8300hn.sc b/ld/scripttempl/h8300hn.sc index ca61341..543a779 100644 --- a/ld/scripttempl/h8300hn.sc +++ b/ld/scripttempl/h8300hn.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -55,7 +55,7 @@ SECTIONS *(.rodata) *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8300s.sc b/ld/scripttempl/h8300s.sc index 6d6d206..00f40f0 100644 --- a/ld/scripttempl/h8300s.sc +++ b/ld/scripttempl/h8300s.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -61,7 +61,7 @@ SECTIONS *(.rodata) *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8300sn.sc b/ld/scripttempl/h8300sn.sc index 64eef7b..31b393b 100644 --- a/ld/scripttempl/h8300sn.sc +++ b/ld/scripttempl/h8300sn.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -55,7 +55,7 @@ SECTIONS *(.rodata) *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8300sx.sc b/ld/scripttempl/h8300sx.sc index f1259d5..055982e 100644 --- a/ld/scripttempl/h8300sx.sc +++ b/ld/scripttempl/h8300sx.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -61,7 +61,7 @@ SECTIONS *(.rodata) *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8300sxn.sc b/ld/scripttempl/h8300sxn.sc index 5e78962..740a437 100644 --- a/ld/scripttempl/h8300sxn.sc +++ b/ld/scripttempl/h8300sxn.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -55,7 +55,7 @@ SECTIONS *(.rodata) *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} diff --git a/ld/scripttempl/h8500.sc b/ld/scripttempl/h8500.sc index 0888e7a..236cc77 100644 --- a/ld/scripttempl/h8500.sc +++ b/ld/scripttempl/h8500.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/h8500b.sc b/ld/scripttempl/h8500b.sc index 0cb6dde..a62baa2 100644 --- a/ld/scripttempl/h8500b.sc +++ b/ld/scripttempl/h8500b.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/h8500c.sc b/ld/scripttempl/h8500c.sc index 2e4857a..1f698ca 100644 --- a/ld/scripttempl/h8500c.sc +++ b/ld/scripttempl/h8500c.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/h8500m.sc b/ld/scripttempl/h8500m.sc index 87ddf15..5653581 100644 --- a/ld/scripttempl/h8500m.sc +++ b/ld/scripttempl/h8500m.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/h8500s.sc b/ld/scripttempl/h8500s.sc index 2a1b12c..d7758d6 100644 --- a/ld/scripttempl/h8500s.sc +++ b/ld/scripttempl/h8500s.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/hppaelf.sc b/ld/scripttempl/hppaelf.sc index a4b4d4d..01b1cf9 100644 --- a/ld/scripttempl/hppaelf.sc +++ b/ld/scripttempl/hppaelf.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/i386beos.sc b/ld/scripttempl/i386beos.sc index 377b181..a1bcf3c 100644 --- a/ld/scripttempl/i386beos.sc +++ b/ld/scripttempl/i386beos.sc @@ -1,7 +1,7 @@ # Linker script for PE. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -56,7 +56,7 @@ ${RELOCATING+__fltused = .; /* set up floating pt for MS .obj\'s */} ${RELOCATING+__ldused = .;} SECTIONS { - .text ${RELOCATING+ __image_base__ + __section_alignment__ } : + .text ${RELOCATING+ __image_base__ + __section_alignment__ } : { ${RELOCATING+ __text_start__ = . ;} ${RELOCATING+ *(.init)} @@ -64,9 +64,9 @@ SECTIONS ${R_TEXT} *(.glue_7t) *(.glue_7) - ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; + ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; LONG (-1); *(.ctors); *(.ctor); LONG (0); } - ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; + ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; LONG (-1); *(.dtors); *(.dtor); LONG (0); } ${RELOCATING+ *(.fini)} /* ??? Why is .gcc_exc here? */ @@ -82,7 +82,7 @@ SECTIONS breaks building the cygwin32 dll. Instead, we name the section ".data_cygwin_nocopy" and explicitly include it after __data_end__. */ - .data ${RELOCATING+BLOCK(__section_alignment__)} : + .data ${RELOCATING+BLOCK(__section_alignment__)} : { ${RELOCATING+__data_start__ = . ;} *(.data) @@ -134,7 +134,7 @@ SECTIONS ${R_IDATA} } .CRT ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${R_CRT} } @@ -147,18 +147,18 @@ SECTIONS } .reloc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.reloc) } .rsrc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.rsrc) ${R_RSRC} } .exc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.exc) ${R_EXC} } diff --git a/ld/scripttempl/i386coff.sc b/ld/scripttempl/i386coff.sc index f3b013e..17fbfc2 100644 --- a/ld/scripttempl/i386coff.sc +++ b/ld/scripttempl/i386coff.sc @@ -2,7 +2,7 @@ # Ian Taylor <ian@cygnus.com>. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -38,14 +38,14 @@ SECTIONS ${RELOCATING+ edata = .}; } .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : - { + { *(.bss) *(COMMON) ${RELOCATING+ end = .}; } ${RELOCATING- ${INIT}} ${RELOCATING- ${FINI}} - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/i386go32.sc b/ld/scripttempl/i386go32.sc index 49f2a3d..059e33d 100644 --- a/ld/scripttempl/i386go32.sc +++ b/ld/scripttempl/i386go32.sc @@ -1,7 +1,7 @@ # Linker script for i386 go32 (DJGPP) # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -68,7 +68,7 @@ SECTIONS ${CONSTRUCTING+${RELOCATING-$CTOR}} ${CONSTRUCTING+${RELOCATING-$DTOR}} .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : - { + { *(.bss${RELOCATING+ .bss.* .gnu.linkonce.b.*}) *(COMMON) ${RELOCATING+ end = . ; PROVIDE(_end = .) ;} diff --git a/ld/scripttempl/i386msdos.sc b/ld/scripttempl/i386msdos.sc index 606a113..9c45671 100644 --- a/ld/scripttempl/i386msdos.sc +++ b/ld/scripttempl/i386msdos.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/i860coff.sc b/ld/scripttempl/i860coff.sc index 1f2f1ea..526eed8 100644 --- a/ld/scripttempl/i860coff.sc +++ b/ld/scripttempl/i860coff.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -13,7 +13,7 @@ cat <<EOF OUTPUT_FORMAT("${OUTPUT_FORMAT}") ${LIB_SEARCH_DIRS} -PROVIDE (__stack = 0); +PROVIDE (__stack = 0); SECTIONS { .text ${RELOCATING+ 0x1000000} : { @@ -35,14 +35,14 @@ SECTIONS *(.data) ${RELOCATING+ edata = .}; } - .bss : { + .bss : { ${RELOCATING+ __bss_start = .}; *(.bss) *(COMMON) ${RELOCATING+ end = ALIGN(0x8)}; ${RELOCATING+ _end = ALIGN(0x8)}; } - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/i960.sc b/ld/scripttempl/i960.sc index 16e799e..86253c6 100644 --- a/ld/scripttempl/i960.sc +++ b/ld/scripttempl/i960.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -12,26 +12,26 @@ cat <<EOF notice and this notice are preserved. */ SECTIONS -{ - .text : - { +{ + .text : + { ${GLD_STYLE+ CREATE_OBJECT_SYMBOLS} - *(.text) + *(.text) ${RELOCATING+ _etext = .}; ${CONSTRUCTING+${COFF_CTORS}} - } + } .data : - { - *(.data) + { + *(.data) ${CONSTRUCTING+CONSTRUCTORS} ${RELOCATING+ _edata = .}; - } + } .bss : - { + { ${RELOCATING+ _bss_start = .}; - *(.bss) - *(COMMON) + *(.bss) + *(COMMON) ${RELOCATING+ _end = .}; - } -} + } +} EOF diff --git a/ld/scripttempl/ia64vms.sc b/ld/scripttempl/ia64vms.sc index f14d835..785acf9 100644 --- a/ld/scripttempl/ia64vms.sc +++ b/ld/scripttempl/ia64vms.sc @@ -2,7 +2,7 @@ # Tristan Gingold <gingold@adacore.com>. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -120,7 +120,7 @@ EOF . $srcdir/scripttempl/DWARF.sc -cat <<EOF +cat <<EOF .note : { *(.vms.note) } /DISCARD/ : { *(.note) *(.vms_display_name_info) } diff --git a/ld/scripttempl/ip2k.sc b/ld/scripttempl/ip2k.sc index 90a56a1..a587f34 100644 --- a/ld/scripttempl/ip2k.sc +++ b/ld/scripttempl/ip2k.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -21,11 +21,11 @@ SEARCH_DIR(.); MEMORY { D_GPR : org = 0x01000080, len = 128 - D_RAM : org = 0x01000100, len = 4K - 256 - P_RAM : org = 0x02000000, len = 16K - P_ROM : org = 0x02010000, len = 64K - 32 - P_RESET : org = 0x0201FFE0, len = 32 - P_CONFIG : org = 0x02020000, len = 128 + D_RAM : org = 0x01000100, len = 4K - 256 + P_RAM : org = 0x02000000, len = 16K + P_ROM : org = 0x02010000, len = 64K - 32 + P_RESET : org = 0x0201FFE0, len = 32 + P_CONFIG : org = 0x02020000, len = 128 } SECTIONS @@ -89,7 +89,7 @@ SECTIONS /* PRAM overlay code. */ __pram_overlay_run_start = (__pram_end + 1) & 0xFFFFFFFE; - __pram_overlay_load_start = (__flash_end + 1) & 0xFFFFFFFE; + __pram_overlay_load_start = (__flash_end + 1) & 0xFFFFFFFE; OVERLAY __pram_overlay_run_start : AT (__pram_overlay_load_start) { .pram1 { */overlay1/* (.pram); * (.pram1) } diff --git a/ld/scripttempl/iq2000.sc b/ld/scripttempl/iq2000.sc index aacb7e2..c5ac951 100644 --- a/ld/scripttempl/iq2000.sc +++ b/ld/scripttempl/iq2000.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -28,15 +28,15 @@ # DATA_PLT - .plt should be in data segment, not text segment. # BSS_PLT - .plt should be in bss segment # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # # When adding sections, do note that the names of some sections are used # when specifying the start address of the next. @@ -69,13 +69,13 @@ if [ -z "$MACHINE" ]; then OUTPUT_ARCH=${ARCH}; else OUTPUT_ARCH=${ARCH}:${MACHI test -z "${ELFSIZE}" && ELFSIZE=32 test -z "${ALIGNMENT}" && ALIGNMENT="${ELFSIZE} / 8" test "$LD_FLAG" = "N" && DATA_ADDR=. -INTERP=".interp ${RELOCATING-0} : { *(.interp) }" +INTERP=".interp ${RELOCATING-0} : { *(.interp) }" PLT=".plt ${RELOCATING-0} : { *(.plt) }" DYNAMIC=".dynamic ${RELOCATING-0} : { *(.dynamic) }" RODATA=".rodata ${RELOCATING-0} : { *(.rodata) ${RELOCATING+*(.rodata.*)} ${RELOCATING+*(.gnu.linkonce.r.*)} }" SBSS2=".sbss2 ${RELOCATING-0} : { *(.sbss2) ${RELOCATING+*(.sbss2.*)} ${RELOCATING+*(.gnu.linkonce.sb2.*)} }" SDATA2=".sdata2 ${RELOCATING-0} : { *(.sdata2) ${RELOCATING+*(.sdata2.*)} ${RELOCATING+*(.gnu.linkonce.s2.*)} }" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -217,7 +217,7 @@ eval $COMBRELOCCAT <<EOF ${RELOCATING+*(.rela.gnu.linkonce.s.*)} } .rel.sbss ${RELOCATING-0} : - { + { *(.rel.sbss) ${RELOCATING+*(.rel.sbss.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb.*)} @@ -228,38 +228,38 @@ eval $COMBRELOCCAT <<EOF ${RELOCATING+*(.rela.sbss.*)} ${RELOCATING+*(.rela.gnu.linkonce.sb.*)} } - .rel.sdata2 ${RELOCATING-0} : - { + .rel.sdata2 ${RELOCATING-0} : + { *(.rel.sdata2) ${RELOCATING+*(.rel.sdata2.*)} ${RELOCATING+*(.rel.gnu.linkonce.s2.*)} } - .rela.sdata2 ${RELOCATING-0} : + .rela.sdata2 ${RELOCATING-0} : { *(.rela.sdata2) ${RELOCATING+*(.rela.sdata2.*)} ${RELOCATING+*(.rela.gnu.linkonce.s2.*)} } - .rel.sbss2 ${RELOCATING-0} : - { - *(.rel.sbss2) + .rel.sbss2 ${RELOCATING-0} : + { + *(.rel.sbss2) ${RELOCATING+*(.rel.sbss2.*)} ${RELOCATING+*(.rel.gnu.linkonce.sb2.*)} } - .rela.sbss2 ${RELOCATING-0} : - { - *(.rela.sbss2) + .rela.sbss2 ${RELOCATING-0} : + { + *(.rela.sbss2) ${RELOCATING+*(.rela.sbss2.*)} ${RELOCATING+*(.rela.gnu.linkonce.sb2.*)} } - .rel.bss ${RELOCATING-0} : - { + .rel.bss ${RELOCATING-0} : + { *(.rel.bss) ${RELOCATING+*(.rel.bss.*)} ${RELOCATING+*(.rel.gnu.linkonce.b.*)} } - .rela.bss ${RELOCATING-0} : - { + .rela.bss ${RELOCATING-0} : + { *(.rela.bss) ${RELOCATING+*(.rela.bss.*)} ${RELOCATING+*(.rela.gnu.linkonce.b.*)} @@ -270,13 +270,13 @@ cat <<EOF .rel.dyn : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC cat <<EOF } .rela.dyn : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC cat <<EOF } EOF @@ -286,8 +286,8 @@ cat <<EOF .rela.plt ${RELOCATING-0} : { *(.rela.plt) } ${OTHER_PLT_RELOC_SECTIONS} - .init ${RELOCATING-0} : - { + .init ${RELOCATING-0} : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} @@ -329,10 +329,10 @@ cat <<EOF ${CONSTRUCTING+SORT(CONSTRUCTORS)} } .data1 ${RELOCATING-0} : { *(.data1) } - .eh_frame ${RELOCATING-0} : - { + .eh_frame ${RELOCATING-0} : + { ${RELOCATING+PROVIDE (__eh_frame_begin = .);} - *(.eh_frame) + *(.eh_frame) LONG (0); ${RELOCATING+PROVIDE (__eh_frame_end = .);} } ${RELOCATING+} @@ -363,10 +363,10 @@ cat <<EOF /* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} - *(.sdata) + *(.sdata) ${RELOCATING+*(.sdata.*)} ${RELOCATING+*(.gnu.linkonce.s.*)} } diff --git a/ld/scripttempl/m68kaux.sc b/ld/scripttempl/m68kaux.sc index 488e990..ec350eb 100644 --- a/ld/scripttempl/m68kaux.sc +++ b/ld/scripttempl/m68kaux.sc @@ -1,7 +1,7 @@ # Linker script for A/UX. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/m68kcoff.sc b/ld/scripttempl/m68kcoff.sc index 1f2f1ea..526eed8 100644 --- a/ld/scripttempl/m68kcoff.sc +++ b/ld/scripttempl/m68kcoff.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -13,7 +13,7 @@ cat <<EOF OUTPUT_FORMAT("${OUTPUT_FORMAT}") ${LIB_SEARCH_DIRS} -PROVIDE (__stack = 0); +PROVIDE (__stack = 0); SECTIONS { .text ${RELOCATING+ 0x1000000} : { @@ -35,14 +35,14 @@ SECTIONS *(.data) ${RELOCATING+ edata = .}; } - .bss : { + .bss : { ${RELOCATING+ __bss_start = .}; *(.bss) *(COMMON) ${RELOCATING+ end = ALIGN(0x8)}; ${RELOCATING+ _end = ALIGN(0x8)}; } - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/m88kbcs.sc b/ld/scripttempl/m88kbcs.sc index 7d1ae35..c5c0818 100644 --- a/ld/scripttempl/m88kbcs.sc +++ b/ld/scripttempl/m88kbcs.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -21,15 +21,15 @@ OUTPUT_ARCH(${ARCH}) ${RELOCATING+ENTRY (__start)} ${RELOCATING+${LIB_SEARCH_DIRS}} -SECTIONS -{ +SECTIONS +{ .text ${RELOCATING+ (0x20007 + SIZEOF_HEADERS) &~ 7} : { ${RELOCATING+ __.text.start = .}; ${RELOCATING+ __.init.start = .}; ${RELOCATING+ *(.init)} ${RELOCATING+ __.init.end = .}; - *(.text) + *(.text) ${RELOCATING+ __.tdesc_start = .}; ${RELOCATING+ *(.tdesc)} ${RELOCATING+ __.text_end = .} ; @@ -39,22 +39,22 @@ SECTIONS ${RELOCATING+ *(.fini) } ${RELOCATING+ __.fini_end = .}; ${RELOCATING+_etext = .}; - } + } .data ${RELOCATING+ NEXT (0x400000) + ((SIZEOF(.text) + ADDR(.text)) % 0x2000)} : - { + { *(.data) ${RELOCATING+_edata = .}; - } + } .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : - { - *(.bss) - *(COMMON) + { + *(.bss) + *(COMMON) ${RELOCATING+ _end = .}; ${RELOCATING+ __end = .}; } ${RELOCATING- ${INIT}} ${RELOCATING- ${FINI}} - .comment 0 ${RELOCATING+(NOLOAD)} : + .comment 0 ${RELOCATING+(NOLOAD)} : { *(.comment) } diff --git a/ld/scripttempl/mcorepe.sc b/ld/scripttempl/mcorepe.sc index 33a58ab..3d566f6 100644 --- a/ld/scripttempl/mcorepe.sc +++ b/ld/scripttempl/mcorepe.sc @@ -1,7 +1,7 @@ # Linker script for MCore PE. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -46,7 +46,7 @@ if test "$RELOCATING"; then # because bash 2.x will lose the doublequotes. cat <<EOF OUTPUT_FORMAT("${OUTPUT_FORMAT}", "${BIG_OUTPUT_FORMAT}", - "${LITTLE_OUTPUT_FORMAT}") + "${LITTLE_OUTPUT_FORMAT}") EOF fi @@ -63,7 +63,7 @@ ${RELOCATING+ENTRY (_mainCRTStartup)} SECTIONS { - .text ${RELOCATING+ __image_base__ + __section_alignment__ } : + .text ${RELOCATING+ __image_base__ + __section_alignment__ } : { ${RELOCATING+ *(.init)} *(.text) @@ -71,9 +71,9 @@ SECTIONS ${RELOCATING+ *(.text.*)} *(.glue_7t) *(.glue_7) - ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; + ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; LONG (-1); *(.ctors); *(.ctor); LONG (0); } - ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; + ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; LONG (-1); *(.dtors); *(.dtor); LONG (0); } ${RELOCATING+ *(.fini)} /* ??? Why is .gcc_exc here? */ @@ -88,7 +88,7 @@ SECTIONS breaks building the cygwin32 dll. Instead, we name the section ".data_cygwin_nocopy" and explicitly include it after __data_end__. */ - .data ${RELOCATING+BLOCK(__section_alignment__)} : + .data ${RELOCATING+BLOCK(__section_alignment__)} : { ${RELOCATING+__data_start__ = . ;} *(.data) @@ -133,7 +133,7 @@ SECTIONS ${R_IDATA} } .CRT ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${R_CRT} } @@ -146,12 +146,12 @@ SECTIONS } .reloc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.reloc) } .rsrc ${RELOCATING+BLOCK(__section_alignment__)} : - { + { *(.rsrc) ${R_RSRC} } diff --git a/ld/scripttempl/mep.sc b/ld/scripttempl/mep.sc index e9b6eea..b2c89b8 100644 --- a/ld/scripttempl/mep.sc +++ b/ld/scripttempl/mep.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -39,15 +39,15 @@ # PLT_BEFORE_GOT - .plt just before .got when .plt is in data segement. # BSS_PLT - .plt should be in bss segment # TEXT_DYNAMIC - .dynamic in text segment, not data segment. -# EMBEDDED - whether this is for an embedded system. +# EMBEDDED - whether this is for an embedded system. # SHLIB_TEXT_START_ADDR - if set, add to SIZEOF_HEADERS to set # start address of shared library. # INPUT_FILES - INPUT command of files to always include # WRITABLE_RODATA - if set, the .rodata section should be writable # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # STACK_ADDR - start of a .stack section. # OTHER_END_SYMBOLS - symbols to place right at the end of the script. # SEPARATE_GOTPLT - if set, .got.plt should be separate output section, @@ -136,7 +136,7 @@ if test -z "${NO_SMALL_DATA}"; then SDATA="/* 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 ${RELOCATING-0} : + .sdata ${RELOCATING-0} : { ${RELOCATING+${SDATA_START_SYMBOLS}} ${CREATE_SHLIB+*(.sdata2 .sdata2.* .gnu.linkonce.s2.*)} @@ -155,7 +155,7 @@ else NO_SMALL_DATA=" " fi test -n "$SEPARATE_GOTPLT" && SEPARATE_GOTPLT=" " -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -283,13 +283,13 @@ cat <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC cat <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC cat <<EOF } EOF @@ -299,8 +299,8 @@ cat <<EOF .rela.plt ${RELOCATING-0} : { *(.rela.plt) } ${OTHER_PLT_RELOC_SECTIONS} - .init ${RELOCATING-0} : - { + .init ${RELOCATING-0} : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} diff --git a/ld/scripttempl/mips.sc b/ld/scripttempl/mips.sc index fc865b4..61d2afa 100644 --- a/ld/scripttempl/mips.sc +++ b/ld/scripttempl/mips.sc @@ -2,7 +2,7 @@ # Ian Lance Taylor <ian@cygnus.com>. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/mipsbsd.sc b/ld/scripttempl/mipsbsd.sc index 8ba18f5..67e3a27 100644 --- a/ld/scripttempl/mipsbsd.sc +++ b/ld/scripttempl/mipsbsd.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/mmo.sc b/ld/scripttempl/mmo.sc index 5522baa..f13c621 100644 --- a/ld/scripttempl/mmo.sc +++ b/ld/scripttempl/mmo.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/moxie.sc b/ld/scripttempl/moxie.sc index 062e2a9..995279e 100644 --- a/ld/scripttempl/moxie.sc +++ b/ld/scripttempl/moxie.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/nds32elf.sc b/ld/scripttempl/nds32elf.sc index db4bf57..d7a9017 100644 --- a/ld/scripttempl/nds32elf.sc +++ b/ld/scripttempl/nds32elf.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -374,13 +374,13 @@ cat >> ldscripts/dyntmp.$$ <<EOF .rel.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;/__rela_iplt_/d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rela\./d;/__rela_iplt_/d;s/^.*: { *\(.*\)}$/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } .rela.dyn ${RELOCATING-0} : { EOF -sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;/__rel_iplt_/d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ +sed -e '/^[ ]*[{}][ ]*$/d;/:[ ]*$/d;/\.rel\./d;/__rel_iplt_/d;s/^.*: { *\(.*\)}/ \1/' $COMBRELOC >> ldscripts/dyntmp.$$ cat >> ldscripts/dyntmp.$$ <<EOF } EOF @@ -410,10 +410,10 @@ emit_dyn() cat ldscripts/dyntmp.$$ else if test -z "${NO_REL_RELOCS}"; then - sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d;/^[ ]*\.rela\./d;/__rela_iplt_/d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rela\.[^}]*$/,/}/d;/^[ ]*\.rela\./d;/__rela_iplt_/d' ldscripts/dyntmp.$$ fi if test -z "${NO_RELA_RELOCS}"; then - sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d;/^[ ]*\.rel\./d;/__rel_iplt_/d' ldscripts/dyntmp.$$ + sed -e '/^[ ]*\.rel\.[^}]*$/,/}/d;/^[ ]*\.rel\./d;/__rel_iplt_/d' ldscripts/dyntmp.$$ fi fi rm -f ldscripts/dyntmp.$$ diff --git a/ld/scripttempl/nw.sc b/ld/scripttempl/nw.sc index b721baa..09cc597 100644 --- a/ld/scripttempl/nw.sc +++ b/ld/scripttempl/nw.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -29,8 +29,8 @@ test -z "${BIG_OUTPUT_FORMAT}" && BIG_OUTPUT_FORMAT=${OUTPUT_FORMAT} test -z "${LITTLE_OUTPUT_FORMAT}" && LITTLE_OUTPUT_FORMAT=${OUTPUT_FORMAT} test "$LD_FLAG" = "N" && DATA_ADDR=. -INTERP=".interp ${RELOCATING-0} : { *(.interp) }" -PLT=".plt ${RELOCATING-0} : { *(.plt) }" +INTERP=".interp ${RELOCATING-0} : { *(.interp) }" +PLT=".plt ${RELOCATING-0} : { *(.plt) }" cat <<EOF /* Copyright (C) 2014-2017 Free Software Foundation, Inc. @@ -61,11 +61,11 @@ SECTIONS .dynsym ${RELOCATING-0} : { *(.dynsym) } .dynstr ${RELOCATING-0} : { *(.dynstr) } .rel.text ${RELOCATING-0} : { *(.rel.text) } - .rela.text ${RELOCATING-0} : { *(.rela.text) } + .rela.text ${RELOCATING-0} : { *(.rela.text) } .rel.data ${RELOCATING-0} : { *(.rel.data) } - .rela.data ${RELOCATING-0} : { *(.rela.data) } - .rel.rodata ${RELOCATING-0} : { *(.rel.rodata) } - .rela.rodata ${RELOCATING-0} : { *(.rela.rodata) } + .rela.data ${RELOCATING-0} : { *(.rela.data) } + .rel.rodata ${RELOCATING-0} : { *(.rel.rodata) } + .rela.rodata ${RELOCATING-0} : { *(.rela.rodata) } .rel.got ${RELOCATING-0} : { *(.rel.got) } .rela.got ${RELOCATING-0} : { *(.rela.got) } .rel.ctors ${RELOCATING-0} : { *(.rel.ctors) } diff --git a/ld/scripttempl/pe.sc b/ld/scripttempl/pe.sc index 5de44e5..3ca86d4 100644 --- a/ld/scripttempl/pe.sc +++ b/ld/scripttempl/pe.sc @@ -1,7 +1,7 @@ # Linker script for PE. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -21,13 +21,13 @@ if test "${RELOCATING}"; then R_TEXT='*(SORT(.text$*))' if test "x$LD_FLAG" = "xauto_import" ; then R_DATA='*(SORT(.data$*)) - *(.rdata) + *(.rdata) *(SORT(.rdata$*))' R_RDATA='' else R_DATA='*(SORT(.data$*))' R_RDATA='*(.rdata) - *(SORT(.rdata$*))' + *(SORT(.rdata$*))' fi R_IDATA234=' KEEP (SORT(*)(.idata$2)) @@ -197,7 +197,7 @@ SECTIONS ${R_IDATA67} } .CRT ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${RELOCATING+___crt_xc_start__ = . ;} ${R_CRT_XC} ${RELOCATING+___crt_xc_end__ = . ;} @@ -220,7 +220,7 @@ SECTIONS be at the beginning of the section to enable SECREL32 relocations with TLS data. */ .tls ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${RELOCATING+___tls_start__ = . ;} ${R_TLS} ${RELOCATING+___tls_end__ = . ;} diff --git a/ld/scripttempl/pep.sc b/ld/scripttempl/pep.sc index e972ec8..261a403 100644 --- a/ld/scripttempl/pep.sc +++ b/ld/scripttempl/pep.sc @@ -1,7 +1,7 @@ # Linker script for PE. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -21,13 +21,13 @@ if test "${RELOCATING}"; then R_TEXT='*(SORT(.text$*))' if test "x$LD_FLAG" = "xauto_import" ; then R_DATA='*(SORT(.data$*)) - *(.rdata) + *(.rdata) *(SORT(.rdata$*))' R_RDATA='' else R_DATA='*(SORT(.data$*))' R_RDATA='*(.rdata) - *(SORT(.rdata$*))' + *(SORT(.rdata$*))' fi R_IDATA234=' KEEP (SORT(*)(.idata$2)) @@ -202,7 +202,7 @@ SECTIONS ${R_IDATA67} } .CRT ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${RELOCATING+___crt_xc_start__ = . ;} ${R_CRT_XC} ${RELOCATING+___crt_xc_end__ = . ;} @@ -225,7 +225,7 @@ SECTIONS be at the beginning of the section to enable SECREL32 relocations with TLS data. */ .tls ${RELOCATING+BLOCK(__section_alignment__)} : - { + { ${RELOCATING+___tls_start__ = . ;} ${R_TLS} ${RELOCATING+___tls_end__ = . ;} diff --git a/ld/scripttempl/pj.sc b/ld/scripttempl/pj.sc index a08769a..1520b4a 100644 --- a/ld/scripttempl/pj.sc +++ b/ld/scripttempl/pj.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/ppcpe.sc b/ld/scripttempl/ppcpe.sc index d1b7267..c367fe8 100644 --- a/ld/scripttempl/ppcpe.sc +++ b/ld/scripttempl/ppcpe.sc @@ -3,7 +3,7 @@ # All new mistakes should be credited to Kim Knuttila (krk@cygnus.com) # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -26,13 +26,13 @@ ${LIB_SEARCH_DIRS} /* Much of this layout was determined by delving into .exe files for the box generated by other compilers/linkers/etc. This means that - if a particular feature did not happen to appear in one of the + if a particular feature did not happen to appear in one of the subject files, then it may not be yet supported. */ /* It's "mainCRTStartup", not "_mainCRTStartup", and it's located in one of the two .lib files (libc.lib and kernel32.lib) that currently - must be present on the link line. This means that you must use + must be present on the link line. This means that you must use "-u mainCRTStartup" to make sure it gets included in the link. */ @@ -42,23 +42,23 @@ SECTIONS { /* text - the usual meaning */ - .text ${RELOCATING+ __image_base__ + __section_alignment__ } : + .text ${RELOCATING+ __image_base__ + __section_alignment__ } : { ${RELOCATING+ *(.init);} *(.text) ${RELOCATING+ *(.text.*)} *(.gcc_except_table) - ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; - LONG (-1); *(.ctors); *(.ctor); LONG (0); } - ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; - LONG (-1); *(.dtors); *(.dtor); LONG (0); } + ${CONSTRUCTING+ ___CTOR_LIST__ = .; __CTOR_LIST__ = . ; + LONG (-1); *(.ctors); *(.ctor); LONG (0); } + ${CONSTRUCTING+ ___DTOR_LIST__ = .; __DTOR_LIST__ = . ; + LONG (-1); *(.dtors); *(.dtor); LONG (0); } ${RELOCATING+ *(.fini);} - ${RELOCATING+ etext = .}; + ${RELOCATING+ etext = .}; } /* rdata - Read Only Runtime Data - CTR sections: All of the CRT (read only C runtime data) sections - appear at the start of the .rdata (read only runtime data) + CTR sections: All of the CRT (read only C runtime data) sections + appear at the start of the .rdata (read only runtime data) section, in the following order. Don't know if it matters or not. Not all sections are always present either. .rdata: compiler generated read only data @@ -88,7 +88,7 @@ SECTIONS .edata BLOCK(__section_alignment__) : { - *(.edata); + *(.edata); } /* data - initialized data @@ -99,9 +99,9 @@ SECTIONS section, as opposed to being given a section of it's own. COMMON: */ - .data BLOCK(__section_alignment__) : + .data BLOCK(__section_alignment__) : { - __data_start__ = . ; + __data_start__ = . ; *(.ydata); *(.data); *(.data2); @@ -110,19 +110,19 @@ SECTIONS *(COMMON); __bss_end__ = . ; ${RELOCATING+ end = .}; - __data_end__ = . ; + __data_end__ = . ; } /* The exception handling table. A sequence of 5 word entries. Section address and extent are placed in the DataDirectory. */ .pdata BLOCK(__section_alignment__) : - { + { *(.pdata) - ; + ; } - /* The idata section is chock full of magic bits. + /* The idata section is chock full of magic bits. 1. Boundaries around various idata parts are used to initialize some of the fields of the DataDirectory. In particular, the magic for 2, 4 and 5 are known to be used. Some compilers @@ -133,7 +133,7 @@ SECTIONS The ".private.toc" sections are generated by the ppc bfd. The .toc variable is generated by gas, and resolved here. It is used to initialized function descriptors (and anyone else who - needs the address of the module's toc). The only thing + needs the address of the module's toc). The only thing interesting about it at all? Most ppc instructions using it have a 16bit displacement field. The convention for addressing is to initialize the .toc value to 32K past the start of the @@ -142,7 +142,7 @@ SECTIONS on this number or you get pretty stupid results. */ .idata BLOCK(__section_alignment__) : - { + { __idata2_magic__ = .; *(.idata\$2); __idata3_magic__ = .; @@ -164,21 +164,21 @@ SECTIONS /* reldata -- data that requires relocation */ .reldata BLOCK(__section_alignment__) : - { + { *(.reldata) - ; + ; } /* Resources */ .rsrc BLOCK(__section_alignment__) : - { + { *(.rsrc\$01) *(.rsrc\$02) ; } - .stab BLOCK(__section_alignment__) ${RELOCATING+(NOLOAD)} : + .stab BLOCK(__section_alignment__) ${RELOCATING+(NOLOAD)} : { [ .stab ] } @@ -188,26 +188,26 @@ SECTIONS [ .stabstr ] } - /* The .reloc section is currently generated by the dlltool from Steve + /* The .reloc section is currently generated by the dlltool from Steve Chamberlain in a second pass of linking. Section address and extent are placed in the DataDirectory. */ .reloc BLOCK(__section_alignment__) : - { + { *(.reloc) ; } /* We don't do anything useful with codeview debugger support or the - directive section (yet). Hopefully, we junk them correctly. + directive section (yet). Hopefully, we junk them correctly. */ - /DISCARD/ BLOCK(__section_alignment__) : + /DISCARD/ BLOCK(__section_alignment__) : { - *(.debug\$S) - *(.debug\$T) - *(.debug\$F) - *(.drectve) - ; - } + *(.debug\$S) + *(.debug\$T) + *(.debug\$F) + *(.drectve) + ; + } } EOF diff --git a/ld/scripttempl/psos.sc b/ld/scripttempl/psos.sc index c9db634..8ab6401 100644 --- a/ld/scripttempl/psos.sc +++ b/ld/scripttempl/psos.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -51,7 +51,7 @@ SECTIONS ${RELOCATING+ PROVIDE(_edata = .);} } .bss ${RELOCATING:-0} : - { + { ${RELOCATING+ PROVIDE(__bss = .);} *(.bss); *(zerovars); @@ -61,7 +61,7 @@ SECTIONS ${RELOCATING+ PROVIDE(_end = .);} ${RELOCATING+ PROVIDE(_FreeMemStart = .);} } - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { *(.stab); } diff --git a/ld/scripttempl/riscix.sc b/ld/scripttempl/riscix.sc index 65c833c..2e81337 100644 --- a/ld/scripttempl/riscix.sc +++ b/ld/scripttempl/riscix.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/sh.sc b/ld/scripttempl/sh.sc index d699693..15d77b9 100644 --- a/ld/scripttempl/sh.sc +++ b/ld/scripttempl/sh.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/sparccoff.sc b/ld/scripttempl/sparccoff.sc index b575e1f..c7f1377 100644 --- a/ld/scripttempl/sparccoff.sc +++ b/ld/scripttempl/sparccoff.sc @@ -2,7 +2,7 @@ # Based on i386coff.sc by Ian Taylor <ian@cygnus.com>. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -45,12 +45,12 @@ SECTIONS ${RELOCATING+ edata = .}; } .bss ${RELOCATING+ SIZEOF(.data) + ADDR(.data)} : - { + { *(.bss) *(COMMON) ${RELOCATING+ end = .}; } - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/st2000.sc b/ld/scripttempl/st2000.sc index 0351956..f1755cd 100644 --- a/ld/scripttempl/st2000.sc +++ b/ld/scripttempl/st2000.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -14,13 +14,13 @@ cat <<EOF OUTPUT_FORMAT("${OUTPUT_FORMAT}") OUTPUT_ARCH(${ARCH}) -SECTIONS -{ +SECTIONS +{ .text : - { - *(.text) + { + *(.text) *(.strings) - _etext = .; + _etext = .; *(.data) _edata = .; *(.bss) diff --git a/ld/scripttempl/tic30aout.sc b/ld/scripttempl/tic30aout.sc index 6814a7d..c374501 100644 --- a/ld/scripttempl/tic30aout.sc +++ b/ld/scripttempl/tic30aout.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/tic30coff.sc b/ld/scripttempl/tic30coff.sc index bba0992..8e02c2e 100644 --- a/ld/scripttempl/tic30coff.sc +++ b/ld/scripttempl/tic30coff.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -22,14 +22,14 @@ MEMORY ramblk1 : ORIGIN = 0x02027000, LENGTH = 0x1000 } -SECTIONS -{ +SECTIONS +{ .vectors 0x00000000 : { *(vectors) } - .text : + .text : { *(.text) } > rom diff --git a/ld/scripttempl/tic4xcoff.sc b/ld/scripttempl/tic4xcoff.sc index 396278f..c8a718e 100644 --- a/ld/scripttempl/tic4xcoff.sc +++ b/ld/scripttempl/tic4xcoff.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -27,11 +27,11 @@ # 6. EXT_ROM EXT_RAM (mpmode,extram,extrom) # 7. EXT_RAM EXT_RAM (mpmode,extram) # -# In MC mode, TEXT and DATA are copied into RAM by the bootloader. +# In MC mode, TEXT and DATA are copied into RAM by the bootloader. # # In MP mode with external ROM, DATA needs to be copied into RAM at boot time. # -# If there is external RAM it is better to use that and reserve the internal RAM +# If there is external RAM it is better to use that and reserve the internal RAM # for data buffers. However, the address of the external RAM needs to be specified. # # This emulation assumes config 7. @@ -126,32 +126,32 @@ SECTIONS } ${RELOCATING+ > ${TEXT_MEMORY}} /* Global initialised variables. */ .data : - { + { ${RELOCATING+ __data = .;} *(.data) ${RELOCATING+ __edata = .;} } ${RELOCATING+ > ${DATA_MEMORY}} /* Global uninitialised variables. */ .bss : { - ${RELOCATING+ __bss = .;} + ${RELOCATING+ __bss = .;} *(.bss) *(COMMON) ${RELOCATING+ __end = .;} } ${RELOCATING+ > ${DATA_MEMORY}} /* Heap. */ .heap : - { - ${RELOCATING+ __heap = .;} + { + ${RELOCATING+ __heap = .;} ${RELOCATING+ . += __HEAP_SIZE}; } ${RELOCATING+ > ${DATA_MEMORY}} /* Stack (grows upward). */ .stack : - { - ${RELOCATING+ __stack = .;} + { + ${RELOCATING+ __stack = .;} *(.stack) - ${RELOCATING+ . = . + __STACK_SIZE}; + ${RELOCATING+ . = . + __STACK_SIZE}; } ${RELOCATING+ > ${DATA_MEMORY}} - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/tic54xcoff.sc b/ld/scripttempl/tic54xcoff.sc index 75d81d2..8bc8cb3 100644 --- a/ld/scripttempl/tic54xcoff.sc +++ b/ld/scripttempl/tic54xcoff.sc @@ -2,7 +2,7 @@ # patterned after description in TI Assembler Tools PDF, SPRU102C, 7-53 # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -27,16 +27,16 @@ MEMORY ${RELOCATING+ENTRY (${ENTRY})} -SECTIONS -{ - .text : +SECTIONS +{ + .text : { ___text__ = .; *(.text) etext = .; ___etext__ = .; } > prog - .data : + .data : { ___data__ = .; __data = .; @@ -46,11 +46,11 @@ SECTIONS ___edata__ = .; } > prog /* all other initialized sections should be allocated here */ - .cinit : + .cinit : { *(.cinit) } > prog - .bss : + .bss : { ___bss__ = .; __bss = .; diff --git a/ld/scripttempl/tic80coff.sc b/ld/scripttempl/tic80coff.sc index eeeb236..750af9e 100644 --- a/ld/scripttempl/tic80coff.sc +++ b/ld/scripttempl/tic80coff.sc @@ -1,7 +1,7 @@ # Linker script for TI TMS320C80 (tic80) COFF. # # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -67,14 +67,14 @@ SECTIONS *(.data) ${RELOCATING+ __edata = .}; } - .bss : { + .bss : { ${RELOCATING+ __bss_start = .}; *(.bss) *(COMMON) ${RELOCATING+ _end = ALIGN(0x8)}; ${RELOCATING+ __end = ALIGN(0x8)}; } - .stab 0 ${RELOCATING+(NOLOAD)} : + .stab 0 ${RELOCATING+(NOLOAD)} : { [ .stab ] } diff --git a/ld/scripttempl/v850.sc b/ld/scripttempl/v850.sc index 76e7e9a..1ad2ac1 100644 --- a/ld/scripttempl/v850.sc +++ b/ld/scripttempl/v850.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -78,7 +78,7 @@ SECTIONS { *(.text) ${RELOCATING+*(.text.*)} - + /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) *(.gnu.linkonce.t*) @@ -96,7 +96,7 @@ SECTIONS ${RELOCATING+PROVIDE(__ctbp = .);} *(.call_table_data) } = 0xff /* Fill gaps with 0xff. */ - + .call_table_text : { *(.call_table_text) @@ -153,7 +153,7 @@ SECTIONS /* 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 ${SDATA_START_ADDR} : { ${RELOCATING+PROVIDE (__gp = . + 0x8000);} @@ -170,7 +170,7 @@ SECTIONS it can directly precede the .bss section. This allows runtime startup code to initialise all the zero-data sections by simply taking the value of '_edata' and zeroing until it reaches '_end'. */ - + .sbss : { ${RELOCATING+__sbss_start = .;} @@ -194,7 +194,7 @@ SECTIONS ${RELOCATING+PROVIDE (end = .);} ${RELOCATING+PROVIDE (_heap_start = .);} - .note.renesas 0 : { KEEP(*(.note.renesas)) } + .note.renesas 0 : { KEEP(*(.note.renesas)) } /* Stabs debugging sections. */ .stab 0 : { *(.stab) } diff --git a/ld/scripttempl/v850_rh850.sc b/ld/scripttempl/v850_rh850.sc index 85e33d4..bd46283 100644 --- a/ld/scripttempl/v850_rh850.sc +++ b/ld/scripttempl/v850_rh850.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -82,7 +82,7 @@ SECTIONS { *(.text) ${RELOCATING+*(.text.*)} - + /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) *(.gnu.linkonce.t*) @@ -100,7 +100,7 @@ SECTIONS ${RELOCATING+PROVIDE(__ctbp = .);} *(.call_table_data) } = 0xff /* Fill gaps with 0xff. */ - + .call_table_text : { *(.call_table_text) @@ -169,7 +169,7 @@ SECTIONS /* 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 ${SDATA_START_ADDR} : { ${RELOCATING+PROVIDE (__gp = . + 0x8000);} @@ -189,7 +189,7 @@ SECTIONS it can directly precede the .bss section. This allows runtime startup code to initialise all the zero-data sections by simply taking the value of '_edata' and zeroing until it reaches '_end'. */ - + .sbss : { ${RELOCATING+__sbss_start = .;} @@ -214,7 +214,7 @@ SECTIONS ${RELOCATING+PROVIDE (end = .);} ${RELOCATING+PROVIDE (_heap_start = .);} - .note.renesas 0 : { KEEP(*(.note.renesas)) } + .note.renesas 0 : { KEEP(*(.note.renesas)) } /* Stabs debugging sections. */ .stab 0 : { *(.stab) } diff --git a/ld/scripttempl/vanilla.sc b/ld/scripttempl/vanilla.sc index 0f1f480..270b8fe 100644 --- a/ld/scripttempl/vanilla.sc +++ b/ld/scripttempl/vanilla.sc @@ -1,6 +1,6 @@ # Nothing to do. # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. diff --git a/ld/scripttempl/visium.sc b/ld/scripttempl/visium.sc index 1a3c1fe..796095f 100644 --- a/ld/scripttempl/visium.sc +++ b/ld/scripttempl/visium.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -134,7 +134,7 @@ SECTIONS ${RELOCATING+ . = ALIGN(4);} ${RELOCATING+ _edata = .;} } ${RELOCATING+ > ram} - .bss ${RELOCATING-0} : { + .bss ${RELOCATING-0} : { ${RELOCATING+ . = ALIGN(4);} ${RELOCATING+ __bss_start = .;} *(.bss) diff --git a/ld/scripttempl/w65.sc b/ld/scripttempl/w65.sc index 7f6abb9..e457782 100644 --- a/ld/scripttempl/w65.sc +++ b/ld/scripttempl/w65.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -29,13 +29,13 @@ MEMORY ram : o = 0x1000, l = 512k } -SECTIONS -{ +SECTIONS +{ .text : - { - *(.text) + { + *(.text) *(.strings) - ${RELOCATING+ _etext = . ; } + ${RELOCATING+ _etext = . ; } } ${RELOCATING+ > ram} ${CONSTRUCTING+${TORS}} @@ -45,7 +45,7 @@ SECTIONS *(.data) ${RELOCATING+ _edata = . ; } } ${RELOCATING+ > ram} - + .bss : { ${RELOCATING+ _bss_start = . ; } @@ -53,18 +53,18 @@ SECTIONS *(COMMON) ${RELOCATING+ _end = . ; } } ${RELOCATING+ >ram} - + .stack ${RELOCATING+ 0x30000 } : { ${RELOCATING+ _stack = . ; } *(.stack) } ${RELOCATING+ > ram} - + .stab . (NOLOAD) : { [ .stab ] } - + .stabstr . (NOLOAD) : { [ .stabstr ] diff --git a/ld/scripttempl/xstormy16.sc b/ld/scripttempl/xstormy16.sc index 3be376a..17e63ce 100644 --- a/ld/scripttempl/xstormy16.sc +++ b/ld/scripttempl/xstormy16.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -25,9 +25,9 @@ # .bss section besides __bss_start. # INPUT_FILES - INPUT command of files to always include # INIT_START, INIT_END - statements just before and just after -# combination of .init sections. +# combination of .init sections. # FINI_START, FINI_END - statements just before and just after -# combination of .fini sections. +# combination of .fini sections. # # When adding sections, do note that the names of some sections are used # when specifying the start address of the next. @@ -59,7 +59,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 -z "${ELFSIZE}" && ELFSIZE=32 test -z "${ALIGNMENT}" && ALIGNMENT="${ELFSIZE} / 8" -CTOR=".ctors ${CONSTRUCTING-0} : +CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} /* gcc uses crtbegin.o to find the start of @@ -119,7 +119,7 @@ ${RELOCATING- /* For some reason, the Solaris linker makes bad executables /* There are two memory regions we care about, one from 0 through 0x7F00 that is RAM and one from 0x8000 up which is ROM. */ -MEMORY +MEMORY { RAM (w) : ORIGIN = 0, LENGTH = 0x7F00 ROM (!w) : ORIGIN = 0x8000, LENGTH = 0xFF8000 @@ -185,8 +185,8 @@ SECTIONS ${RELOCATING+*(.gnu.linkonce.t.*)} ${RELOCATING+${OTHER_TEXT_SECTIONS}} } ${RELOCATING+> ROM =${NOP-0}} - .init ${RELOCATING-0} : - { + .init ${RELOCATING-0} : + { ${RELOCATING+${INIT_START}} KEEP (*(.init)) ${RELOCATING+${INIT_END}} diff --git a/ld/scripttempl/z80.sc b/ld/scripttempl/z80.sc index 34127a6..6f156c4 100644 --- a/ld/scripttempl/z80.sc +++ b/ld/scripttempl/z80.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -19,7 +19,7 @@ OUTPUT_FORMAT("binary") __Ltext = .; ENTRY (__Ltext) EOF -else +else echo "OUTPUT_FORMAT(\"${OUTPUT_FORMAT}\")" fi cat <<EOF diff --git a/ld/scripttempl/z8000.sc b/ld/scripttempl/z8000.sc index db4a454..df1b43c 100644 --- a/ld/scripttempl/z8000.sc +++ b/ld/scripttempl/z8000.sc @@ -1,5 +1,5 @@ # Copyright (C) 2014-2017 Free Software Foundation, Inc. -# +# # Copying and distribution of this file, with or without modification, # are permitted in any medium without royalty provided the copyright # notice and this notice are preserved. @@ -15,16 +15,16 @@ OUTPUT_FORMAT("${OUTPUT_FORMAT}") OUTPUT_ARCH("${OUTPUT_ARCH}") ${RELOCATING+ENTRY (_start)} -SECTIONS -{ +SECTIONS +{ .text ${BIG+ ${RELOCATING+ 0x0000000}} : - { - *(.text) + { + *(.text) *(.strings) *(.rdata) } -.ctors ${BIG+ ${RELOCATING+ 0x2000000}} : +.ctors ${BIG+ ${RELOCATING+ 0x2000000}} : { ${CONSTRUCTING+ ___ctors = . ; } *(.ctors); @@ -32,14 +32,14 @@ SECTIONS ___dtors = . ; *(.dtors); ${CONSTRUCTING+ ___dtors_end = . ; } - } + } .data ${BIG+ ${RELOCATING+ 0x3000000}} : { *(.data) } -.bss ${BIG+ ${RELOCATING+ 0x4000000}} : +.bss ${BIG+ ${RELOCATING+ 0x4000000}} : { ${RELOCATING+ __start_bss = . ; } *(.bss); @@ -52,9 +52,9 @@ SECTIONS ${RELOCATING+ __start_heap = . ; } ${RELOCATING+ . = . + 20k ; } ${RELOCATING+ __end_heap = . ; } - } + } -.stack ${RELOCATING+ 0xf000 } : +.stack ${RELOCATING+ 0xf000 } : { ${RELOCATING+ _stack = . ; } *(.stack) |