GDB (API)
/home/stan/gdb/src/gdb/bfin-tdep.h
Go to the documentation of this file.
00001 /* Target-dependent code for Analog Devices Blackfin processor, for GDB.
00002 
00003    Copyright (C) 2005-2013 Free Software Foundation, Inc.
00004 
00005    Contributed by Analog Devices, Inc.
00006 
00007    This file is part of GDB.
00008 
00009    This program is free software; you can redistribute it and/or modify
00010    it under the terms of the GNU General Public License as published by
00011    the Free Software Foundation; either version 3 of the License, or
00012    (at your option) any later version.
00013 
00014    This program is distributed in the hope that it will be useful,
00015    but WITHOUT ANY WARRANTY; without even the implied warranty of
00016    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017    GNU General Public License for more details.
00018 
00019    You should have received a copy of the GNU General Public License
00020    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
00021 
00022 enum gdb_regnum {
00023   /* Core Registers */
00024   BFIN_R0_REGNUM = 0,
00025   BFIN_R1_REGNUM,
00026   BFIN_R2_REGNUM,
00027   BFIN_R3_REGNUM,
00028   BFIN_R4_REGNUM,
00029   BFIN_R5_REGNUM,
00030   BFIN_R6_REGNUM,
00031   BFIN_R7_REGNUM,
00032   BFIN_P0_REGNUM,
00033   BFIN_P1_REGNUM,
00034   BFIN_P2_REGNUM,
00035   BFIN_P3_REGNUM,
00036   BFIN_P4_REGNUM,
00037   BFIN_P5_REGNUM,
00038   BFIN_SP_REGNUM,
00039   BFIN_FP_REGNUM,
00040   BFIN_I0_REGNUM,
00041   BFIN_I1_REGNUM,
00042   BFIN_I2_REGNUM,
00043   BFIN_I3_REGNUM,
00044   BFIN_M0_REGNUM,
00045   BFIN_M1_REGNUM,
00046   BFIN_M2_REGNUM,
00047   BFIN_M3_REGNUM,
00048   BFIN_B0_REGNUM,
00049   BFIN_B1_REGNUM,
00050   BFIN_B2_REGNUM,
00051   BFIN_B3_REGNUM,
00052   BFIN_L0_REGNUM,
00053   BFIN_L1_REGNUM,
00054   BFIN_L2_REGNUM,
00055   BFIN_L3_REGNUM,
00056   BFIN_A0_DOT_X_REGNUM,
00057   BFIN_A0_DOT_W_REGNUM,
00058   BFIN_A1_DOT_X_REGNUM,
00059   BFIN_A1_DOT_W_REGNUM,
00060   BFIN_ASTAT_REGNUM,
00061   BFIN_RETS_REGNUM,
00062   BFIN_LC0_REGNUM,
00063   BFIN_LT0_REGNUM,
00064   BFIN_LB0_REGNUM,
00065   BFIN_LC1_REGNUM,
00066   BFIN_LT1_REGNUM,
00067   BFIN_LB1_REGNUM,
00068   BFIN_CYCLES_REGNUM,
00069   BFIN_CYCLES2_REGNUM,
00070   BFIN_USP_REGNUM,
00071   BFIN_SEQSTAT_REGNUM,
00072   BFIN_SYSCFG_REGNUM,
00073   BFIN_RETI_REGNUM,
00074   BFIN_RETX_REGNUM,
00075   BFIN_RETN_REGNUM,
00076   BFIN_RETE_REGNUM,
00077 
00078   /* Pseudo Registers managed remotely.  */
00079   BFIN_PC_REGNUM,
00080 
00081   /* Pseudo Registers managed locally.  */
00082   BFIN_CC_REGNUM
00083 };
00084 #define BFIN_NUM_REGS (BFIN_PC_REGNUM + 1)
00085 #define BFIN_NUM_PSEUDO_REGS (1)
00086 
00087 /* The ABIs for Blackfin.  */
00088 enum bfin_abi
00089 {
00090   BFIN_ABI_FLAT
00091 };
00092 
00093 /* Target-dependent structure in gdbarch.  */
00094 struct gdbarch_tdep
00095 {
00096   /* Which ABI is in use?  */
00097   enum bfin_abi bfin_abi;
00098 };
00099 
00100 /* Return the Blackfin ABI associated with GDBARCH.  */
00101 extern enum bfin_abi bfin_abi (struct gdbarch *gdbarch);
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines