Update copyright year in gdbarch.sh doc/gdb.texinfo and doc/refcard.tex
[binutils-gdb.git] / gdb / bfin-tdep.h
blob9172bcaec1d4608c5c70d8fc4ebffaae00b3847b
1 /* Target-dependent code for Analog Devices Blackfin processor, for GDB.
3 Copyright (C) 2005-2020 Free Software Foundation, Inc.
5 Contributed by Analog Devices, Inc.
7 This file is part of GDB.
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 3 of the License, or
12 (at your option) any later version.
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.
19 You should have received a copy of the GNU General Public License
20 along with this program. If not, see <http://www.gnu.org/licenses/>. */
22 #ifndef BFIN_TDEP_H
23 #define BFIN_TDEP_H
25 enum gdb_regnum {
26 /* Core Registers */
27 BFIN_R0_REGNUM = 0,
28 BFIN_R1_REGNUM,
29 BFIN_R2_REGNUM,
30 BFIN_R3_REGNUM,
31 BFIN_R4_REGNUM,
32 BFIN_R5_REGNUM,
33 BFIN_R6_REGNUM,
34 BFIN_R7_REGNUM,
35 BFIN_P0_REGNUM,
36 BFIN_P1_REGNUM,
37 BFIN_P2_REGNUM,
38 BFIN_P3_REGNUM,
39 BFIN_P4_REGNUM,
40 BFIN_P5_REGNUM,
41 BFIN_SP_REGNUM,
42 BFIN_FP_REGNUM,
43 BFIN_I0_REGNUM,
44 BFIN_I1_REGNUM,
45 BFIN_I2_REGNUM,
46 BFIN_I3_REGNUM,
47 BFIN_M0_REGNUM,
48 BFIN_M1_REGNUM,
49 BFIN_M2_REGNUM,
50 BFIN_M3_REGNUM,
51 BFIN_B0_REGNUM,
52 BFIN_B1_REGNUM,
53 BFIN_B2_REGNUM,
54 BFIN_B3_REGNUM,
55 BFIN_L0_REGNUM,
56 BFIN_L1_REGNUM,
57 BFIN_L2_REGNUM,
58 BFIN_L3_REGNUM,
59 BFIN_A0_DOT_X_REGNUM,
60 BFIN_A0_DOT_W_REGNUM,
61 BFIN_A1_DOT_X_REGNUM,
62 BFIN_A1_DOT_W_REGNUM,
63 BFIN_ASTAT_REGNUM,
64 BFIN_RETS_REGNUM,
65 BFIN_LC0_REGNUM,
66 BFIN_LT0_REGNUM,
67 BFIN_LB0_REGNUM,
68 BFIN_LC1_REGNUM,
69 BFIN_LT1_REGNUM,
70 BFIN_LB1_REGNUM,
71 BFIN_CYCLES_REGNUM,
72 BFIN_CYCLES2_REGNUM,
73 BFIN_USP_REGNUM,
74 BFIN_SEQSTAT_REGNUM,
75 BFIN_SYSCFG_REGNUM,
76 BFIN_RETI_REGNUM,
77 BFIN_RETX_REGNUM,
78 BFIN_RETN_REGNUM,
79 BFIN_RETE_REGNUM,
81 /* Pseudo Registers managed remotely. */
82 BFIN_PC_REGNUM,
84 /* Pseudo Registers managed locally. */
85 BFIN_CC_REGNUM
87 #define BFIN_NUM_REGS (BFIN_PC_REGNUM + 1)
88 #define BFIN_NUM_PSEUDO_REGS (1)
90 /* The ABIs for Blackfin. */
91 enum bfin_abi
93 BFIN_ABI_FLAT
96 /* Target-dependent structure in gdbarch. */
97 struct gdbarch_tdep
99 /* Which ABI is in use? */
100 enum bfin_abi bfin_abi;
103 /* Return the Blackfin ABI associated with GDBARCH. */
104 extern enum bfin_abi bfin_abi (struct gdbarch *gdbarch);
106 #endif /* BFIN_TDEP_H */