diff options
author | Richard Henderson <rth@redhat.com> | 1999-05-03 07:29:11 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 1999-05-03 07:29:11 +0000 |
commit | 252b5132c753830d5fd56823373aed85f2a0db63 (patch) | |
tree | 1af963bfd8d3e55167b81def4207f175eaff3a56 /ld/emulparams | |
download | gdb-252b5132c753830d5fd56823373aed85f2a0db63.zip gdb-252b5132c753830d5fd56823373aed85f2a0db63.tar.gz gdb-252b5132c753830d5fd56823373aed85f2a0db63.tar.bz2 |
19990502 sourceware importbinu_ss_19990502
Diffstat (limited to 'ld/emulparams')
116 files changed, 1186 insertions, 0 deletions
diff --git a/ld/emulparams/README b/ld/emulparams/README new file mode 100644 index 0000000..b3d6d26 --- /dev/null +++ b/ld/emulparams/README @@ -0,0 +1,2 @@ +The files in this directory are read by genscripts.sh as shell commands. +They set parameters for the emulations. diff --git a/ld/emulparams/a29k.sh b/ld/emulparams/a29k.sh new file mode 100644 index 0000000..89c8e85 --- /dev/null +++ b/ld/emulparams/a29k.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=a29k +OUTPUT_FORMAT="coff-a29k-big" +TEXT_START_ADDR=0x1000000 +TARGET_PAGE_SIZE=0x1000000 +ARCH=a29k diff --git a/ld/emulparams/aixppc.sh b/ld/emulparams/aixppc.sh new file mode 100644 index 0000000..f92e686 --- /dev/null +++ b/ld/emulparams/aixppc.sh @@ -0,0 +1,4 @@ +TEMPLATE_NAME=aix +SCRIPT_NAME=aix +OUTPUT_FORMAT="aixcoff-rs6000" +ARCH=powerpc diff --git a/ld/emulparams/aixrs6.sh b/ld/emulparams/aixrs6.sh new file mode 100644 index 0000000..733c3f7 --- /dev/null +++ b/ld/emulparams/aixrs6.sh @@ -0,0 +1,4 @@ +TEMPLATE_NAME=aix +SCRIPT_NAME=aix +OUTPUT_FORMAT="aixcoff-rs6000" +ARCH=rs6000 diff --git a/ld/emulparams/alpha.sh b/ld/emulparams/alpha.sh new file mode 100644 index 0000000..141923f --- /dev/null +++ b/ld/emulparams/alpha.sh @@ -0,0 +1,3 @@ +SCRIPT_NAME=alpha +OUTPUT_FORMAT="ecoff-littlealpha" +ARCH=alpha diff --git a/ld/emulparams/arcelf.sh b/ld/emulparams/arcelf.sh new file mode 100644 index 0000000..b1c9c17 --- /dev/null +++ b/ld/emulparams/arcelf.sh @@ -0,0 +1,11 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlearc" +LITTLE_OUTPUT_FORMAT="elf32-littlearc" +BIG_OUTPUT_FORMAT="elf32-bigarc" +TEXT_START_ADDR=0x0 +MAXPAGESIZE=0x1000 +NONPAGED_TEXT_START_ADDR=0x0 +ARCH=arc +MACHINE= +ENTRY=start +#TEMPLATE_NAME=elf32 diff --git a/ld/emulparams/arm_epoc_pe.sh b/ld/emulparams/arm_epoc_pe.sh new file mode 100644 index 0000000..816fa2a --- /dev/null +++ b/ld/emulparams/arm_epoc_pe.sh @@ -0,0 +1,6 @@ +ARCH=arm +SCRIPT_NAME=pe +OUTPUT_FORMAT="epoc-pei-arm-little" +LITTLE_OUTPUT_FORMAT="epoc-pei-arm-little" +BIG_OUTPUT_FORMAT="epoc-pei-arm-big" +TEMPLATE_NAME=pe diff --git a/ld/emulparams/armaoutb.sh b/ld/emulparams/armaoutb.sh new file mode 100644 index 0000000..59ab6f1 --- /dev/null +++ b/ld/emulparams/armaoutb.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=armaout +OUTPUT_FORMAT="a.out-arm-big" +HEADER_START_ADDR=0x8000 +TEXT_START_ADDR=0x8000 +NONPAGED_TEXT_START_ADDRESS=0x8000 +TARGET_PAGE_SIZE=32768 +ARCH=arm diff --git a/ld/emulparams/armaoutl.sh b/ld/emulparams/armaoutl.sh new file mode 100644 index 0000000..9501f33 --- /dev/null +++ b/ld/emulparams/armaoutl.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=armaout +OUTPUT_FORMAT="a.out-arm-little" +HEADER_START_ADDR=0x8000 +TEXT_START_ADDR=0x8000 +NONPAGED_TEXT_START_ADDRESS=0x8000 +TARGET_PAGE_SIZE=32768 +ARCH=arm diff --git a/ld/emulparams/armcoff.sh b/ld/emulparams/armcoff.sh new file mode 100644 index 0000000..91df7d3 --- /dev/null +++ b/ld/emulparams/armcoff.sh @@ -0,0 +1,6 @@ +ARCH=arm +SCRIPT_NAME=armcoff +OUTPUT_FORMAT="coff-arm-little" +LITTLE_OUTPUT_FORMAT="coff-arm-little" +BIG_OUTPUT_FORMAT="coff-arm-big" +TEMPLATE_NAME=armcoff diff --git a/ld/emulparams/armelf.sh b/ld/emulparams/armelf.sh new file mode 100644 index 0000000..2b8b02b --- /dev/null +++ b/ld/emulparams/armelf.sh @@ -0,0 +1,21 @@ +MACHINE= +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlearm" +BIG_OUTPUT_FORMAT="elf32-bigarm" +LITTLE_OUTPUT_FORMAT="elf32-littlearm" +TEXT_START_ADDR=0x8000 +TEMPLATE_NAME=armelf +OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)' +OTHER_BSS_SYMBOLS='__bss_start__ = .;' +OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;' + + +ARCH=arm +MACHINE= +MAXPAGESIZE=256 +ENTRY=_start +EMBEDDED=yes + +# Hmmm, there's got to be a better way. This sets the stack to the +# top of the simulator memory (2^19 bytes). +OTHER_RELOCATING_SECTIONS='.stack 0x80000 : { _stack = .; *(.stack) }' diff --git a/ld/emulparams/armelf_linux.sh b/ld/emulparams/armelf_linux.sh new file mode 100644 index 0000000..2d7d57b --- /dev/null +++ b/ld/emulparams/armelf_linux.sh @@ -0,0 +1,17 @@ +ARCH=arm +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlearm" +BIG_OUTPUT_FORMAT="elf32-bigarm" +LITTLE_OUTPUT_FORMAT="elf32-littlearm" +MAXPAGESIZE=0x8000 +TEMPLATE_NAME=armelf + +OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)' +OTHER_BSS_SYMBOLS='__bss_start__ = .;' +OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;' + +# This needs to be high enough so that we can load ld.so below it, +# yet low enough to stay away from the mmap area 0x40000000. +# Also, it is small enough so that relocs which are pointing +# at absolute 0 will still be fixed up. +TEXT_START_ADDR=0x02000000 diff --git a/ld/emulparams/armelf_linux26.sh b/ld/emulparams/armelf_linux26.sh new file mode 100644 index 0000000..7153ddc --- /dev/null +++ b/ld/emulparams/armelf_linux26.sh @@ -0,0 +1,16 @@ +ARCH=arm +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlearm" +BIG_OUTPUT_FORMAT="elf32-bigarm" +LITTLE_OUTPUT_FORMAT="elf32-littlearm" +MAXPAGESIZE=0x8000 +TEMPLATE_NAME=armelf +GENERATE_SHLIB_SCRIPT=yes + +# This needs to be high enough so that we can load ld.so below it, +# yet low enough to stay away from the mmap area at 0x01100000. +# Also, it is small enough so that relocs which are pointing +# at absolute 0 will still be fixed up. +# These values give us about 0.5MB for ld.so, 16.5MB for user +# programs, and 15MB for mmap which seems a reasonable compromise. +TEXT_START_ADDR=0x00080000 diff --git a/ld/emulparams/armelf_oabi.sh b/ld/emulparams/armelf_oabi.sh new file mode 100644 index 0000000..257753e --- /dev/null +++ b/ld/emulparams/armelf_oabi.sh @@ -0,0 +1,21 @@ +MACHINE= +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlearm-oabi" +BIG_OUTPUT_FORMAT="elf32-bigarm-oabi" +LITTLE_OUTPUT_FORMAT="elf32-littlearm-oabi" +TEXT_START_ADDR=0x8000 +TEMPLATE_NAME=armelf +OTHER_TEXT_SECTIONS='*(.glue_7t) *(.glue_7)' +OTHER_BSS_SYMBOLS='__bss_start__ = .;' +OTHER_BSS_END_SYMBOLS='_bss_end__ = . ; __bss_end__ = . ;' + + +ARCH=arm +MACHINE= +MAXPAGESIZE=256 +ENTRY=_start +EMBEDDED=yes + +# Hmmm, there's got to be a better way. This sets the stack to the +# top of the simulator memory (2^19 bytes). +OTHER_RELOCATING_SECTIONS='.stack 0x80000 : { _stack = .; *(.stack) }' diff --git a/ld/emulparams/armpe.sh b/ld/emulparams/armpe.sh new file mode 100644 index 0000000..2246805 --- /dev/null +++ b/ld/emulparams/armpe.sh @@ -0,0 +1,6 @@ +ARCH=arm +SCRIPT_NAME=pe +OUTPUT_FORMAT="pei-arm-little" +LITTLE_OUTPUT_FORMAT="pei-arm-little" +BIG_OUTPUT_FORMAT="pei-arm-big" +TEMPLATE_NAME=pe diff --git a/ld/emulparams/coff_sparc.sh b/ld/emulparams/coff_sparc.sh new file mode 100644 index 0000000..0cf852a --- /dev/null +++ b/ld/emulparams/coff_sparc.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=sparccoff +OUTPUT_FORMAT="coff-sparc" +# following are dubious (borrowed from sparc lynx) +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0x1000 +ARCH=sparc diff --git a/ld/emulparams/d10velf.sh b/ld/emulparams/d10velf.sh new file mode 100644 index 0000000..bcce51f --- /dev/null +++ b/ld/emulparams/d10velf.sh @@ -0,0 +1,9 @@ +MACHINE= +SCRIPT_NAME=elfd10v +OUTPUT_FORMAT="elf32-d10v" +TEXT_START_ADDR=0x01000000 +READONLY_START_ADDR=0x00000004 +ARCH=d10v +MAXPAGESIZE=32 +EMBEDDED=t +TEMPLATE_NAME=elf32 diff --git a/ld/emulparams/d30v_e.sh b/ld/emulparams/d30v_e.sh new file mode 100644 index 0000000..a8ab5a2 --- /dev/null +++ b/ld/emulparams/d30v_e.sh @@ -0,0 +1,20 @@ +MACHINE= +SCRIPT_NAME=elfd30v +OUTPUT_FORMAT="elf32-d30v" +TEXT_START_ADDR=0x00000000 +DATA_START_ADDR=0x20000000 +EMEM_START_ADDR=0x80000000 +STACK_START_ADDR=0x20008000 +EIT_START_ADDR=0xfffff020 +TEXT_SIZE=64K +DATA_SIZE=32K +EMEM_SIZE=8M +EIT_SIZE=320 +TEXT_MEMORY=emem +DATA_MEMORY=emem +BSS_MEMORY=emem +TEXT_DEF_SECTION="" +DATA_DEF_SECTION="" +EMEM_DEF_SECTION="(rwx)" +ARCH=d30v +EMBEDDED=t diff --git a/ld/emulparams/d30v_o.sh b/ld/emulparams/d30v_o.sh new file mode 100644 index 0000000..6cbcb42 --- /dev/null +++ b/ld/emulparams/d30v_o.sh @@ -0,0 +1,20 @@ +MACHINE= +SCRIPT_NAME=elfd30v +OUTPUT_FORMAT="elf32-d30v" +TEXT_START_ADDR=0x00000000 +DATA_START_ADDR=0x20000000 +EMEM_START_ADDR=0x80000000 +STACK_START_ADDR=0x20008000 +EIT_START_ADDR=0xfffff020 +TEXT_SIZE=64K +DATA_SIZE=32K +EMEM_SIZE=8M +EIT_SIZE=320 +TEXT_MEMORY=text +DATA_MEMORY=data +BSS_MEMORY=data +TEXT_DEF_SECTION="(x)" +DATA_DEF_SECTION="(rw)" +EMEM_DEF_SECTION="" +ARCH=d30v +EMBEDDED=t diff --git a/ld/emulparams/d30velf.sh b/ld/emulparams/d30velf.sh new file mode 100644 index 0000000..949de78 --- /dev/null +++ b/ld/emulparams/d30velf.sh @@ -0,0 +1,20 @@ +MACHINE= +SCRIPT_NAME=elfd30v +OUTPUT_FORMAT="elf32-d30v" +TEXT_START_ADDR=0x00000000 +DATA_START_ADDR=0x20000000 +EMEM_START_ADDR=0x80000000 +STACK_START_ADDR=0x20008000 +EIT_START_ADDR=0xfffff020 +TEXT_SIZE=2000K +DATA_SIZE=2000K +EMEM_SIZE=8M +EIT_SIZE=320 +TEXT_MEMORY=text +DATA_MEMORY=data +BSS_MEMORY=data +TEXT_DEF_SECTION="(x)" +DATA_DEF_SECTION="(rw)" +EMEM_DEF_SECTION="" +ARCH=d30v +EMBEDDED=t diff --git a/ld/emulparams/delta68.sh b/ld/emulparams/delta68.sh new file mode 100644 index 0000000..e3c5909 --- /dev/null +++ b/ld/emulparams/delta68.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=delta68 +OUTPUT_FORMAT="coff-m68k-sysv" +TEXT_START_ADDR=0x2000 +PAGE_SIZE=0x1000000 +ARCH=m68k diff --git a/ld/emulparams/ebmon29k.sh b/ld/emulparams/ebmon29k.sh new file mode 100644 index 0000000..fbc2bd1 --- /dev/null +++ b/ld/emulparams/ebmon29k.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=ebmon29k +OUTPUT_FORMAT="coff-a29k-big" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=0x1000 +ARCH=a29k diff --git a/ld/emulparams/elf32_sparc.sh b/ld/emulparams/elf32_sparc.sh new file mode 100644 index 0000000..74e2326 --- /dev/null +++ b/ld/emulparams/elf32_sparc.sh @@ -0,0 +1,11 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-sparc" +TEXT_START_ADDR=0x10000 +MAXPAGESIZE=0x10000 +NONPAGED_TEXT_START_ADDR=0x10000 +ALIGNMENT=8 +ARCH=sparc +MACHINE= +TEMPLATE_NAME=elf32 +DATA_PLT= +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/elf32b4300.sh b/ld/emulparams/elf32b4300.sh new file mode 100644 index 0000000..24f8d98 --- /dev/null +++ b/ld/emulparams/elf32b4300.sh @@ -0,0 +1,29 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-bigmips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0xa0020000 +MAXPAGESIZE=0x40000 +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +EXECUTABLE_SYMBOLS='_DYNAMIC_LINK = 0;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +DYNAMIC_LINK=false +EMBEDDED=yes diff --git a/ld/emulparams/elf32bmip.sh b/ld/emulparams/elf32bmip.sh new file mode 100644 index 0000000..473c411 --- /dev/null +++ b/ld/emulparams/elf32bmip.sh @@ -0,0 +1,30 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-bigmips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0x0400000 +DATA_ADDR=0x10000000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +TEXT_DYNAMIC= +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/elf32bsmip.sh b/ld/emulparams/elf32bsmip.sh new file mode 100644 index 0000000..09f1307 --- /dev/null +++ b/ld/emulparams/elf32bsmip.sh @@ -0,0 +1,31 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-bigmips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0x0400000 +DATA_ADDR=0x10000000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +TEXT_DYNAMIC= +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +ENTRY=__start diff --git a/ld/emulparams/elf32ebmip.sh b/ld/emulparams/elf32ebmip.sh new file mode 100644 index 0000000..00ea8fd --- /dev/null +++ b/ld/emulparams/elf32ebmip.sh @@ -0,0 +1,28 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-bigmips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0x0400000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +EMBEDDED=yes diff --git a/ld/emulparams/elf32elmip.sh b/ld/emulparams/elf32elmip.sh new file mode 100644 index 0000000..cf008c8 --- /dev/null +++ b/ld/emulparams/elf32elmip.sh @@ -0,0 +1,28 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlemips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0x0400000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +EMBEDDED=yes diff --git a/ld/emulparams/elf32fr30.sh b/ld/emulparams/elf32fr30.sh new file mode 100755 index 0000000..1be1f53 --- /dev/null +++ b/ld/emulparams/elf32fr30.sh @@ -0,0 +1,10 @@ +MACHINE= +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-fr30" +TEXT_START_ADDR=0x10000 +ARCH=fr30 +MAXPAGESIZE=256 +ENTRY=_start +EMBEDDED=yes +NOP=0x9fa0 +OTHER_RELOCATING_SECTIONS='PROVIDE (__stack = 0x200000);'
\ No newline at end of file diff --git a/ld/emulparams/elf32l4300.sh b/ld/emulparams/elf32l4300.sh new file mode 100644 index 0000000..690de88 --- /dev/null +++ b/ld/emulparams/elf32l4300.sh @@ -0,0 +1,29 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlemips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0xa0020000 +MAXPAGESIZE=0x40000 +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +EXECUTABLE_SYMBOLS='_DYNAMIC_LINK = 0;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +DYNAMIC_LINK=false +EMBEDDED=yes diff --git a/ld/emulparams/elf32lmip.sh b/ld/emulparams/elf32lmip.sh new file mode 100644 index 0000000..23312f4 --- /dev/null +++ b/ld/emulparams/elf32lmip.sh @@ -0,0 +1,30 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlemips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0x0400000 +DATA_ADDR=0x10000000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +TEXT_DYNAMIC= +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/elf32lppc.sh b/ld/emulparams/elf32lppc.sh new file mode 100644 index 0000000..edffc61 --- /dev/null +++ b/ld/emulparams/elf32lppc.sh @@ -0,0 +1,8 @@ +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +SCRIPT_NAME=elfppc +OUTPUT_FORMAT="elf32-powerpcle" +TEXT_START_ADDR=0x40000 +MAXPAGESIZE=0x40000 +ARCH=powerpc +MACHINE= diff --git a/ld/emulparams/elf32lsmip.sh b/ld/emulparams/elf32lsmip.sh new file mode 100644 index 0000000..4bdc8a1 --- /dev/null +++ b/ld/emulparams/elf32lsmip.sh @@ -0,0 +1,31 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-littlemips" +BIG_OUTPUT_FORMAT="elf32-bigmips" +LITTLE_OUTPUT_FORMAT="elf32-littlemips" +TEXT_START_ADDR=0x0400000 +DATA_ADDR=0x10000000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +SHLIB_TEXT_START_ADDR=0x5ffe0000 +TEXT_DYNAMIC= +INITIAL_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' +OTHER_TEXT_SECTIONS='*(.mips16.fn.*) *(.mips16.call.*)' +OTHER_GOT_SYMBOLS=' + _gp = ALIGN(16) + 0x7ff0; +' +OTHER_GOT_SECTIONS=' + .lit8 : { *(.lit8) } + .lit4 : { *(.lit4) } +' +TEXT_START_SYMBOLS='_ftext = . ;' +DATA_START_SYMBOLS='_fdata = . ;' +OTHER_BSS_SYMBOLS='_fbss = .;' +OTHER_SECTIONS=' + .gptab.sdata : { *(.gptab.data) *(.gptab.sdata) } + .gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) } +' +ARCH=mips +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +ENTRY=__start diff --git a/ld/emulparams/elf32mcore.sh b/ld/emulparams/elf32mcore.sh new file mode 100644 index 0000000..47d960f --- /dev/null +++ b/ld/emulparams/elf32mcore.sh @@ -0,0 +1,20 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-mcore-big" +BIG_OUTPUT_FORMAT="elf32-mcore-big" +LITTLE_OUTPUT_FORMAT="elf32-mcore-little" +PAGE_SIZE=0x1000 +TARGET_PAGE_SIZE=0x400 +MAXPAGESIZE=0x1000 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0 +ARCH=mcore +# 1211 == mov r1,r1 +NOP=0x1211 +EMBEDDED=yes + +OTHER_BSS_SYMBOLS="__bss_start__ = . ;" +OTHER_BSS_END_SYMBOLS="__bss_end__ = . ;" + +# Hmmm, there's got to be a better way. This sets the stack to the +# top of the simulator memory (2^19 bytes). +OTHER_RELOCATING_SECTIONS='.stack 0x80000 : { _stack = .; *(.stack) }' diff --git a/ld/emulparams/elf32ppc.sh b/ld/emulparams/elf32ppc.sh new file mode 100644 index 0000000..8af42f1 --- /dev/null +++ b/ld/emulparams/elf32ppc.sh @@ -0,0 +1,8 @@ +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +SCRIPT_NAME=elfppc +OUTPUT_FORMAT="elf32-powerpc" +TEXT_START_ADDR=0x01800000 +MAXPAGESIZE=0x40000 +ARCH=powerpc +MACHINE= diff --git a/ld/emulparams/elf64_sparc.sh b/ld/emulparams/elf64_sparc.sh new file mode 100644 index 0000000..d0fbdfd --- /dev/null +++ b/ld/emulparams/elf64_sparc.sh @@ -0,0 +1,12 @@ +SCRIPT_NAME=elf +ELFSIZE=64 +TEMPLATE_NAME=elf32 +OUTPUT_FORMAT="elf64-sparc" +TEXT_START_ADDR=0x100000 +MAXPAGESIZE=0x100000 +NONPAGED_TEXT_START_ADDR=0x100000 +ARCH="sparc:v9" +MACHINE= +DATA_PLT= +GENERATE_SHLIB_SCRIPT=yes +NOP=0x01000000 diff --git a/ld/emulparams/elf64alpha.sh b/ld/emulparams/elf64alpha.sh new file mode 100644 index 0000000..afa21f2 --- /dev/null +++ b/ld/emulparams/elf64alpha.sh @@ -0,0 +1,15 @@ +ENTRY=__start +SCRIPT_NAME=elf +ELFSIZE=64 +TEMPLATE_NAME=elf32 +OUTPUT_FORMAT="elf64-alpha" +TEXT_START_ADDR="0x120000000" +MAXPAGESIZE=0x100000 +NONPAGED_TEXT_START_ADDR="0x120000000" +ARCH=alpha +MACHINE= +GENERATE_SHLIB_SCRIPT=yes +DATA_PLT= +NOP=0x47ff041f + +OTHER_READONLY_SECTIONS='.reginfo : { *(.reginfo) }' diff --git a/ld/emulparams/elf_i386.sh b/ld/emulparams/elf_i386.sh new file mode 100644 index 0000000..dff567b --- /dev/null +++ b/ld/emulparams/elf_i386.sh @@ -0,0 +1,10 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-i386" +TEXT_START_ADDR=0x08048000 +MAXPAGESIZE=0x1000 +NONPAGED_TEXT_START_ADDR=0x08048000 +ARCH=i386 +MACHINE= +NOP=0x9090 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/elf_i386_be.sh b/ld/emulparams/elf_i386_be.sh new file mode 100644 index 0000000..9977a06 --- /dev/null +++ b/ld/emulparams/elf_i386_be.sh @@ -0,0 +1,11 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-i386" +TEXT_START_ADDR=0x80000000 +#SHLIB_TEXT_START_ADDR=0x80000000 +NONPAGED_TEXT_START_ADDR=0x80000000 +MAXPAGESIZE=0x1000 +ARCH=i386 +MACHINE= +NOP=0x9090 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/gld960.sh b/ld/emulparams/gld960.sh new file mode 100644 index 0000000..ef81a78 --- /dev/null +++ b/ld/emulparams/gld960.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=i960 +OUTPUT_FORMAT="" +TEXT_START_ADDR=?? +TARGET_PAGE_SIZE=?? +ARCH=i960 +TEMPLATE_NAME=gld960 +GLD_STYLE=1 diff --git a/ld/emulparams/gld960coff.sh b/ld/emulparams/gld960coff.sh new file mode 100644 index 0000000..7820220 --- /dev/null +++ b/ld/emulparams/gld960coff.sh @@ -0,0 +1,19 @@ +SCRIPT_NAME=i960 +OUTPUT_FORMAT="" +TEXT_START_ADDR=?? +TARGET_PAGE_SIZE=?? +ARCH=i960 +TEMPLATE_NAME=gld960c +GLD_STYLE=1 +COFF_CTORS=' + ___CTOR_LIST__ = .; + LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2) + *(.ctors) + LONG(0) + ___CTOR_END__ = .; + ___DTOR_LIST__ = .; + LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2) + *(.dtors) + LONG(0) + ___DTOR_END__ = .; +' diff --git a/ld/emulparams/go32.sh b/ld/emulparams/go32.sh new file mode 100644 index 0000000..d13357f --- /dev/null +++ b/ld/emulparams/go32.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=go32coff +OUTPUT_FORMAT="coff-go32" +TEXT_START_ADDR=0x10a8 +TARGET_PAGE_SIZE=0x1000 +SEGMENT_SIZE=0x1000 +NONPAGED_TEXT_START_ADDR=0x0 +ARCH=i386 diff --git a/ld/emulparams/h8300.sh b/ld/emulparams/h8300.sh new file mode 100644 index 0000000..49eb3c4 --- /dev/null +++ b/ld/emulparams/h8300.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8300 +OUTPUT_FORMAT="coff-h8300" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8300 diff --git a/ld/emulparams/h8300h.sh b/ld/emulparams/h8300h.sh new file mode 100644 index 0000000..3ab794e --- /dev/null +++ b/ld/emulparams/h8300h.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8300h +OUTPUT_FORMAT="coff-h8300" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8300 diff --git a/ld/emulparams/h8300s.sh b/ld/emulparams/h8300s.sh new file mode 100644 index 0000000..e27b4f5 --- /dev/null +++ b/ld/emulparams/h8300s.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8300s +OUTPUT_FORMAT="coff-h8300" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8300 diff --git a/ld/emulparams/h8500.sh b/ld/emulparams/h8500.sh new file mode 100644 index 0000000..6f4ca80 --- /dev/null +++ b/ld/emulparams/h8500.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8500 +OUTPUT_FORMAT="coff-h8500" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8500 diff --git a/ld/emulparams/h8500b.sh b/ld/emulparams/h8500b.sh new file mode 100644 index 0000000..d2d3fee --- /dev/null +++ b/ld/emulparams/h8500b.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8500b +OUTPUT_FORMAT="coff-h8500" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8500 diff --git a/ld/emulparams/h8500c.sh b/ld/emulparams/h8500c.sh new file mode 100644 index 0000000..240a065 --- /dev/null +++ b/ld/emulparams/h8500c.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8500c +OUTPUT_FORMAT="coff-h8500" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8500 diff --git a/ld/emulparams/h8500m.sh b/ld/emulparams/h8500m.sh new file mode 100644 index 0000000..cd9f7b6 --- /dev/null +++ b/ld/emulparams/h8500m.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8500m +OUTPUT_FORMAT="coff-h8500" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8500 diff --git a/ld/emulparams/h8500s.sh b/ld/emulparams/h8500s.sh new file mode 100644 index 0000000..b9e294a --- /dev/null +++ b/ld/emulparams/h8500s.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=h8500s +OUTPUT_FORMAT="coff-h8500" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=h8500 diff --git a/ld/emulparams/hp300bsd.sh b/ld/emulparams/hp300bsd.sh new file mode 100644 index 0000000..8f5c50b --- /dev/null +++ b/ld/emulparams/hp300bsd.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-hp300bsd" +TEXT_START_ADDR=0 +TARGET_PAGE_SIZE=4096 +ARCH=m68k diff --git a/ld/emulparams/hp3hpux.sh b/ld/emulparams/hp3hpux.sh new file mode 100644 index 0000000..b7badd8 --- /dev/null +++ b/ld/emulparams/hp3hpux.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-hp300hpux" +TEXT_START_ADDR=0 +TARGET_PAGE_SIZE=4096 +ARCH=m68k +STACKZERO="___stack_zero = 0x2000; __DYNAMIC = 0;" +# This is needed for HPUX 9.0; it is unnecessary but harmless for 8.0. +SHLIB_PATH="___dld_shlib_path = 0;" diff --git a/ld/emulparams/hppaelf.sh b/ld/emulparams/hppaelf.sh new file mode 100644 index 0000000..47b89ea --- /dev/null +++ b/ld/emulparams/hppaelf.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=hppaelf +OUTPUT_FORMAT="elf32-hppa" +TEXT_START_ADDR=0x1000 +TARGET_PAGE_SIZE=4096 +ARCH=hppa +START="$START$" +TEMPLATE_NAME=hppaelf diff --git a/ld/emulparams/i386aout.sh b/ld/emulparams/i386aout.sh new file mode 100644 index 0000000..dc9e554 --- /dev/null +++ b/ld/emulparams/i386aout.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-i386" +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0x1000 +ARCH=i386 diff --git a/ld/emulparams/i386beos.sh b/ld/emulparams/i386beos.sh new file mode 100755 index 0000000..869da5f --- /dev/null +++ b/ld/emulparams/i386beos.sh @@ -0,0 +1,5 @@ +ARCH=i386 +SCRIPT_NAME=i386beos +OUTPUT_FORMAT="pei-i386" +RELOCATEABLE_OUTPUT_FORMAT="pe-i386" +TEMPLATE_NAME=beos diff --git a/ld/emulparams/i386bsd.sh b/ld/emulparams/i386bsd.sh new file mode 100644 index 0000000..e0c0e2f --- /dev/null +++ b/ld/emulparams/i386bsd.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-i386-bsd" +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0x1000 +ARCH=i386 diff --git a/ld/emulparams/i386coff.sh b/ld/emulparams/i386coff.sh new file mode 100644 index 0000000..3417b7d --- /dev/null +++ b/ld/emulparams/i386coff.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=i386coff +OUTPUT_FORMAT="coff-i386" +TEXT_START_ADDR=0x1000000 +TARGET_PAGE_SIZE=0x1000000 +ARCH=i386 diff --git a/ld/emulparams/i386go32.sh b/ld/emulparams/i386go32.sh new file mode 100644 index 0000000..0ef16c4 --- /dev/null +++ b/ld/emulparams/i386go32.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=i386go32 +OUTPUT_FORMAT="coff-go32" +TEXT_START_ADDR=0x10a8 +TARGET_PAGE_SIZE=0x1000 +SEGMENT_SIZE=0x200 +NONPAGED_TEXT_START_ADDR=0x0 +ARCH=i386 + diff --git a/ld/emulparams/i386linux.sh b/ld/emulparams/i386linux.sh new file mode 100644 index 0000000..a416422 --- /dev/null +++ b/ld/emulparams/i386linux.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-i386-linux" +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0x1020 +NONPAGED_TEXT_START_ADDR=0 +ARCH=i386 +TEMPLATE_NAME=linux diff --git a/ld/emulparams/i386lynx.sh b/ld/emulparams/i386lynx.sh new file mode 100644 index 0000000..988c175 --- /dev/null +++ b/ld/emulparams/i386lynx.sh @@ -0,0 +1,9 @@ +SCRIPT_NAME=i386lynx +OUTPUT_FORMAT="coff-i386-lynx" +# This is what LynxOS /lib/init1.o wants. +ENTRY=_main +# following are dubious +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0x1000 +ARCH=i386 diff --git a/ld/emulparams/i386mach.sh b/ld/emulparams/i386mach.sh new file mode 100644 index 0000000..b7cb276 --- /dev/null +++ b/ld/emulparams/i386mach.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-mach3" +TEXT_START_ADDR=0x10020 +NONPAGED_TEXT_START_ADDR=0x10000 +SEGMENT_SIZE=0x1000 +PAD_TEXT=t +ARCH=i386 diff --git a/ld/emulparams/i386moss.sh b/ld/emulparams/i386moss.sh new file mode 100644 index 0000000..a5e0e05 --- /dev/null +++ b/ld/emulparams/i386moss.sh @@ -0,0 +1,10 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-i386" +TEXT_START_ADDR=0x00002000 +MAXPAGESIZE=0x1000 +NONPAGED_TEXT_START_ADDR=0x00002000 +ARCH=i386 +MACHINE= +NOP=0x9090 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/i386msdos.sh b/ld/emulparams/i386msdos.sh new file mode 100644 index 0000000..9311fa1 --- /dev/null +++ b/ld/emulparams/i386msdos.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=i386msdos +OUTPUT_FORMAT="msdos" +TEXT_START_ADDR=0x0 +NONPAGED_TEXT_START_ADDR=0x0 +SEGMENT_SIZE=0x10 +PAD_TEXT=t +ARCH=i386 diff --git a/ld/emulparams/i386nbsd.sh b/ld/emulparams/i386nbsd.sh new file mode 100644 index 0000000..a9e6a38 --- /dev/null +++ b/ld/emulparams/i386nbsd.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=aout +TEXT_START_ADDR=0x1020 +OUTPUT_FORMAT="a.out-i386-netbsd" +TARGET_PAGE_SIZE=0x1000 +ARCH=i386 +EXECUTABLE_SYMBOLS='__DYNAMIC = 0;' diff --git a/ld/emulparams/i386nw.sh b/ld/emulparams/i386nw.sh new file mode 100644 index 0000000..e70ed67 --- /dev/null +++ b/ld/emulparams/i386nw.sh @@ -0,0 +1,9 @@ +SCRIPT_NAME=nw +OUTPUT_FORMAT="elf32-i386" +TEXT_START_ADDR=0x08000000 +MAXPAGESIZE=0x1000 +NONPAGED_TEXT_START_ADDR=0x08000000 +ARCH=i386 +NOP=0x9090 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/i386pe.sh b/ld/emulparams/i386pe.sh new file mode 100644 index 0000000..188a8ad --- /dev/null +++ b/ld/emulparams/i386pe.sh @@ -0,0 +1,5 @@ +ARCH=i386 +SCRIPT_NAME=pe +OUTPUT_FORMAT="pei-i386" +RELOCATEABLE_OUTPUT_FORMAT="pe-i386" +TEMPLATE_NAME=pe diff --git a/ld/emulparams/lnk960.sh b/ld/emulparams/lnk960.sh new file mode 100644 index 0000000..3cf3fc4 --- /dev/null +++ b/ld/emulparams/lnk960.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=i960 +OUTPUT_FORMAT="" +TEXT_START_ADDR=?? +TARGET_PAGE_SIZE=?? +ARCH=i960 +TEMPLATE_NAME=lnk960 diff --git a/ld/emulparams/m32relf.sh b/ld/emulparams/m32relf.sh new file mode 100644 index 0000000..cd7705a --- /dev/null +++ b/ld/emulparams/m32relf.sh @@ -0,0 +1,13 @@ +MACHINE= +SCRIPT_NAME=elf +TEMPLATE_NAME=elf32 +OUTPUT_FORMAT="elf32-m32r" +TEXT_START_ADDR=0x100 +ARCH=m32r +MACHINE= +MAXPAGESIZE=32 +EMBEDDED=yes + +# Hmmm, there's got to be a better way. This sets the stack to the +# top of simulator memory (8MB). +OTHER_RELOCATING_SECTIONS='PROVIDE (_stack = 0x800000);' diff --git a/ld/emulparams/m68k4knbsd.sh b/ld/emulparams/m68k4knbsd.sh new file mode 100644 index 0000000..1bc24c0e --- /dev/null +++ b/ld/emulparams/m68k4knbsd.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +TEXT_START_ADDR=0x1020 +NONPAGED_TEXT_START_ADDR=0x1000 +OUTPUT_FORMAT="a.out-m68k4k-netbsd" +TARGET_PAGE_SIZE=0x1000 +ARCH=m68k +EXECUTABLE_SYMBOLS='__DYNAMIC = 0;' diff --git a/ld/emulparams/m68kaout.sh b/ld/emulparams/m68kaout.sh new file mode 100644 index 0000000..9bfaaf7 --- /dev/null +++ b/ld/emulparams/m68kaout.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-zero-big" +TEXT_START_ADDR=0x2020 +TARGET_PAGE_SIZE=0x2000 +SEGMENT_SIZE=0x20000 +NONPAGED_TEXT_START_ADDR=0x2000 +ARCH=m68k diff --git a/ld/emulparams/m68kaux.sh b/ld/emulparams/m68kaux.sh new file mode 100644 index 0000000..19e86cc --- /dev/null +++ b/ld/emulparams/m68kaux.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=m68kaux +OUTPUT_FORMAT="coff-m68k-aux" +SEGMENT_SIZE=0x40000 +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR="$SEGMENT_SIZE + SIZEOF_HEADERS" +NON_PAGED_TEXT_START_ADDR=SIZEOF_HEADERS +DATA_ALIGNMENT_="(. & (-$SEGMENT_SIZE | $TARGET_PAGE_SIZE-1)) + $SEGMENT_SIZE" +ARCH=m68k diff --git a/ld/emulparams/m68kcoff.sh b/ld/emulparams/m68kcoff.sh new file mode 100644 index 0000000..b417c0d --- /dev/null +++ b/ld/emulparams/m68kcoff.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=m68kcoff +OUTPUT_FORMAT="coff-m68k" +TEXT_START_ADDR=0x1000000 +TARGET_PAGE_SIZE=0x1000000 +ARCH=m68k diff --git a/ld/emulparams/m68kelf.sh b/ld/emulparams/m68kelf.sh new file mode 100644 index 0000000..ad352c5 --- /dev/null +++ b/ld/emulparams/m68kelf.sh @@ -0,0 +1,10 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-m68k" +TEXT_START_ADDR=0x80000000 +MAXPAGESIZE=0x2000 +NONPAGED_TEXT_START_ADDR=${TEXT_START_ADDR} +ARCH=m68k +MACHINE= +NOP=0x4e75 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes diff --git a/ld/emulparams/m68klinux.sh b/ld/emulparams/m68klinux.sh new file mode 100644 index 0000000..56c3dad --- /dev/null +++ b/ld/emulparams/m68klinux.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-m68k-linux" +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0x1020 +NONPAGED_TEXT_START_ADDR=0 +ARCH=m68k +TEMPLATE_NAME=linux diff --git a/ld/emulparams/m68klynx.sh b/ld/emulparams/m68klynx.sh new file mode 100644 index 0000000..b020feb --- /dev/null +++ b/ld/emulparams/m68klynx.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=m68klynx +OUTPUT_FORMAT="coff-m68k-lynx" +# This is what LynxOS /lib/init1.o wants. +ENTRY=__main +# following are dubious +TEXT_START_ADDR=0 +TARGET_PAGE_SIZE=0x1000 +ARCH=m68k diff --git a/ld/emulparams/m68knbsd.sh b/ld/emulparams/m68knbsd.sh new file mode 100644 index 0000000..a742807 --- /dev/null +++ b/ld/emulparams/m68knbsd.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +TEXT_START_ADDR=0x2020 +NONPAGED_TEXT_START_ADDR=0x2000 +OUTPUT_FORMAT="a.out-m68k-netbsd" +TARGET_PAGE_SIZE=0x2000 +ARCH=m68k +EXECUTABLE_SYMBOLS='__DYNAMIC = 0;' diff --git a/ld/emulparams/m68kpsos.sh b/ld/emulparams/m68kpsos.sh new file mode 100644 index 0000000..34eb8ca --- /dev/null +++ b/ld/emulparams/m68kpsos.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=psos +OUTPUT_FORMAT="elf32-m68k" +TEXT_START_ADDR=0x20000 +MAXPAGESIZE=0x1000 +ARCH=m68k +TEMPLATE_NAME=elf32 diff --git a/ld/emulparams/m88kbcs.sh b/ld/emulparams/m88kbcs.sh new file mode 100644 index 0000000..6c6737c --- /dev/null +++ b/ld/emulparams/m88kbcs.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=m88kbcs +OUTPUT_FORMAT="coff-m88kbcs" +TEXT_START_ADDR=?? +TARGET_PAGE_SIZE=?? +ARCH=m88k diff --git a/ld/emulparams/mcorepe.sh b/ld/emulparams/mcorepe.sh new file mode 100644 index 0000000..b5baee9 --- /dev/null +++ b/ld/emulparams/mcorepe.sh @@ -0,0 +1,6 @@ +ARCH=mcore +SCRIPT_NAME=mcorepe +OUTPUT_FORMAT="pei-mcore-big" +LITTLE_OUTPUT_FORMAT="pei-mcore-little" +BIG_OUTPUT_FORMAT="pei-mcore-big" +TEMPLATE_NAME=pe diff --git a/ld/emulparams/mipsbig.sh b/ld/emulparams/mipsbig.sh new file mode 100644 index 0000000..9fe2953 --- /dev/null +++ b/ld/emulparams/mipsbig.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=mips +OUTPUT_FORMAT="ecoff-bigmips" +BIG_OUTPUT_FORMAT="ecoff-bigmips" +LITTLE_OUTPUT_FORMAT="ecoff-littlemips" +TARGET_PAGE_SIZE=0x1000000 +ARCH=mips diff --git a/ld/emulparams/mipsbsd.sh b/ld/emulparams/mipsbsd.sh new file mode 100644 index 0000000..e8fb35b --- /dev/null +++ b/ld/emulparams/mipsbsd.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=mipsbsd +OUTPUT_FORMAT="a.out-mips-little" +BIG_OUTPUT_FORMAT="a.out-mips-big" +LITTLE_OUTPUT_FORMAT="a.out-mips-little" +TEXT_START_ADDR=0x1020 +TARGET_PAGE_SIZE=4096 +ARCH=mips diff --git a/ld/emulparams/mipsidt.sh b/ld/emulparams/mipsidt.sh new file mode 100644 index 0000000..63176f5 --- /dev/null +++ b/ld/emulparams/mipsidt.sh @@ -0,0 +1,11 @@ +SCRIPT_NAME=mips +OUTPUT_FORMAT="ecoff-bigmips" +BIG_OUTPUT_FORMAT="ecoff-bigmips" +LITTLE_OUTPUT_FORMAT="ecoff-littlemips" +TARGET_PAGE_SIZE=0x1000000 +ARCH=mips +ENTRY=start +TEXT_START_ADDR=0xa0012000 +DATA_ADDR=. +TEMPLATE_NAME=mipsecoff +EMBEDDED=yes diff --git a/ld/emulparams/mipsidtl.sh b/ld/emulparams/mipsidtl.sh new file mode 100644 index 0000000..02279de --- /dev/null +++ b/ld/emulparams/mipsidtl.sh @@ -0,0 +1,11 @@ +SCRIPT_NAME=mips +OUTPUT_FORMAT="ecoff-littlemips" +BIG_OUTPUT_FORMAT="ecoff-bigmips" +LITTLE_OUTPUT_FORMAT="ecoff-littlemips" +TARGET_PAGE_SIZE=0x1000000 +ARCH=mips +ENTRY=start +TEXT_START_ADDR=0xa0012000 +DATA_ADDR=. +TEMPLATE_NAME=mipsecoff +EMBEDDED=yes diff --git a/ld/emulparams/mipslit.sh b/ld/emulparams/mipslit.sh new file mode 100644 index 0000000..acb2344 --- /dev/null +++ b/ld/emulparams/mipslit.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=mips +OUTPUT_FORMAT="ecoff-littlemips" +BIG_OUTPUT_FORMAT="ecoff-bigmips" +LITTLE_OUTPUT_FORMAT="ecoff-littlemips" +TARGET_PAGE_SIZE=0x1000000 +ARCH=mips diff --git a/ld/emulparams/mipslnews.sh b/ld/emulparams/mipslnews.sh new file mode 100644 index 0000000..d0bb91c --- /dev/null +++ b/ld/emulparams/mipslnews.sh @@ -0,0 +1,9 @@ +SCRIPT_NAME=mips +OUTPUT_FORMAT="ecoff-littlemips" +BIG_OUTPUT_FORMAT="ecoff-bigmips" +LITTLE_OUTPUT_FORMAT="ecoff-littlemips" +TARGET_PAGE_SIZE=0x1000000 +ARCH=mips +TEXT_START_ADDR=0x80080000 +DATA_ADDR=. +EMBEDDED=yes diff --git a/ld/emulparams/mn10200.sh b/ld/emulparams/mn10200.sh new file mode 100644 index 0000000..6324322 --- /dev/null +++ b/ld/emulparams/mn10200.sh @@ -0,0 +1,20 @@ +MACHINE= +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-mn10200" +TEXT_START_ADDR=0x0 +ARCH=mn10200 +MACHINE= +MAXPAGESIZE=1 +ENTRY=_start +EMBEDDED=yes + +# Hmmm, there's got to be a better way. This sets the stack to the +# top of the simulator memory (2^19 bytes). +OTHER_RELOCATING_SECTIONS='.stack 0x80000 : { _stack = .; *(.stack) }' + +# These are for compatibility with the COFF toolchain. +# XXX These should definitely disappear. +CTOR_START='___ctors = .;' +CTOR_END='___ctors_end = .;' +DTOR_START='___dtors = .;' +DTOR_END='___dtors_end = .;' diff --git a/ld/emulparams/mn10300.sh b/ld/emulparams/mn10300.sh new file mode 100644 index 0000000..44a40e5 --- /dev/null +++ b/ld/emulparams/mn10300.sh @@ -0,0 +1,20 @@ +MACHINE= +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-mn10300" +TEXT_START_ADDR=0x0 +ARCH=mn10300 +MACHINE= +MAXPAGESIZE=1 +ENTRY=_start +EMBEDDED=yes + +# Hmmm, there's got to be a better way. This sets the stack to the +# top of the simulator memory (2^19 bytes). +OTHER_RELOCATING_SECTIONS='.stack 0x80000 : { _stack = .; *(.stack) }' + +# These are for compatibility with the COFF toolchain. +# XXX These should definitely disappear. +CTOR_START='___ctors = .;' +CTOR_END='___ctors_end = .;' +DTOR_START='___dtors = .;' +DTOR_END='___dtors_end = .;' diff --git a/ld/emulparams/news.sh b/ld/emulparams/news.sh new file mode 100644 index 0000000..310ddf9 --- /dev/null +++ b/ld/emulparams/news.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-newsos3" +TEXT_START_ADDR=0 +TARGET_PAGE_SIZE=0x1000 +ARCH=m68k diff --git a/ld/emulparams/ns32knbsd.sh b/ld/emulparams/ns32knbsd.sh new file mode 100644 index 0000000..1c4fdf3 --- /dev/null +++ b/ld/emulparams/ns32knbsd.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=aout +TEXT_START_ADDR=0x1020 +OUTPUT_FORMAT="a.out-ns32k-netbsd" +TARGET_PAGE_SIZE=0x1000 +ARCH=ns32k diff --git a/ld/emulparams/pc532macha.sh b/ld/emulparams/pc532macha.sh new file mode 100644 index 0000000..9c1d079 --- /dev/null +++ b/ld/emulparams/pc532macha.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-pc532-mach" +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR="0x10020" +NONPAGED_TEXT_START_ADDR=0x10000 +ARCH=ns32k diff --git a/ld/emulparams/ppcmacos.sh b/ld/emulparams/ppcmacos.sh new file mode 100644 index 0000000..b6b800c --- /dev/null +++ b/ld/emulparams/ppcmacos.sh @@ -0,0 +1,4 @@ +TEMPLATE_NAME=aix +SCRIPT_NAME=aix +OUTPUT_FORMAT="xcoff-powermac" +ARCH=powerpc diff --git a/ld/emulparams/ppcnw.sh b/ld/emulparams/ppcnw.sh new file mode 100644 index 0000000..c3ead43 --- /dev/null +++ b/ld/emulparams/ppcnw.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=nw +OUTPUT_FORMAT="elf32-powerpc" +TEXT_START_ADDR=0x0400000 +DATA_ADDR=0x10000000 +MAXPAGESIZE=0x40000 +NONPAGED_TEXT_START_ADDR=0x0400000 +ARCH=powerpc diff --git a/ld/emulparams/ppcpe.sh b/ld/emulparams/ppcpe.sh new file mode 100644 index 0000000..655282d --- /dev/null +++ b/ld/emulparams/ppcpe.sh @@ -0,0 +1,4 @@ +ARCH=powerpc +SCRIPT_NAME=ppcpe +OUTPUT_FORMAT="pei-powerpcle" +TEMPLATE_NAME=pe diff --git a/ld/emulparams/riscix.sh b/ld/emulparams/riscix.sh new file mode 100644 index 0000000..e7f6d92 --- /dev/null +++ b/ld/emulparams/riscix.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=riscix +OUTPUT_FORMAT="a.out-riscix" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=0x8000 +ARCH=arm diff --git a/ld/emulparams/sa29200.sh b/ld/emulparams/sa29200.sh new file mode 100644 index 0000000..8b52f92 --- /dev/null +++ b/ld/emulparams/sa29200.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=sa29200 +OUTPUT_FORMAT="coff-a29k-big" +TEXT_START_ADDR=0x40004000 +TARGET_PAGE_SIZE=0x1000 +ARCH=a29k diff --git a/ld/emulparams/sh.sh b/ld/emulparams/sh.sh new file mode 100644 index 0000000..38844fb --- /dev/null +++ b/ld/emulparams/sh.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=sh +OUTPUT_FORMAT="coff-sh" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=sh diff --git a/ld/emulparams/shelf.sh b/ld/emulparams/shelf.sh new file mode 100644 index 0000000..95db587 --- /dev/null +++ b/ld/emulparams/shelf.sh @@ -0,0 +1,17 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-sh" +TEXT_START_ADDR=0x1000 +MAXPAGESIZE=128 +ARCH=sh +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +EMBEDDED=yes + +# These are for compatibility with the COFF toolchain. +ENTRY=start +CTOR_START='___ctors = .;' +CTOR_END='___ctors_end = .;' +DTOR_START='___dtors = .;' +DTOR_END='___dtors_end = .;' +OTHER_RELOCATING_SECTIONS='.stack 0x30000 : { _stack = .; *(.stack) }' diff --git a/ld/emulparams/shl.sh b/ld/emulparams/shl.sh new file mode 100644 index 0000000..360aac8 --- /dev/null +++ b/ld/emulparams/shl.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=sh +OUTPUT_FORMAT="coff-shl" +TEXT_START_ADDR=0x8000 +TARGET_PAGE_SIZE=128 +ARCH=sh diff --git a/ld/emulparams/shlelf.sh b/ld/emulparams/shlelf.sh new file mode 100644 index 0000000..bb27f86 --- /dev/null +++ b/ld/emulparams/shlelf.sh @@ -0,0 +1,17 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-shl" +TEXT_START_ADDR=0x1000 +MAXPAGESIZE=128 +ARCH=sh +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +EMBEDDED=yes + +# These are for compatibility with the COFF toolchain. +ENTRY=start +CTOR_START='___ctors = .;' +CTOR_END='___ctors_end = .;' +DTOR_START='___dtors = .;' +DTOR_END='___dtors_end = .;' +OTHER_RELOCATING_SECTIONS='.stack 0x30000 : { _stack = .; *(.stack) }' diff --git a/ld/emulparams/sparcaout.sh b/ld/emulparams/sparcaout.sh new file mode 100644 index 0000000..429b925 --- /dev/null +++ b/ld/emulparams/sparcaout.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-sunos-big" +BIG_OUTPUT_FORMAT="a.out-sunos-big" +LITTLE_OUTPUT_FORMAT="a.out-sparc-little" +TEXT_START_ADDR=0x2020 +TARGET_PAGE_SIZE=0x2000 +NONPAGED_TEXT_START_ADDR=0x2000 +ARCH=sparc diff --git a/ld/emulparams/sparclinux.sh b/ld/emulparams/sparclinux.sh new file mode 100644 index 0000000..7ccb0bec --- /dev/null +++ b/ld/emulparams/sparclinux.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-sparc-linux" +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0x1020 +NONPAGED_TEXT_START_ADDR=0 +ARCH=sparc +TEMPLATE_NAME=linux diff --git a/ld/emulparams/sparclynx.sh b/ld/emulparams/sparclynx.sh new file mode 100644 index 0000000..9aeb30b --- /dev/null +++ b/ld/emulparams/sparclynx.sh @@ -0,0 +1,9 @@ +SCRIPT_NAME=sparclynx +OUTPUT_FORMAT="coff-sparc-lynx" +# This is what LynxOS /lib/init1.o wants. +ENTRY=__main +# following are dubious +TARGET_PAGE_SIZE=0x1000 +TEXT_START_ADDR=0 +NONPAGED_TEXT_START_ADDR=0x1000 +ARCH=sparc diff --git a/ld/emulparams/sparcnbsd.sh b/ld/emulparams/sparcnbsd.sh new file mode 100644 index 0000000..f27daf3 --- /dev/null +++ b/ld/emulparams/sparcnbsd.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=aout +TEXT_START_ADDR=0x1020 +OUTPUT_FORMAT="a.out-sparc-netbsd" +TARGET_PAGE_SIZE=0x1000 +ARCH=sparc diff --git a/ld/emulparams/st2000.sh b/ld/emulparams/st2000.sh new file mode 100644 index 0000000..0498832 --- /dev/null +++ b/ld/emulparams/st2000.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=st2000 +OUTPUT_FORMAT="coff-m68k" +TEXT_START_ADDR=0x0 +TARGET_PAGE_SIZE=128 +ARCH=m68k diff --git a/ld/emulparams/sun3.sh b/ld/emulparams/sun3.sh new file mode 100644 index 0000000..db0f71f --- /dev/null +++ b/ld/emulparams/sun3.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-sunos-big" +TEXT_START_ADDR=0x2020 +TARGET_PAGE_SIZE=0x2000 +SEGMENT_SIZE=0x20000 +NONPAGED_TEXT_START_ADDR=0x2000 +ARCH=m68k +TEMPLATE_NAME=sunos diff --git a/ld/emulparams/sun4.sh b/ld/emulparams/sun4.sh new file mode 100644 index 0000000..bd42775 --- /dev/null +++ b/ld/emulparams/sun4.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-sunos-big" +TEXT_START_ADDR=0x2020 +TARGET_PAGE_SIZE=0x2000 +NONPAGED_TEXT_START_ADDR=0x2000 +ALIGNMENT=8 +ARCH=sparc +TEMPLATE_NAME=sunos diff --git a/ld/emulparams/tic30aout.sh b/ld/emulparams/tic30aout.sh new file mode 100644 index 0000000..2a4c13f --- /dev/null +++ b/ld/emulparams/tic30aout.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=tic30aout +OUTPUT_FORMAT="a.out-tic30" +OUTPUT_ARCH="tms320c30" +TEXT_START_ADDR=0x0 +TARGET_PAGE_SIZE=128 +ARCH=tms320c30 +BIG=1 diff --git a/ld/emulparams/tic30coff.sh b/ld/emulparams/tic30coff.sh new file mode 100644 index 0000000..df77943 --- /dev/null +++ b/ld/emulparams/tic30coff.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=tic30coff +OUTPUT_FORMAT="coff-tic30" +OUTPUT_ARCH="tms320c30" +TEXT_START_ADDR=0x0 +TARGET_PAGE_SIZE=128 +ARCH=tms320c30 +BIG=1 diff --git a/ld/emulparams/tic80coff.sh b/ld/emulparams/tic80coff.sh new file mode 100644 index 0000000..7070323 --- /dev/null +++ b/ld/emulparams/tic80coff.sh @@ -0,0 +1,56 @@ +# This file is sourced by the genscripts.sh script. +# These are shell variables that are used later by either genscripts +# or on of the scripts that it sources. + +# The name of the scripttempl script to use. In this case, genscripts +# uses scripttempl/tic80coff.sc +# +SCRIPT_NAME=tic80coff + +# The name of the emultempl script to use. If set to "template" then +# genscripts.sh will use the script emultempl/template.em. If not set, +# then the default value is "generic". +# +# TEMPLATE_NAME= + +# If this is set to an nonempty string, genscripts.sh will invoke the +# scripttempl script an extra time to create a shared library script. +# +# GENERATE_SHLIB_SCRIPT= + +# The BFD output format to use. The scripttempl script will use it in +# an OUTPUT_FORMAT expression in the linker script. +# +OUTPUT_FORMAT="coff-tic80" + +# This is normally set to indicate the architecture to use, such as +# "sparc". The scripttempl script will normally use it in an OUTPUT_ARCH +# expression in the linker script. +# +ARCH=tic80 + +# Some scripttempl scripts use this to set the entry address in an ENTRY +# expression in the linker script. +# +# ENTRY= + +# The scripttempl script uses this to set the start address of the +# ".text" section. +# +TEXT_START_ADDR=0x2000000 + +# If this is defined, the genscripts.sh script sets TEXT_START_ADDR to +# its value before running the scripttempl script for the -n and -N +# options. +# +# NONPAGED_TEXT_START_ADDR= + +# The genscripts.sh script uses this to set the default value of +# DATA_ALIGNMENT when running the scripttempl script. +# +# SEGMENT_SIZE= + +# If SEGMENT_SIZE is not defined, the genscripts.sh script uses this +# to define it. +# +TARGET_PAGE_SIZE=0x1000 diff --git a/ld/emulparams/v850.sh b/ld/emulparams/v850.sh new file mode 100644 index 0000000..78bfbd3 --- /dev/null +++ b/ld/emulparams/v850.sh @@ -0,0 +1,14 @@ +MACHINE= +SCRIPT_NAME=v850 +OUTPUT_FORMAT="elf32-v850" +TEXT_START_ADDR=0x100000 +ZDATA_START_ADDR=0x160 +ROZDATA_START_ADDR="ALIGN (4)" +SDATA_START_ADDR="ALIGN (4)" +ROSDATA_START_ADDR="ALIGN (4)" +TDATA_START_ADDR="ALIGN (4)" +CALL_TABLE_START_ADDR="ALIGN (4)" +ARCH=v850 +MAXPAGESIZE=256 +ENTRY=_start +EMBEDDED=yes diff --git a/ld/emulparams/vanilla.sh b/ld/emulparams/vanilla.sh new file mode 100644 index 0000000..d8a3b72 --- /dev/null +++ b/ld/emulparams/vanilla.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=vanilla +TEXT_START_ADDR=?? +TARGET_PAGE_SIZE=?? +ARCH=unknown +TEMPLATE_NAME=vanilla diff --git a/ld/emulparams/vax.sh b/ld/emulparams/vax.sh new file mode 100644 index 0000000..9785483 --- /dev/null +++ b/ld/emulparams/vax.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out" +TEXT_START_ADDR=0 +TARGET_PAGE_SIZE=1024 +ARCH=vax diff --git a/ld/emulparams/vsta.sh b/ld/emulparams/vsta.sh new file mode 100644 index 0000000..cc6249b --- /dev/null +++ b/ld/emulparams/vsta.sh @@ -0,0 +1,8 @@ +SCRIPT_NAME=aout +OUTPUT_FORMAT="a.out-i386" +TEXT_START_ADDR=0x1020 +TARGET_PAGE_SIZE=0x1000 +SEGMENT_SIZE=0x400000 +NONPAGED_TEXT_START_ADDR=0x0 +ARCH=i386 + diff --git a/ld/emulparams/w65.sh b/ld/emulparams/w65.sh new file mode 100644 index 0000000..6f02b23 --- /dev/null +++ b/ld/emulparams/w65.sh @@ -0,0 +1,5 @@ +SCRIPT_NAME=w65 +OUTPUT_FORMAT="coff-w65" +TEXT_START_ADDR=0x1000 +TARGET_PAGE_SIZE=64 +ARCH=w65 diff --git a/ld/emulparams/z8001.sh b/ld/emulparams/z8001.sh new file mode 100644 index 0000000..63645c3 --- /dev/null +++ b/ld/emulparams/z8001.sh @@ -0,0 +1,7 @@ +SCRIPT_NAME=z8000 +OUTPUT_FORMAT="coff-z8k" +OUTPUT_ARCH="z8001" +TEXT_START_ADDR=0x0 +TARGET_PAGE_SIZE=128 +ARCH=z8k +BIG=1 diff --git a/ld/emulparams/z8002.sh b/ld/emulparams/z8002.sh new file mode 100644 index 0000000..299b5f5 --- /dev/null +++ b/ld/emulparams/z8002.sh @@ -0,0 +1,6 @@ +SCRIPT_NAME=z8000 +OUTPUT_FORMAT="coff-z8k" +OUTPUT_ARCH="z8002" +TEXT_START_ADDR=0x0 +TARGET_PAGE_SIZE=128 +ARCH=z8002 |