2003-11-05 Andrew Cagney <cagney@redhat.com>
[deliverable/binutils-gdb.git] / gdb / config / m68k / tm-vx68.h
CommitLineData
c906108c 1/* Target machine description for VxWorks m68k's, for GDB, the GNU debugger.
51603483
DJ
2 Copyright 1986, 1987, 1989, 1991, 1992, 1993, 1996, 1998, 1999, 2000,
3 2002, 2003
b6ba6518 4 Free Software Foundation, Inc.
c906108c
SS
5 Contributed by Cygnus Support.
6
c5aa993b 7 This file is part of GDB.
c906108c 8
c5aa993b
JM
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
c906108c 13
c5aa993b
JM
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
c906108c 18
c5aa993b
JM
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 59 Temple Place - Suite 330,
22 Boston, MA 02111-1307, USA. */
c906108c 23
c906108c
SS
24/* GCC is probably the only compiler used on this configuration. So
25 get this right even if the code which detects gcc2_compiled. is
26 still broken. */
27
28#define BELIEVE_PCC_PROMOTION 1
29
30/* We have more complex, useful breakpoints on the target. */
31#define DECR_PC_AFTER_BREAK 0
32
33#include "m68k/tm-m68k.h"
4f2e4a4f 34#include "config/tm-vxworks.h"
c906108c
SS
35
36/* Takes the current frame-struct pointer and returns the chain-pointer
37 to get to the calling frame.
38
39 If our current frame pointer is zero, we're at the top; else read out
40 the saved FP from memory pointed to by the current FP. */
41
618ce49f
AC
42#undef DEPRECATED_FRAME_CHAIN
43#define DEPRECATED_FRAME_CHAIN(thisframe) ((thisframe)->frame? read_memory_integer ((thisframe)->frame, 4): 0)
c906108c 44
c906108c
SS
45/* FIXME, Longjmp information stolen from Sun-3 config. Dunno if right. */
46/* Offsets (in target ints) into jmp_buf. Not defined by Sun, but at least
47 documented in a comment in <machine/setjmp.h>! */
48
49#define JB_ELEMENT_SIZE 4
50
51#define JB_ONSSTACK 0
52#define JB_SIGMASK 1
53#define JB_SP 2
54#define JB_PC 3
55#define JB_PSL 4
56#define JB_D2 5
57#define JB_D3 6
58#define JB_D4 7
59#define JB_D5 8
60#define JB_D6 9
61#define JB_D7 10
62#define JB_A2 11
63#define JB_A3 12
64#define JB_A4 13
65#define JB_A5 14
66#define JB_A6 15
67
68/* Figure out where the longjmp will land. Slurp the args out of the stack.
69 We expect the first arg to be a pointer to the jmp_buf structure from which
70 we extract the pc (JB_PC) that we will land at. The pc is copied into ADDR.
71 This routine returns true on success */
72
f4281f55 73#define GET_LONGJMP_TARGET(ADDR) m68k_get_longjmp_target(ADDR)
c906108c 74
c906108c
SS
75/* Number of registers in a ptrace_getfpregs call. */
76
12c266ea 77#define VX_SIZE_FPREGS (8 * DEPRECATED_REGISTER_RAW_SIZE (FP0_REGNUM) \
b1e29e33 78 + (3 * DEPRECATED_REGISTER_SIZE))
This page took 0.28194 seconds and 4 git commands to generate.