import gdb-1999-10-11 snapshot
[deliverable/binutils-gdb.git] / gdb / config / mips / tm-irix3.h
CommitLineData
c906108c
SS
1/* Target machine description for SGI Iris under Irix, for GDB.
2 Copyright 1990, 1991, 1992, 1993, 1995 Free Software Foundation, Inc.
3
c5aa993b 4 This file is part of GDB.
c906108c 5
c5aa993b
JM
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
c906108c 10
c5aa993b
JM
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
c906108c 15
c5aa993b
JM
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
c906108c
SS
20
21#include "mips/tm-bigmips.h"
22
23/* SGI's assembler doesn't grok dollar signs in identifiers.
24 So we use dots instead. This item must be coordinated with G++. */
25#undef CPLUS_MARKER
26#define CPLUS_MARKER '.'
27
28/* Redefine register numbers for SGI. */
29
30#undef NUM_REGS
cce74817 31#undef MIPS_REGISTER_NAMES
c906108c
SS
32#undef FP0_REGNUM
33#undef PC_REGNUM
c906108c
SS
34#undef HI_REGNUM
35#undef LO_REGNUM
36#undef CAUSE_REGNUM
37#undef BADVADDR_REGNUM
38#undef FCRCS_REGNUM
39#undef FCRIR_REGNUM
40
41/* Number of machine registers */
42
43#define NUM_REGS 71
44
45/* Initializer for an array of names of registers.
46 There should be NUM_REGS strings in this initializer. */
47
cce74817 48#define MIPS_REGISTER_NAMES \
c906108c
SS
49 { "zero", "at", "v0", "v1", "a0", "a1", "a2", "a3", \
50 "t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7", \
51 "s0", "s1", "s2", "s3", "s4", "s5", "s6", "s7", \
52 "t8", "t9", "k0", "k1", "gp", "sp", "fp", "ra", \
53 "f0", "f1", "f2", "f3", "f4", "f5", "f6", "f7", \
54 "f8", "f9", "f10", "f11", "f12", "f13", "f14", "f15", \
55 "f16", "f17", "f18", "f19", "f20", "f21", "f22", "f23",\
56 "f24", "f25", "f26", "f27", "f28", "f29", "f30", "f31",\
57 "pc", "cause", "bad", "hi", "lo", "fsr", "fir" \
58 }
59
60/* Register numbers of various important registers.
61 Note that some of these values are "real" register numbers,
62 and correspond to the general registers of the machine,
63 and some are "phony" register numbers which are too large
64 to be actual register numbers as far as the user is concerned
65 but do serve to get the desired values when passed to read_register. */
66
67#define FP0_REGNUM 32 /* Floating point register 0 (single float) */
68#define PC_REGNUM 64 /* Contains program counter */
69#define CAUSE_REGNUM 65 /* describes last exception */
70#define BADVADDR_REGNUM 66 /* bad vaddr for addressing exception */
71#define HI_REGNUM 67 /* Multiple/divide temp */
72#define LO_REGNUM 68 /* ... */
73#define FCRCS_REGNUM 69 /* FP control/status */
74#define FCRIR_REGNUM 70 /* FP implementation/revision */
75
76/* Offsets for register values in _sigtramp frame.
77 sigcontext is immediately above the _sigtramp frame on Irix. */
c5aa993b 78#define SIGFRAME_BASE 0x0
c906108c
SS
79#define SIGFRAME_PC_OFF (SIGFRAME_BASE + 2 * 4)
80#define SIGFRAME_REGSAVE_OFF (SIGFRAME_BASE + 3 * 4)
81#define SIGFRAME_FPREGSAVE_OFF (SIGFRAME_BASE + 3 * 4 + 32 * 4 + 4)
This page took 0.039311 seconds and 4 git commands to generate.