Add missing files to previous commit (Allow Python notification of new object-file...
[deliverable/binutils-gdb.git] / gdb / s390-tdep.h
CommitLineData
d0f54f9d 1/* Target-dependent code for GDB, the GNU debugger.
7b6bb8da
JB
2 Copyright (C) 2003, 2007, 2008, 2009, 2010, 2011
3 Free Software Foundation, Inc.
d0f54f9d
JB
4
5 This file is part of GDB.
6
7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
d0f54f9d
JB
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
d0f54f9d
JB
19
20#ifndef S390_TDEP_H
21#define S390_TDEP_H
22
23/* Register information. */
24
25/* Program Status Word. */
26#define S390_PSWM_REGNUM 0
27#define S390_PSWA_REGNUM 1
28/* General Purpose Registers. */
29#define S390_R0_REGNUM 2
30#define S390_R1_REGNUM 3
31#define S390_R2_REGNUM 4
32#define S390_R3_REGNUM 5
33#define S390_R4_REGNUM 6
34#define S390_R5_REGNUM 7
35#define S390_R6_REGNUM 8
36#define S390_R7_REGNUM 9
37#define S390_R8_REGNUM 10
38#define S390_R9_REGNUM 11
39#define S390_R10_REGNUM 12
40#define S390_R11_REGNUM 13
41#define S390_R12_REGNUM 14
42#define S390_R13_REGNUM 15
43#define S390_R14_REGNUM 16
44#define S390_R15_REGNUM 17
45/* Access Registers. */
46#define S390_A0_REGNUM 18
47#define S390_A1_REGNUM 19
48#define S390_A2_REGNUM 20
49#define S390_A3_REGNUM 21
50#define S390_A4_REGNUM 22
51#define S390_A5_REGNUM 23
52#define S390_A6_REGNUM 24
53#define S390_A7_REGNUM 25
54#define S390_A8_REGNUM 26
55#define S390_A9_REGNUM 27
56#define S390_A10_REGNUM 28
57#define S390_A11_REGNUM 29
58#define S390_A12_REGNUM 30
59#define S390_A13_REGNUM 31
60#define S390_A14_REGNUM 32
61#define S390_A15_REGNUM 33
62/* Floating Point Control Word. */
63#define S390_FPC_REGNUM 34
64/* Floating Point Registers. */
65#define S390_F0_REGNUM 35
66#define S390_F1_REGNUM 36
67#define S390_F2_REGNUM 37
68#define S390_F3_REGNUM 38
69#define S390_F4_REGNUM 39
70#define S390_F5_REGNUM 40
71#define S390_F6_REGNUM 41
72#define S390_F7_REGNUM 42
73#define S390_F8_REGNUM 43
74#define S390_F9_REGNUM 44
75#define S390_F10_REGNUM 45
76#define S390_F11_REGNUM 46
77#define S390_F12_REGNUM 47
78#define S390_F13_REGNUM 48
79#define S390_F14_REGNUM 49
80#define S390_F15_REGNUM 50
7803799a
UW
81/* General Purpose Register Upper Halves. */
82#define S390_R0_UPPER_REGNUM 51
83#define S390_R1_UPPER_REGNUM 52
84#define S390_R2_UPPER_REGNUM 53
85#define S390_R3_UPPER_REGNUM 54
86#define S390_R4_UPPER_REGNUM 55
87#define S390_R5_UPPER_REGNUM 56
88#define S390_R6_UPPER_REGNUM 57
89#define S390_R7_UPPER_REGNUM 58
90#define S390_R8_UPPER_REGNUM 59
91#define S390_R9_UPPER_REGNUM 60
92#define S390_R10_UPPER_REGNUM 61
93#define S390_R11_UPPER_REGNUM 62
94#define S390_R12_UPPER_REGNUM 63
95#define S390_R13_UPPER_REGNUM 64
96#define S390_R14_UPPER_REGNUM 65
97#define S390_R15_UPPER_REGNUM 66
d0f54f9d 98/* Total. */
7803799a 99#define S390_NUM_REGS 67
d0f54f9d
JB
100
101/* Special register usage. */
102#define S390_SP_REGNUM S390_R15_REGNUM
103#define S390_RETADDR_REGNUM S390_R14_REGNUM
104#define S390_FRAME_REGNUM S390_R11_REGNUM
105
106/* Core file register sets, defined in s390-tdep.c. */
107#define s390_sizeof_gregset 0x90
108extern int s390_regmap_gregset[S390_NUM_REGS];
109#define s390x_sizeof_gregset 0xd8
110extern int s390x_regmap_gregset[S390_NUM_REGS];
111#define s390_sizeof_fpregset 0x88
112extern int s390_regmap_fpregset[S390_NUM_REGS];
113
7803799a
UW
114/* Linux target descriptions. */
115extern struct target_desc *tdesc_s390_linux32;
116extern struct target_desc *tdesc_s390_linux64;
117extern struct target_desc *tdesc_s390x_linux64;
118
d0f54f9d
JB
119#endif
120
This page took 0.703079 seconds and 4 git commands to generate.