| # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003 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 2 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
| |
| # This is a list of toolchains that are supported on this board. |
| set_board_info target_install {mmix-knuth-mmixware} |
| |
| # Load the generic configuration for this board. This will define any |
| # routines needed to communicate with the board. |
| load_generic_config "sim" |
| |
| # Unset the slow_simulator flag; this simulator isn't slow. (I haven't |
| # found documentation as to what constitutes a "slow" simulator and |
| # there's no reference to that variable in the GCC test-suite, but all |
| # tests I've found work.) |
| unset_board_info slow_simulator |
| |
| # We don't use basic-sim.exp and setup_sim because the simulator, called |
| # "mmix", is external to the build tree. If nobody set the simulator |
| # name, we set it to "mmix", so the rest of the framework works. Let $SIM |
| # override. |
| if ![board_info $board exists sim] { |
| if [info exists SIM] { |
| set_board_info sim $SIM |
| } else { |
| # Has to exist in the users path. |
| set_board_info sim mmix |
| } |
| } |
| |
| # No default multilib options are needed for this board. |
| process_multilib_options "" |
| |
| set_board_info is_simulator 1 |
| |
| # It isn't visible in the target triple, so we set it explicitly. The |
| # *linked* format is currently mmo, but those cases where this matters we |
| # can deal with separately. |
| set_board_info obj_format "elf" |
| |
| # 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. We assume that all multilib |
| # options have been specified before we get here. |
| set_board_info cflags "[newlib_include_flags]" |
| |
| # We put the stack in the code segment, so trampolines work; the mmix |
| # simulator does not allow code to be executed in the "normal" documented |
| # data and stack segments. Use a somewhat magic number, so stack addresses |
| # are easily recognized when debugging. |
| set_board_info ldflags "[newlib_link_flags] -Wl,--defsym,__Stack_start=0x1680a00000000000" |
| |
| # No linker script needed - the simulator is the main environment for this |
| # target. |
| set_board_info ldscript "" |
| |
| # Return codes aren't supported by the simulator. |
| set_board_info needs_status_wrapper 1 |
| |
| # FIXME: Some gdb board variables are usually here. I currently have |
| # no clue what to set them to, so I won't. |