# 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 {d10v-elf}

# Load the generic configuration for this board. This will define a base set
# of routines needed by the tool to communicate with the board.
load_generic_config "d10v"

# No multilib options are needed by default for this board.
process_multilib_options ""

# We only support newlib on this target. We assume that all multilib
# options have been specified before we get here.
set_board_info compiler "[find_gcc]"
set_board_info cflags "[newlib_include_flags]"
set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags]"
# No linker script needed.
set_board_info ldscript ""

# The board can't really return exit statuses and we need to indicate this;
# however, the standard GCC wrapper won't work with this target because
# it can't do I/O.
#set_board_info needs_status_wrapper  1

# It uses the remote stub protocol to talk to the board.
set_board_info gdb_protocol  "remote"
set_board_info use_gdb_stub  1

# Both the EVA and TS3 boards currently deal badly with X packets.
set_board_info disable_x_packet 1

# Both the EVA and TS3 boards currently deal badly with Z packets.
set_board_info disable_z_packet 1

# Used by gdb-comm.
set_board_info gdb_run_command  "jump *_start"
set_board_info gdb,start_symbol  "_start"

# Can't pass arguments to programs on this target.
set_board_info noargs  1
# And there's no support for signals.
set_board_info gdb,nosignals  1
# And it can't do I/O.
set_board_info gdb,noinferiorio  1

# Used by a few gcc.c-torture testcases to delimit how large the stack can
# be.
set_board_info gcc,stack_size  5000

# Used by a few gcc.c-torture testcases when trampolines are used.
set_board_info gcc,no_trampolines  1

# Used by a few gcc.c-torture testcases when labels as values are used.
set_board_info gcc,no_label_values  1

# sizeof int != sizeof long.
set_board_info gdb,short_int 1

# Some d10v:ts3 boards are in ts2-board compatibility mode after a reset.
# Force it into d10v:ts3 internal mode
set_board_info gdb_init_command "set \$dmap2 = 0x2000"
