aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1992-10-23 10:51:07 +0000
committerJohn Gilmore <gnu@cygnus>1992-10-23 10:51:07 +0000
commitf312afc75c29bd68bd772f73da9eaa04e2abd683 (patch)
tree50d85605cfdb2757b4ff7bcba02f6774ff04ba28
parentc00d8242d41732e975055e336765d897acbd74b2 (diff)
downloadgdb-f312afc75c29bd68bd772f73da9eaa04e2abd683.zip
gdb-f312afc75c29bd68bd772f73da9eaa04e2abd683.tar.gz
gdb-f312afc75c29bd68bd772f73da9eaa04e2abd683.tar.bz2
These two files are copyrighted by Sun Microsystems.
Wind River stole them from the Sun Unix distributions. We can't distribute them in an FSF GDB release. We should even rewrite them for our own releases, though that is not as urgent. Until these two files are rewritten, VxWorks support in GDB will not compile. The i960 support can be gained by just rewriting the ptrace.h file. Only small amounts of the reg.h file need to be rebuilt -- compile remote-vx.c to see what is needed. John
-rw-r--r--gdb/vx-share/ptrace.h47
-rw-r--r--gdb/vx-share/reg.h187
2 files changed, 11 insertions, 223 deletions
diff --git a/gdb/vx-share/ptrace.h b/gdb/vx-share/ptrace.h
index 8e3554f..bdc0f0f 100644
--- a/gdb/vx-share/ptrace.h
+++ b/gdb/vx-share/ptrace.h
@@ -1,44 +1,7 @@
-/* @(#)ptrace.h 1.1 86/07/07 SMI */
+/* THIS FILE WAS `BORROWED' FROM A COPYRIGHTED
+ SUN MICROSYSTEMS INCLUDE FILE. IT NEEDS TO BE REBUILT FROM SCRATCH.
-/*
- * Copyright (c) 1985 by Sun Microsystems, Inc.
+ John Gilmore
+ Cygnus Support
*/
-
-/*
-modification history
---------------------
-01a,05jun90,llk borrowed.
-*/
-
-#ifndef _PTRACE_
-#define _PTRACE_
-
-/*
- * Request values for the ptrace system call
- */
-enum ptracereq {
- PTRACE_TRACEME = 0, /* 0, by tracee to begin tracing */
- PTRACE_CHILDDONE = 0, /* 0, tracee is done with his half */
- PTRACE_PEEKTEXT, /* 1, read word from text segment */
- PTRACE_PEEKDATA, /* 2, read word from data segment */
- PTRACE_PEEKUSER, /* 3, read word from user struct */
- PTRACE_POKETEXT, /* 4, write word into text segment */
- PTRACE_POKEDATA, /* 5, write word into data segment */
- PTRACE_POKEUSER, /* 6, write word into user struct */
- PTRACE_CONT, /* 7, continue process */
- PTRACE_KILL, /* 8, terminate process */
- PTRACE_SINGLESTEP, /* 9, single step process */
- PTRACE_ATTACH, /* 10, attach to an existing process */
- PTRACE_DETACH, /* 11, detach from a process */
- PTRACE_GETREGS, /* 12, get all registers */
- PTRACE_SETREGS, /* 13, set all registers */
- PTRACE_GETFPREGS, /* 14, get all floating point regs */
- PTRACE_SETFPREGS, /* 15, set all floating point regs */
- PTRACE_READDATA, /* 16, read data segment */
- PTRACE_WRITEDATA, /* 17, write data segment */
- PTRACE_READTEXT, /* 18, read text segment */
- PTRACE_WRITETEXT, /* 19, write text segment */
- PTRACE_GETFPAREGS, /* 20, get all fpa regs */
- PTRACE_SETFPAREGS /* 21, set all fpa regs */
-};
-#endif !_PTRACE
+FIXME
diff --git a/gdb/vx-share/reg.h b/gdb/vx-share/reg.h
index 84658b7..bbc426e 100644
--- a/gdb/vx-share/reg.h
+++ b/gdb/vx-share/reg.h
@@ -1,15 +1,3 @@
-/* @(#)reg.h 1.1 86/07/07 SMI */
-
-/*
- * Copyright (c) 1986 by Sun Microsystems, Inc.
- */
-
-/*
-modification history
---------------------
-01a,05jun90,llk borrowed.
-*/
-
#ifndef _REG_
#define _REG_
@@ -34,176 +22,13 @@ struct fp_status {
#else /* For now, just 68000 */
-/*
- * Location of the users' stored
- * registers relative to R0.
- * Usage is u.u_ar0[XX].
- */
-#define R0 (0)
-#define R1 (1)
-#define R2 (2)
-#define R3 (3)
-#define R4 (4)
-#define R5 (5)
-#define R6 (6)
-#define R7 (7)
-#define AR0 (8)
-#define AR1 (9)
-#define AR2 (10)
-#define AR3 (11)
-#define AR4 (12)
-#define AR5 (13)
-#define AR6 (14)
-#define AR7 (15)
-#define SP (15)
-#define PS (16)
-#define PC (17)
-
-/*
- * And now for something completely the same...
- */
-#ifndef LOCORE
-struct regs {
- int r_dreg[8]; /* data registers */
-#define r_r0 r_dreg[0] /* r0 for portability */
- int r_areg[8]; /* address registers */
-#define r_sp r_areg[7] /* user stack pointer */
- int r_sr; /* status register (actually a short) */
-#define r_ps r_sr
- int r_pc; /* program counter */
-};
-
-struct stkfmt {
- int f_stkfmt : 4; /* stack format */
- int : 2;
- int f_vector : 10; /* vector offset */
- short f_beibase; /* start of bus error info (if any) */
-};
-
-
-/*
- * Struct for floating point registers and general state
- * for the MC68881 (the sky fpp has no user visible state).
- * If fps_flags == FPS_UNUSED, the other 68881 fields have no meaning.
- * fps_code and fps_flags are software implemented fields.
- * fps_flags is not used when set by user level programs,
- * but changing fps_code has the side effect of changing u.u_code.
- */
-
-typedef struct ext_fp {
- int fp[3];
-} ext_fp; /* extended 96-bit 68881 fp registers */
-
-struct fp_status {
- ext_fp fps_regs[8]; /* 68881 floating point regs */
- int fps_control; /* 68881 control reg */
- int fps_status; /* 68881 status reg */
- int fps_iaddr; /* 68881 instruction address reg */
- int fps_code; /* additional word for signals */
- int fps_flags; /* r/o - unused, idle or busy */
-};
-#endif !LOCORE
-
-/*
- * Values defined for `fps_flags'.
- */
-#define FPS_UNUSED 0 /* 68881 never used yet */
-#define FPS_IDLE 1 /* 68881 instruction completed */
-#define FPS_BUSY 2 /* 68881 instruction interrupted */
-
-/*
- * The EXT_FPS_FLAGS() macro is used to convert a pointer to an
- * fp_istate into a value to be used for the user visible state
- * found in fps_flags. As a speed optimization, this convertion
- * is only done is required (e.g. the PTRACE_GETFPREGS ptrace
- * call or when dumping core) instead of on each context switch.
- * The tests that we base the state on are that a fpis_vers of
- * FPIS_VERSNULL means NULL state, else a fpis_bufsiz of FPIS_IDLESZ
- * means IDLE state, else we assume BUSY state.
- */
-#define FPIS_VERSNULL 0x0
-#define FPIS_IDLESIZE 0x18
-
-#define EXT_FPS_FLAGS(istatep) \
- ((istatep)->fpis_vers == FPIS_VERSNULL ? FPS_UNUSED : \
- (istatep)->fpis_bufsiz == FPIS_IDLESIZE ? FPS_IDLE : FPS_BUSY)
-
-#ifndef LOCORE
-/*
- * Struct for the internal state of the MC68881
- * Although the MC68881 can have a smaller maximum for
- * internal state, we allow for more to allow for expansion.
- */
-#define FPIS_BUFSIZ 0xc0
-
-struct fp_istate {
- unsigned char fpis_vers; /* version number */
- unsigned char fpis_bufsiz; /* size of info in fpis_buf */
- unsigned short fpis_reserved; /* reserved word */
- unsigned char fpis_buf[FPIS_BUFSIZ]; /* fpp internal state buffer */
-};
-
-/*
- * Structures for the status and data registers are defined here.
- * Struct fpa_status are included in the u area.
- * Struct fpa_regs is included in struct core.
- */
-
-/* struct fpa_status is saved/restored during context switch */
-struct fpa_status {
- unsigned int fpas_state; /* STATE, supervisor privileged reg */
- unsigned int fpas_imask; /* IMASK */
- unsigned int fpas_load_ptr; /* LOAD_PTR */
- unsigned int fpas_ierr; /* IERR */
- unsigned int fpas_act_instr; /* pipe active instruction halves */
- unsigned int fpas_nxt_instr; /* pipe next instruction halves */
- unsigned int fpas_act_d1half;/* pipe active data first half */
- unsigned int fpas_act_d2half;/* pipe active data second half */
- unsigned int fpas_nxt_d1half;/* pipe next data first half */
- unsigned int fpas_nxt_d2half;/* pipe next data second half */
- unsigned int fpas_mode3_0; /* FPA MODE3_0 register */
- unsigned int fpas_wstatus; /* FPA WSTATUS register */
-};
+/* THE 68000 VERSION OF THIS FILE WAS `BORROWED' FROM A COPYRIGHTED
+ SUN MICROSYSTEMS INCLUDE FILE. IT NEEDS TO BE REBUILT FROM SCRATCH.
-/*
- * Since there are 32 contexts supported by the FPA hardware,
- * when we do context switch on the FPA, we don't save/restore
- * the data registers between the FPA and the u area.
- * If there are already 32 processes using the fpa concurrently,
- * we give an error message to the 33rd process trying to use the fpa.
- * (Hopefully there will not be this many processes using FPA concurrently.)
+ John Gilmore
+ Cygnus Support
*/
-
-#define FPA_NCONTEXTS 32
-#define FPA_NDATA_REGS 32
-
-typedef struct fpa_long {
- int fpl_data[2];
-} fpa_long; /* 64 bit double precision registers */
-
-/* Struct fpa_regs is included in struct core. */
-struct fpa_regs {
- unsigned int fpar_flags; /* if zero, other fields are meaningless */
- struct fpa_status fpar_status;
- fpa_long fpar_data[FPA_NDATA_REGS];
-};
-
-/*
- * The size of struct fpa_regs is changed from 141 ints in 3.0 to
- * 77 ints in 3.x. A pad of this size difference is added to struct core.
- */
-#define CORE_PADLEN 64
-
-/*
- * If there is going to be external FPU state then we must define the FPU
- * variable
- */
-struct fpu {
- struct fp_status f_fpstatus; /* External FPP state, if any */
- struct fpa_regs f_fparegs; /* FPA registers, if any */
- int f_pad[CORE_PADLEN]; /* see comment above */
-};
-
-#endif !LOCORE
+FIXME
+
#endif /* !I80960 */
#endif !_REG_