]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/tilegx-tdep.h
GDB copyright headers update after running GDB's copyright.py script.
[thirdparty/binutils-gdb.git] / gdb / tilegx-tdep.h
CommitLineData
ade64f0e
PA
1/* Target-dependent code for the Tilera TILE-Gx processor.
2
618f726f 3 Copyright (C) 2012-2016 Free Software Foundation, Inc.
ade64f0e
PA
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
9 the Free Software Foundation; either version 3 of the License, or
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
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20#ifndef TILEGX_TDEP_H
21#define TILEGX_TDEP_H
22
23/* TILE-Gx has 56 general purpose registers (R0 - R52, TP, SP, LR),
24 plus 8 special general purpose registers (network and ZERO),
25 plus 1 magic register (PC).
26
27 TP (aka R53) is the thread specific data pointer.
28 SP (aka R54) is the stack pointer.
29 LR (aka R55) is the link register. */
30
31enum tilegx_regnum
32 {
33 TILEGX_R0_REGNUM,
8f1cee41 34 TILEGX_FIRST_EASY_REGNUM = TILEGX_R0_REGNUM,
ade64f0e
PA
35 TILEGX_R1_REGNUM,
36 TILEGX_R2_REGNUM,
37 TILEGX_R3_REGNUM,
38 TILEGX_R4_REGNUM,
39 TILEGX_R5_REGNUM,
40 TILEGX_R6_REGNUM,
41 TILEGX_R7_REGNUM,
42 TILEGX_R8_REGNUM,
43 TILEGX_R9_REGNUM,
44 TILEGX_R10_REGNUM,
45 TILEGX_R11_REGNUM,
46 TILEGX_R12_REGNUM,
47 TILEGX_R13_REGNUM,
48 TILEGX_R14_REGNUM,
49 TILEGX_R15_REGNUM,
50 TILEGX_R16_REGNUM,
51 TILEGX_R17_REGNUM,
52 TILEGX_R18_REGNUM,
53 TILEGX_R19_REGNUM,
54 TILEGX_R20_REGNUM,
55 TILEGX_R21_REGNUM,
56 TILEGX_R22_REGNUM,
57 TILEGX_R23_REGNUM,
58 TILEGX_R24_REGNUM,
59 TILEGX_R25_REGNUM,
60 TILEGX_R26_REGNUM,
61 TILEGX_R27_REGNUM,
62 TILEGX_R28_REGNUM,
63 TILEGX_R29_REGNUM,
64 TILEGX_R30_REGNUM,
65 TILEGX_R31_REGNUM,
66 TILEGX_R32_REGNUM,
67 TILEGX_R33_REGNUM,
68 TILEGX_R34_REGNUM,
69 TILEGX_R35_REGNUM,
70 TILEGX_R36_REGNUM,
71 TILEGX_R37_REGNUM,
72 TILEGX_R38_REGNUM,
73 TILEGX_R39_REGNUM,
74 TILEGX_R40_REGNUM,
75 TILEGX_R41_REGNUM,
76 TILEGX_R42_REGNUM,
77 TILEGX_R43_REGNUM,
78 TILEGX_R44_REGNUM,
79 TILEGX_R45_REGNUM,
80 TILEGX_R46_REGNUM,
81 TILEGX_R47_REGNUM,
82 TILEGX_R48_REGNUM,
83 TILEGX_R49_REGNUM,
84 TILEGX_R50_REGNUM,
85 TILEGX_R51_REGNUM,
86 TILEGX_R52_REGNUM,
87 TILEGX_TP_REGNUM,
88 TILEGX_SP_REGNUM,
89 TILEGX_LR_REGNUM,
90
91 TILEGX_SN_REGNUM,
92 TILEGX_NUM_EASY_REGS = TILEGX_SN_REGNUM, /* 56 */
93
94 TILEGX_IO0_REGNUM,
95 TILEGX_IO1_REGNUM,
96 TILEGX_US0_REGNUM,
97 TILEGX_US1_REGNUM,
98 TILEGX_US2_REGNUM,
99 TILEGX_US3_REGNUM,
100 TILEGX_ZERO_REGNUM,
101
102 TILEGX_PC_REGNUM,
103 TILEGX_NUM_PHYS_REGS = TILEGX_PC_REGNUM, /* 64 */
4aaf2503
WL
104 TILEGX_FAULTNUM_REGNUM,
105 TILEGX_NUM_REGS, /* 66 */
ade64f0e
PA
106 };
107
108enum { tilegx_reg_size = 8 };
109
110#endif /* tilegx-tdep.h */