gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdb / s390-linux-tdep.h
CommitLineData
d6e58945
PR
1/* Target-dependent code for GNU/Linux on s390.
2
b811d2c2 3 Copyright (C) 2003-2020 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 19
d6e58945
PR
20#ifndef S390_LINUX_TDEP_H
21#define S390_LINUX_TDEP_H
d0f54f9d 22
2ccd1468
UW
23#define S390_IS_GREGSET_REGNUM(i) \
24 (((i) >= S390_PSWM_REGNUM && (i) <= S390_A15_REGNUM) \
25 || ((i) >= S390_R0_UPPER_REGNUM && (i) <= S390_R15_UPPER_REGNUM) \
26 || (i) == S390_ORIG_R2_REGNUM)
27
28#define S390_IS_FPREGSET_REGNUM(i) \
29 ((i) >= S390_FPC_REGNUM && (i) <= S390_F15_REGNUM)
30
4ac33720
UW
31#define S390_IS_TDBREGSET_REGNUM(i) \
32 ((i) >= S390_TDB_DWORD0_REGNUM && (i) <= S390_TDB_R15_REGNUM)
33
d6e58945 34/* Core file register sets, defined in s390-linux-tdep.c. */
d0f54f9d 35#define s390_sizeof_gregset 0x90
d0f54f9d 36#define s390x_sizeof_gregset 0xd8
99b7da5d 37extern const struct regset s390_gregset;
d0f54f9d 38#define s390_sizeof_fpregset 0x88
99b7da5d
AA
39extern const struct regset s390_fpregset;
40extern const struct regset s390_last_break_regset;
41extern const struct regset s390x_last_break_regset;
42extern const struct regset s390_system_call_regset;
43extern const struct regset s390_tdb_regset;
4ac33720 44#define s390_sizeof_tdbregset 0x100
550bdf96
AA
45extern const struct regset s390_vxrs_low_regset;
46extern const struct regset s390_vxrs_high_regset;
1b63490c
AA
47extern const struct regset s390_gs_regset;
48extern const struct regset s390_gsbc_regset;
d0f54f9d 49
94eae614 50/* GNU/Linux target descriptions. */
c642a434
UW
51extern struct target_desc *tdesc_s390_linux32v1;
52extern struct target_desc *tdesc_s390_linux32v2;
7803799a 53extern struct target_desc *tdesc_s390_linux64;
c642a434
UW
54extern struct target_desc *tdesc_s390_linux64v1;
55extern struct target_desc *tdesc_s390_linux64v2;
4ac33720 56extern struct target_desc *tdesc_s390_te_linux64;
550bdf96
AA
57extern struct target_desc *tdesc_s390_vx_linux64;
58extern struct target_desc *tdesc_s390_tevx_linux64;
1b63490c 59extern struct target_desc *tdesc_s390_gs_linux64;
c642a434
UW
60extern struct target_desc *tdesc_s390x_linux64v1;
61extern struct target_desc *tdesc_s390x_linux64v2;
4ac33720 62extern struct target_desc *tdesc_s390x_te_linux64;
550bdf96
AA
63extern struct target_desc *tdesc_s390x_vx_linux64;
64extern struct target_desc *tdesc_s390x_tevx_linux64;
1b63490c 65extern struct target_desc *tdesc_s390x_gs_linux64;
7803799a 66
d6e58945 67#endif /* S390_LINUX_TDEP_H */
This page took 1.589685 seconds and 4 git commands to generate.