h8300hms.em
h8300hms.sc-sh
h8300hms.sh
-h8300xray.em
-h8300xray.sc-sh
-h8300xray.sh
+h8500hms.em
+h8500hms.sc-sh
+h8500hms.sh
i386aout.sh
i386bsd.sh
i386coff.sc-sh
#
#
# $Log$
-# Revision 1.55 1993/03/30 23:24:53 pesch
+# Revision 1.56 1993/04/09 17:44:54 sac
+# Support for the H8/500
+#
+# Revision 1.55 1993/03/30 23:24:53 pesch
# ld.texinfo:
# Conditionalize manual to maintain Cygnus, Hitachi versions in parallel.
# (Texinfo conditionals are stable enough to permit this, at last!)
coff-a29k.mt
coff-h8300.mt
+coff-h8500.mt
delta88.mh
dgux.mh
ebmon29k.mt
--- /dev/null
+EMUL=h8500hms
+++ /dev/null
-cat >em_${EMULATION_NAME}.c <<EOF
-/* Copyright (C) 1991 Free Software Foundation, Inc.
-
-This file is part of GLD, the Gnu Linker.
-
-GLD is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 1, or (at your option)
-any later version.
-
-GLD is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GLD; see the file COPYING. If not, write to
-the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
-
-/*
- Written by Steve Chamberlain steve@cygnus.com
-
- The controller which tells the gnu linker how to behave like one for
- the Hitach H8/300 with IEEE records.
-*/
-
-#include "bfd.h"
-#include "sysdep.h"
-
-#include "ld.h"
-#include "config.h"
-#include "ldemul.h"
-#include "ldfile.h"
-#include "ldmisc.h"
-
-extern boolean lang_float_flag;
-
-
-extern enum bfd_architecture ldfile_output_architecture;
-extern unsigned long ldfile_output_machine;
-extern char *ldfile_output_machine_name;
-
-extern bfd *output_bfd;
-
-
-
-static void h8300xray_before_parse()
-{
- ldfile_output_architecture = bfd_arch_h8300;
-}
-
-static char *h8300xray_script =
-#include "h8300xray.x"
-;
-static char *h8300xray_script_option_Ur =
-#include "h8300xray.x"
-;
-static char *h8300xray_script_option_r =
-#include "h8300xray.x"
-;
-
-static char *h8300xray_get_script()
-{
- extern ld_config_type config;
- if (config.relocateable_output == true &&
- config.build_constructors == true) {
- return h8300xray_script_option_Ur;
- }
- if (config.relocateable_output) {
- return h8300xray_script_option_r;
- }
-
- return h8300xray_script;
-}
-struct ld_emulation_xfer_struct ld_h8300xray_emulation =
-{
- h8300xray_before_parse,
- syslib_default,
- hll_default,
- after_parse_default,
- after_allocation_default,
- set_output_arch_default,
- ldemul_default_target,
- before_allocation_default,
- h8300xray_get_script,
- "h8300xray"
-};
-EOF
+++ /dev/null
-cat <<EOF
-OUTPUT_FORMAT("${OUTPUT_FORMAT}")
-OUTPUT_ARCH(${ARCH})
-
-
-SECTIONS
-{
-.text :
- {
- *(.text)
- *(.strings)
- _etext = .;
- *(.data)
- _edata = .;
- *(.bss)
- *(COMMON)
- _end = .;
-_stack = 0xe000;
-}
-
-}
-EOF
-
-
-
-
+++ /dev/null
-EMULATION_NAME=h8300xray
-SCRIPT_NAME=h8300xray
-OUTPUT_FORMAT="ieee"
-TEXT_START_ADDR=0x0
-PAGE_SIZE=128
-ARCH=h8300
-TEMPLATE_NAME=h8300xray
-
--- /dev/null
+cat >em_${EMULATION_NAME}.c <<EOF
+/* Copyright (C) 1993 Free Software Foundation, Inc.
+
+This file is part of GLD, the Gnu Linker.
+
+GLD is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 1, or (at your option)
+any later version.
+
+GLD is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GLD; see the file COPYING. If not, write to
+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+/*
+ Written by Steve Chamberlain sac@cygnus.com
+
+ The controller which tells the gnu linker how to behave like one for
+ the Hitach H8/500.
+*/
+
+#include "bfd.h"
+#include "sysdep.h"
+
+#include "ld.h"
+#include "config.h"
+#include "ldemul.h"
+#include "ldfile.h"
+#include "ldmisc.h"
+
+extern boolean lang_float_flag;
+
+
+extern enum bfd_architecture ldfile_output_architecture;
+extern unsigned long ldfile_output_machine;
+extern char *ldfile_output_machine_name;
+
+extern bfd *output_bfd;
+
+
+
+static void h8500hms_before_parse()
+{
+ ldfile_output_architecture = bfd_arch_h8500;
+}
+
+static char *h8500hms_script =
+#include "h8500hms.x"
+;
+static char *h8500hms_script_option_Ur =
+#include "h8500hms.xu"
+;
+static char *h8500hms_script_option_r =
+#include "h8500hms.xr"
+;
+
+static char *h8500hms_get_script()
+{
+ extern ld_config_type config;
+ if (config.relocateable_output == true &&
+ config.build_constructors == true) {
+ return h8500hms_script_option_Ur;
+ }
+ if (config.relocateable_output) {
+ return h8500hms_script_option_r;
+ }
+
+ return h8500hms_script;
+}
+struct ld_emulation_xfer_struct ld_h8500hms_emulation =
+{
+ h8500hms_before_parse,
+ syslib_default,
+ hll_default,
+ after_parse_default,
+ after_allocation_default,
+ set_output_arch_default,
+ ldemul_default_target,
+ before_allocation_default,
+ h8500hms_get_script,
+ "h8500hms"
+};
+EOF
--- /dev/null
+cat <<EOF
+OUTPUT_FORMAT("${OUTPUT_FORMAT}")
+OUTPUT_ARCH(${ARCH})
+
+MEMORY {
+ rom : o = 0x0000, l = 0x7fe0
+ duart : o = 0x7fe0, l = 16
+ ram : o = 0x8000, l = 28k
+ topram : o = 0x8000+28k, l = 1k
+ hmsram : o = 0xfb80, l = 512
+ }
+
+SECTIONS
+{
+.text :
+ {
+ *(.text)
+ *(.strings)
+ ${RELOCATING+ _etext = . ; }
+ } ${RELOCATING+ > ram}
+.data :
+ {
+ *(.data)
+ ${RELOCATING+ _edata = . ; }
+ } ${RELOCATING+ > ram}
+.bss :
+ {
+ ${RELOCATING+ _bss_start = . ;}
+ *(.bss)
+ *(COMMON)
+ ${RELOCATING+ _end = . ; }
+ } ${RELOCATING+ >ram}
+.stack :
+ {
+ ${RELOCATING+ _stack = . ; }
+ *(.stack)
+ } ${RELOCATING+ > topram}
+}
+EOF
+
+
+
+
--- /dev/null
+EMULATION_NAME=h8500hms
+SCRIPT_NAME=h8500hms
+OUTPUT_FORMAT="coff-h8500"
+TEXT_START_ADDR=0x8000
+PAGE_SIZE=128
+ARCH=h8500
+TEMPLATE_NAME=h8500hms