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
