summaryrefslogtreecommitdiff
path: root/ld/emulparams/elf32mcore.sh
diff options
context:
space:
mode:
Diffstat (limited to 'ld/emulparams/elf32mcore.sh')
-rw-r--r--ld/emulparams/elf32mcore.sh97
1 files changed, 0 insertions, 97 deletions
diff --git a/ld/emulparams/elf32mcore.sh b/ld/emulparams/elf32mcore.sh
deleted file mode 100644
index 7769e1232a6..00000000000
--- a/ld/emulparams/elf32mcore.sh
+++ /dev/null
@@ -1,97 +0,0 @@
-SCRIPT_NAME=elf
-OUTPUT_FORMAT="elf32-mcore-little"
-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
-EMBEDDED=yes
-
-# There is a problem with the NOP value - it must work for both
-# big endian and little endian systems. Unfortunately there is
-# no symmetrical mcore opcode that functions as a noop. The
-# chosen solution is to use "tst r0, r14". This is a symetrical
-# value, and apart from the corruption of the C bit, it has no other
-# side effects. Since the carry bit is never tested without being
-# explicitly set first, and since the NOP code is only used as a
-# fill value between independantly viable peices of code, it should
-# not matter.
-NOP=0x0e0e
-
-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) }'
-
-TEMPLATE_NAME=elf32
-GENERATE_SHLIB_SCRIPT=yes
-
-# This code gets inserted into the generic elf32.sc linker script
-# and allows us to define our own command line switches.
-PARSE_AND_LIST_ARGS='
-
-#define OPTION_BASE_FILE 300
-
-static struct option longopts[] =
-{
- {"base-file", required_argument, NULL, OPTION_BASE_FILE},
- {NULL, no_argument, NULL, 0}
-};
-
-static void
-gld_elf32mcore_list_options (file)
- FILE * file;
-{
- fprintf (file, _(" --base_file <basefile> Generate a base file for relocatable DLLs\n"));
-}
-
-static int
-gld_elf32mcore_parse_args (argc, argv)
- int argc;
- char ** argv;
-{
- int longind;
- int optc;
- int prevoptind = optind;
- int prevopterr = opterr;
- int wanterror;
- static int lastoptind = -1;
-
- if (lastoptind != optind)
- opterr = 0;
-
- wanterror = opterr;
- lastoptind = optind;
-
- optc = getopt_long_only (argc, argv, "-", longopts, & longind);
- opterr = prevopterr;
-
- switch (optc)
- {
- default:
- if (wanterror)
- xexit (1);
- optind = prevoptind;
- return 0;
-
- case OPTION_BASE_FILE:
- link_info.base_file = (PTR) fopen (optarg, FOPEN_WB);
- if (link_info.base_file == NULL)
- {
- /* xgettext:c-format */
- fprintf (stderr, _("%s: Cannot open base file %s\n"),
- program_name, optarg);
- xexit (1);
- }
- break;
- }
-
- return 1;
-}
-
-'