From: Michael Snyder Date: Tue, 3 Jun 1997 23:28:54 +0000 (+0000) Subject: * configure.tgt: add mipsr3900-elf target X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3d400c0939c790bb605dcf0733bffc5322ba7677;p=binutils-gdb.git * configure.tgt: add mipsr3900-elf target * config/mips/r3900*.mt config/mips/tm-r3900*.h: ditto --- diff --git a/gdb/.Sanitize b/gdb/.Sanitize index 268468567a0..273a63c07bd 100644 --- a/gdb/.Sanitize +++ b/gdb/.Sanitize @@ -594,6 +594,33 @@ else done fi +if ( echo $* | grep keep\-r3900 > /dev/null ) ; then + for i in * ; do + if test ! -d $i && (grep sanitize-r3900 $i > /dev/null) ; then + if [ -n "${verbose}" ] ; then + echo Keeping r3900 stuff in $i + fi + fi + done +else + for i in * ; do + if test ! -d $i && (grep sanitize-r3900 $i > /dev/null) ; then + if [ -n "${verbose}" ] ; then + echo Removing traces of \"r3900\" from $i... + fi + cp $i new + sed '/start\-sanitize\-r3900/,/end-\sanitize\-r3900/d' < $i > new + if [ -n "${safe}" -a ! -f .Recover/$i ] ; then + if [ -n "${verbose}" ] ; then + echo Caching $i in .Recover... + fi + mv $i .Recover + fi + mv new $i + fi + done +fi + if ( echo $* | grep keep\-tic80 > /dev/null ) ; then for i in * ; do if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 38f65f47aa0..765f61a049c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +start-sanitize-r3900 +Tue Jun 3 16:24:46 1997 Michael Snyder (msnyder@cleaver.cygnus.com) + * configure.tgt: add mipsr3900-elf target + * config/mips/r3900.mt r3900l.mt tm-r3900.h tm-r3900l.h: ditto +end-sanitize-r3900 + start-sanitize-gdbtk Tue Jun 3 15:46:51 1997 Tom Tromey diff --git a/gdb/config/mips/.Sanitize b/gdb/config/mips/.Sanitize index 062465865be..0d5fb0c6014 100644 --- a/gdb/config/mips/.Sanitize +++ b/gdb/config/mips/.Sanitize @@ -63,11 +63,15 @@ tm-mips.h tm-mips64.h tm-mipsm3.h tm-mipsv4.h +tm-r3900.h +tm-r3900l.h tm-vr4300.h tm-vr4300el.h tm-vr5000.h tm-vr5000el.h tm-vxmips.h +r3900.mh +r3900l.mh vr4300.mt vr4300el.mt vr5000.mt diff --git a/gdb/config/mips/r3900.mt b/gdb/config/mips/r3900.mt new file mode 100644 index 00000000000..9b38a4d5b2c --- /dev/null +++ b/gdb/config/mips/r3900.mt @@ -0,0 +1,5 @@ +# Target: Big-endian mips board, typically an IDT. +TDEPFILES= mips-tdep.o remote-mips.o remote-array.o +TM_FILE= tm-r3900.h +SIM_OBS = remote-sim.o +SIM = ../sim/mips/libsim.a diff --git a/gdb/config/mips/r3900l.mt b/gdb/config/mips/r3900l.mt new file mode 100644 index 00000000000..755cee10bd2 --- /dev/null +++ b/gdb/config/mips/r3900l.mt @@ -0,0 +1,5 @@ +# Target: Big-endian mips board, typically an IDT. +TDEPFILES= mips-tdep.o remote-mips.o remote-array.o +TM_FILE= tm-r3900l.h +SIM_OBS = remote-sim.o +SIM = ../sim/mips/libsim.a diff --git a/gdb/config/mips/tm-r3900.h b/gdb/config/mips/tm-r3900.h new file mode 100644 index 00000000000..17ba87bc9fa --- /dev/null +++ b/gdb/config/mips/tm-r3900.h @@ -0,0 +1,60 @@ +/* Copyright (C) 1993 Free Software Foundation, Inc. + +This file is part of GDB. + +This program 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. + +This program 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 this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#define TARGET_BYTE_ORDER_SELECTABLE + +#include "mips/tm-bigmips.h" + +#undef DEFAULT_MIPS_TYPE +#define DEFAULT_MIPS_TYPE "r3051" + +/* start-sanitize-gm */ +#ifdef GENERAL_MAGIC + +#include "tm-magic.h" /* Include generic stuff */ + +/* For some reason GM can't hack this... */ + +#undef GET_LONGJMP_TARGET + +/* Watchpoint support */ + +#define TARGET_HAS_HARDWARE_WATCHPOINTS + +#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) \ + (1 == 1) /* We allow all types of hardware watchpoints */ + +/* Use these macros for watchpoint insertion/deletion. */ +/* type can be 0: write watch, 1: read watch, 2: access watch (read/write) */ + +#define target_insert_watchpoint(addr, len, type) \ + remote_mips_set_watchpoint (addr, len, type) + +#define target_remove_watchpoint(addr, len, type) \ + remote_mips_remove_watchpoint (addr, len, type) + +/* We need to remove watchpoints when stepping, else we hit them again! */ + +#define HAVE_NONSTEPPABLE_WATCHPOINT + +#define STOPPED_BY_WATCHPOINT(w) remote_mips_stopped_by_watchpoint () + +#define FLUSH_CACHED_MEMORY() flush_cached_memory() + +#endif /* GENERAL_MAGIC */ +/* end-sanitize-gm */ diff --git a/gdb/config/mips/tm-r3900l.h b/gdb/config/mips/tm-r3900l.h new file mode 100644 index 00000000000..361c9f92822 --- /dev/null +++ b/gdb/config/mips/tm-r3900l.h @@ -0,0 +1,21 @@ +/* Copyright (C) 1993 Free Software Foundation, Inc. + +This file is part of GDB. + +This program 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. + +This program 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 this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#define TARGET_BYTE_ORDER_SELECTABLE + +#include "mips/tm-mips.h" diff --git a/gdb/configure.tgt b/gdb/configure.tgt index 5f9cc5585c1..e91a528340d 100644 --- a/gdb/configure.tgt +++ b/gdb/configure.tgt @@ -167,6 +167,10 @@ mips64*vr5000*-*-elf*) gdb_target=vr5000 ;; mips64*vr5900*el-*-elf*) gdb_target=vr5000el ;; mips64*vr5900*-*-elf*) gdb_target=vr5000 ;; # end-sanitize-r5900 +# start-sanitize-r3900 +mips*r3900*el*-elf*) gdb_target=r3900el ;; +mips*r3900*-elf*) gdb_target=r3900 ;; +# end-sanitize-r3900 mips64*el-*-elf*) gdb_target=embedl64 ;; mips64*-*-elf*) gdb_target=embed64 ;; mips*el-*-ecoff*) gdb_target=embedl ;;