Index: dejagnu-quilt/dejagnu/baseboards/mips-sim-sde32.exp =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ dejagnu-quilt/dejagnu/baseboards/mips-sim-sde32.exp 2007-05-24 16:25:43.000000000 +0100 @@ -0,0 +1,60 @@ +# Load the generic configuration for this board. This will define a basic +# set of 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"; + +# This tells it which directory to look in for the simulator. +setup_sim mips; + +# No multilib flags are set 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]"; +#set_board_info needs_status_wrapper 1 +set_board_info gdb,nofileio 1 + +set_board_info cflags "[libgloss_include_flags] [newlib_include_flags]"; +set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags]"; +set_board_info ldscript "-Tsde32.ld"; + +# And, it can't do arguments, and doesn't have real signals. +set_board_info noargs 1; +set_board_info gdb,nosignals 1; + +# For some big C++ benchmarks... +set_board_info sim,options "--memory-size=0x1000000" + +# Skip huge test. The MIPS simulator reports only +# 2MB of memory. +set_board_info gdb,skip_huge_test 1 + +# Tell gdb to assume no fpu for -msoft-float compilation +if {[string match "*soft-float*" [board_info $board multilib_flags]]} { + add_board_info gdb_load_commands "set mipsfpu none" +} + +# Tell gdb to assume no fpu for -msoft-float compilation +if {[string match "*mno-data-in-code*" [board_info $board multilib_flags]]} { + add_board_info sim,options "--spram=on" +} + +# +# Kludge g++_link_flags routine to explicitly add -lstdc++ to link flags +# so that we can make sure the it comes *before* newlib and the libgloss +# target libraries +# +proc msim_g++_link_flags { args } { + set flags [ msim_orig_g++_link_flags "$args" ] + append flags "-lstdc++ " + return "$flags" +} + +if { [info procs msim_orig_g++_link_flags ] == "" } { + verbose "installing msim_g++_link_flags" 1; + rename g++_link_flags msim_orig_g++_link_flags + rename msim_g++_link_flags g++_link_flags +} Index: dejagnu-quilt/dejagnu/lib/targetdb.exp =================================================================== --- dejagnu-quilt.orig/dejagnu/lib/targetdb.exp 2007-05-24 16:25:04.000000000 +0100 +++ dejagnu-quilt/dejagnu/lib/targetdb.exp 2007-05-24 16:25:12.000000000 +0100 @@ -73,6 +73,15 @@ } } +# +# Add VALUE to ENTRY for the current board being defined. +# +proc add_board_info { entry value } { + global board_info board; + + lappend board_info($board,$entry) $value; +} + # Fill in ENTRY with VALUE for the current target. # proc set_currtarget_info { entry value } {