This patch restores H8/300 support by partially reverting commit
e38dd8aff575f10c84989669723d57cdbd1517c9. Note that config/h8300.exp
was not restored because it is simply not needed.

2025-11-10  Jan Dubiec <[email protected]>

baseboards/
        * h8300-sim.exp: Restore.
        * h8300.exp: Restore.

Signed-off-by: Jan Dubiec <[email protected]>
---
 baseboards/h8300-sim.exp | 63 +++++++++++++++++++++++++++++
 baseboards/h8300.exp     | 86 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 149 insertions(+)
 create mode 100644 baseboards/h8300-sim.exp
 create mode 100644 baseboards/h8300.exp

diff --git a/baseboards/h8300-sim.exp b/baseboards/h8300-sim.exp
new file mode 100644
index 0000000..2743ad7
--- /dev/null
+++ b/baseboards/h8300-sim.exp
@@ -0,0 +1,63 @@
+# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+#
+# This file is part of DejaGnu.
+#
+# DejaGnu 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 3 of the License, or
+# (at your option) any later version.
+#
+# DejaGnu 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 DejaGnu; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+
+# This is a list of toolchains that are supported on this board.
+set_board_info target_install  {h8300-hms}
+
+# Load the tool-specific configuration for this board, as well as the
+# generic configuration. This will define any routines needed by the
+# tool to communicate with the board.
+load_generic_config "sim"
+
+# basic-sim.exp is a basic description for the standard Cygnus simulator.
+load_base_board_description "basic-sim"
+
+# The name of the simulator is "h8300" (as in h8300-hms-run).
+setup_sim h8300
+
+# No multilib options are used by default.
+process_multilib_options ""
+
+# The compiler used to build for this board. This has *nothing* to do
+# with what compiler is tested if we're testing gcc.
+set_board_info compiler  "[find_gcc]"
+
+# We only support newlib on this target.
+set_board_info cflags  "[newlib_include_flags]"
+set_board_info ldflags  "[newlib_link_flags]"
+set_board_info uses_underscores 1
+
+# There's no support for argument-passing.
+set_board_info noargs 1
+# Nor does it have real signals.
+set_board_info gdb,nosignals 1
+# And it can't do I/O.
+set_board_info gdb,noinferiorio 1
+# Nor can it return results.
+set_board_info gdb,noresults 1
+
+# Limit the stack size to something real tiny.
+set_board_info gcc,stack_size 4096
+set_board_info gcc,text_size 60000
+
+# There's no long long support on this target
+set_board_info no_long_long  1
+
+# sizeof int != sizeof long.
+set_board_info gdb,short_int 1
diff --git a/baseboards/h8300.exp b/baseboards/h8300.exp
new file mode 100644
index 0000000..2e505de
--- /dev/null
+++ b/baseboards/h8300.exp
@@ -0,0 +1,86 @@
+# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+#
+# This file is part of DejaGnu.
+#
+# DejaGnu 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 3 of the License, or
+# (at your option) any later version.
+#
+# DejaGnu 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 DejaGnu; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
+
+# Load the tool-specific configuration for this board, as well as the
+# generic configuration. This will define any routines needed by the
+# tool to communicate with the board.
+load_generic_config "h8300"
+
+# Don't use anything by default.
+process_multilib_options ""
+
+# The default compiler for this target.
+set_board_info compiler "[find_gcc]"
+
+# We only support newlib on this target. We assume that all multilib
+# options have been specified before we get here.
+set_board_info cflags "[newlib_include_flags]"
+set_board_info ldflags "[newlib_link_flags]"
+
+# The GDB protocol used with this board.
+set_board_info gdb_protocol "remote"
+# It's running a GDB stub in ROM.
+set_board_info use_gdb_stub 1
+
+# There's no support for argument-passing.
+set_board_info noargs 1
+# Nor does it have real signals.
+set_board_info gdb,nosignals 1
+# And it can't do I/O.
+set_board_info gdb,noinferiorio 1
+# Nor can it return results.
+set_board_info gdb,noresults 1
+
+# Limit the stack size to something real tiny.
+set_board_info gcc,stack_size 4096
+
+# The board can get wedged in amusing and interesting ways.
+set_board_info unreliable 1
+
+# There's no long long support on this target
+set_board_info no_long_long  1
+
+# sizeof int != sizeof long.
+set_board_info gdb,short_int 1
+
+# Pick the right linker script if -mh/-ms is specified.
+
+set linker_script "h8300.ld"
+
+foreach x $board_variant_list {
+    regsub -all "^\[ \t\]*" "$x" "" x
+    regsub -all "\[ \t\]*$" "$x" "" x
+
+    switch -- $x {
+       "h" -
+       "-mh" { set linker_script "h8300h.ld" }
+
+       "s" -
+       "-ms" { set linker_script "h8300s.ld" }
+    }
+}
+
+# Whee, magic linker scripts hidden away.
+#
+# This one's dependent on the multilib options in use, sadly. And we
+# *need* a linker script. Really. Otherwise the code gets linked at
+# the wrong address and it won't run on the board.
+set_board_info ldscript "-T${prefix_dir}/h8300-hms/${linker_script}"
+
+unset linker_script
-- 
2.50.1.windows.1


Reply via email to