From 3fcb9021565be2a31fddd72721517050f392632c Mon Sep 17 00:00:00 2001 From: "K. Richard Pixley" Date: Wed, 21 Oct 1992 05:12:16 +0000 Subject: [PATCH] umax native support --- gdb/.Sanitize | 1 + gdb/ChangeLog | 11 ++++++++++ gdb/Makefile.in | 2 +- gdb/config/umax.mh | 4 +++- gdb/config/umax.mt | 2 +- gdb/nm-umax.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++ gdb/xm-umax.h | 35 ------------------------------ 7 files changed, 71 insertions(+), 38 deletions(-) create mode 100644 gdb/nm-umax.h diff --git a/gdb/.Sanitize b/gdb/.Sanitize index 3079abda063..0e48784b522 100644 --- a/gdb/.Sanitize +++ b/gdb/.Sanitize @@ -164,6 +164,7 @@ nm-sun386.h nm-sun4os4.h nm-trash.h nm-ultra3.h +nm-umax.h ns32k-opcode.h ns32k-pinsn.c objfiles.c diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e8fdb1b114d..be1ea1ee418 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,16 @@ Tue Oct 20 21:32:18 1992 K. Richard Pixley (rich@sendai.cygnus.com) + umax native support (untested). + + * config/umax.mh (XDEPFILES): removed infptrace.o inftarg.o + fork-child.o. + (NAT_FILE, NATDEPFILES): new macros. + * config/umax.mt (TDEPFILES): removed exec.o. + * xm-umax.h (U_REGS_OFFSET, ATTACH_DETACH, REGISTER_U_ADDR): + removed to nm-umax.h. + * nm-umax.h: new file. + * Makefile.in (HFILES): added nm-umax.h. + hppa native support (untested). * config/hppahpux.mh, config/hppabsd.mh (XDEPFILES): now empty. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index a4f15ccd395..90f550564f8 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -256,7 +256,7 @@ HFILES= breakpoint.h buildsym.h call-cmds.h command.h defs.h \ nm-i386bsd.h nm-i386mach.h nm-i386v.h nm-i386v4.h nm-irix3.h \ nm-irix4.h nm-linux.h nm-m88k.h nm-mips.h nm-news.h nm-rs6000.h \ nm-sun2.h nm-sun3.h nm-sun386.h nm-sun4os4.h nm-trash.h \ - nm-ultra3.h nm-hppab.h nm-hppah.h + nm-ultra3.h nm-hppab.h nm-hppah.h nm-umax.h REMOTE_EXAMPLES = m68k-stub.c i386-stub.c sparc-stub.c rem-multi.shar diff --git a/gdb/config/umax.mh b/gdb/config/umax.mh index 2e874db1979..56d49abd089 100644 --- a/gdb/config/umax.mh +++ b/gdb/config/umax.mh @@ -1,3 +1,5 @@ # Host: Encore running umax 4.2 -XDEPFILES= infptrace.o inftarg.o fork-child.o umax-xdep.o +XDEPFILES= umax-xdep.o XM_FILE= xm-umax.h +NAT_FILE= nm-umax.h +NATDEPFILES= exec.o infptrace.o inftarg.o fork-child.o diff --git a/gdb/config/umax.mt b/gdb/config/umax.mt index afaaeaae3ce..3c6063272b2 100644 --- a/gdb/config/umax.mt +++ b/gdb/config/umax.mt @@ -1,3 +1,3 @@ # Target: Encore running umax 4.2 -TDEPFILES= exec.o ns32k-pinsn.o +TDEPFILES= ns32k-pinsn.o TM_FILE= tm-umax.h diff --git a/gdb/nm-umax.h b/gdb/nm-umax.h new file mode 100644 index 00000000000..eb8326e1a75 --- /dev/null +++ b/gdb/nm-umax.h @@ -0,0 +1,54 @@ +/* Definitions to make GDB run on an encore under umax 4.2 + Copyright 1987, 1989, 1992 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., 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* Do implement the attach and detach commands... */ +#define ATTACH_DETACH + +/* Offset of registers within u area. */ +#define U_REGS_OFFSET 0 + +/* called from register_addr() -- blockend not used for now */ +#define REGISTER_U_ADDR(addr, blockend, regno) \ +{ \ + switch (regno) { \ + case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: \ + addr = PU_R0 - (regno * sizeof (int)); break; \ + case SP_REGNUM: \ + addr = PU_SP; break; \ + case PC_REGNUM: \ + addr = PU_PC; break; \ + case FP_REGNUM: \ + addr = PU_FP; break; \ + case PS_REGNUM: \ + addr = PU_PSL; break; \ + case FPS_REGNUM: \ + addr = PU_FSR; break; \ + case FP0_REGNUM + 0: case FP0_REGNUM + 1: \ + case FP0_REGNUM + 2: case FP0_REGNUM + 3: \ + case FP0_REGNUM + 4: case FP0_REGNUM + 5: \ + case FP0_REGNUM + 6: case FP0_REGNUM + 7: \ + addr = PU_F0 + (regno - FP0_REGNUM) * sizeof (float); break; \ + case LP0_REGNUM + 0: case LP0_REGNUM + 1: \ + case LP0_REGNUM + 2: case LP0_REGNUM + 3: \ + addr = PU_F0 + (regno - LP0_REGNUM) * sizeof (double); break; \ + default: \ + printf ("bad argument to REGISTER_U_ADDR %d\n", regno); \ + abort (); \ + } \ +} diff --git a/gdb/xm-umax.h b/gdb/xm-umax.h index f6f2e17eb1b..5c5acb8fe97 100644 --- a/gdb/xm-umax.h +++ b/gdb/xm-umax.h @@ -21,41 +21,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define HAVE_WAIT_STRUCT -/* Offset of registers within u area. */ -#define U_REGS_OFFSET 0 - -/* Do implement the attach and detach commands... */ -#define ATTACH_DETACH - /* Doesn't have siginterupt. */ #define NO_SIGINTERRUPT -/* called from register_addr() -- blockend not used for now */ -#define REGISTER_U_ADDR(addr, blockend, regno) \ -{ \ - switch (regno) { \ - case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: \ - addr = PU_R0 - (regno * sizeof (int)); break; \ - case SP_REGNUM: \ - addr = PU_SP; break; \ - case PC_REGNUM: \ - addr = PU_PC; break; \ - case FP_REGNUM: \ - addr = PU_FP; break; \ - case PS_REGNUM: \ - addr = PU_PSL; break; \ - case FPS_REGNUM: \ - addr = PU_FSR; break; \ - case FP0_REGNUM + 0: case FP0_REGNUM + 1: \ - case FP0_REGNUM + 2: case FP0_REGNUM + 3: \ - case FP0_REGNUM + 4: case FP0_REGNUM + 5: \ - case FP0_REGNUM + 6: case FP0_REGNUM + 7: \ - addr = PU_F0 + (regno - FP0_REGNUM) * sizeof (float); break; \ - case LP0_REGNUM + 0: case LP0_REGNUM + 1: \ - case LP0_REGNUM + 2: case LP0_REGNUM + 3: \ - addr = PU_F0 + (regno - LP0_REGNUM) * sizeof (double); break; \ - default: \ - printf ("bad argument to REGISTER_U_ADDR %d\n", regno); \ - abort (); \ - } \ -} -- 2.30.2