diff options
author | Michael Eager <eager@eagercon.com> | 2009-10-15 19:28:52 +0000 |
---|---|---|
committer | Michael Eager <eager@eagercon.com> | 2009-10-15 19:28:52 +0000 |
commit | 2d1c1221e22ffc8188595927cc1ae473bf66e1fb (patch) | |
tree | 6f2b8adbc8f096b8374b95f85b9849eb131b581e /gdb/microblaze-tdep.h | |
parent | f15f61a7f344161a8e23cd995d15d7382f738b9d (diff) | |
download | gdb-2d1c1221e22ffc8188595927cc1ae473bf66e1fb.zip gdb-2d1c1221e22ffc8188595927cc1ae473bf66e1fb.tar.gz gdb-2d1c1221e22ffc8188595927cc1ae473bf66e1fb.tar.bz2 |
* config/djgpp/fnchange.lst: Add translations for cpu-microblaze.c,
elf32-microblaze.c, microblaze-rom.c, microblaze-linux-tdep.c,
microblaze-tdep.h, microblaze-tdep.c, microblaze-opc.h,
microblaze-opcm.h, microblaze-dis.c, microblaze-dis.h, sim/microblaze,
microblaze.h, and microblaze.isa.
* configure.tgt: Add targets microblaze*-linux-*, microblaze*-xilinx-*.
* Makefile.in: Build microblaze-tdep.o, microblaze-linux-tdep.o.
HFILES_NO_SRCDIR: Add microblaze-tdep.h.
* microblaze-linux-tdep.c: New.
* microblaze-tdep.c: New.
* microblaze-tdep.h: New.
* NEWS: Announce Xilinx MicroBlaze support.
Diffstat (limited to 'gdb/microblaze-tdep.h')
-rw-r--r-- | gdb/microblaze-tdep.h | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/gdb/microblaze-tdep.h b/gdb/microblaze-tdep.h new file mode 100644 index 0000000..5a6c6a1 --- /dev/null +++ b/gdb/microblaze-tdep.h @@ -0,0 +1,117 @@ +/* Target-dependent code for Xilinx MicroBlaze. + + Copyright 2009 Free Software Foundation, Inc. + + This file is part of GDB. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. */ + +#ifndef MICROBLAZE_TDEP_H +#define MICROBLAZE_TDEP_H 1 + + +/* Microblaze architecture-specific information. */ +struct gdbarch_tdep +{ +}; + +struct microblaze_frame_cache +{ + /* Base address. */ + CORE_ADDR base; + CORE_ADDR pc; + + /* Do we have a frame? */ + int frameless_p; + + /* Frame size. */ + int framesize; + + /* Frame register. */ + int fp_regnum; + + /* Offsets to saved registers. */ + int register_offsets[57]; /* Must match MICROBLAZE_NUM_REGS. */ + + /* Table of saved registers. */ + struct trad_frame_saved_reg *saved_regs; +}; + +/* Register numbers. */ +enum microblaze_regnum +{ + MICROBLAZE_R0_REGNUM, + MICROBLAZE_R1_REGNUM, MICROBLAZE_SP_REGNUM = MICROBLAZE_R1_REGNUM, + MICROBLAZE_R2_REGNUM, + MICROBLAZE_R3_REGNUM, MICROBLAZE_RETVAL_REGNUM = MICROBLAZE_R3_REGNUM, + MICROBLAZE_R4_REGNUM, + MICROBLAZE_R5_REGNUM, MICROBLAZE_FIRST_ARGREG = MICROBLAZE_R5_REGNUM, + MICROBLAZE_R6_REGNUM, + MICROBLAZE_R7_REGNUM, + MICROBLAZE_R8_REGNUM, + MICROBLAZE_R9_REGNUM, + MICROBLAZE_R10_REGNUM, MICROBLAZE_LAST_ARGREG = MICROBLAZE_R10_REGNUM, + MICROBLAZE_R11_REGNUM, + MICROBLAZE_R12_REGNUM, + MICROBLAZE_R13_REGNUM, + MICROBLAZE_R14_REGNUM, + MICROBLAZE_R15_REGNUM, + MICROBLAZE_R16_REGNUM, + MICROBLAZE_R17_REGNUM, + MICROBLAZE_R18_REGNUM, + MICROBLAZE_R19_REGNUM, + MICROBLAZE_R20_REGNUM, + MICROBLAZE_R21_REGNUM, + MICROBLAZE_R22_REGNUM, + MICROBLAZE_R23_REGNUM, + MICROBLAZE_R24_REGNUM, + MICROBLAZE_R25_REGNUM, + MICROBLAZE_R26_REGNUM, + MICROBLAZE_R27_REGNUM, + MICROBLAZE_R28_REGNUM, + MICROBLAZE_R29_REGNUM, + MICROBLAZE_R30_REGNUM, + MICROBLAZE_R31_REGNUM, + MICROBLAZE_PC_REGNUM, + MICROBLAZE_MSR_REGNUM, + MICROBLAZE_EAR_REGNUM, + MICROBLAZE_ESR_REGNUM, + MICROBLAZE_FSR_REGNUM, + MICROBLAZE_BTR_REGNUM, + MICROBLAZE_PVR0_REGNUM, + MICROBLAZE_PVR1_REGNUM, + MICROBLAZE_PVR2_REGNUM, + MICROBLAZE_PVR3_REGNUM, + MICROBLAZE_PVR4_REGNUM, + MICROBLAZE_PVR5_REGNUM, + MICROBLAZE_PVR6_REGNUM, + MICROBLAZE_PVR7_REGNUM, + MICROBLAZE_PVR8_REGNUM, + MICROBLAZE_PVR9_REGNUM, + MICROBLAZE_PVR10_REGNUM, + MICROBLAZE_PVR11_REGNUM, + MICROBLAZE_REDR_REGNUM, + MICROBLAZE_RPID_REGNUM, + MICROBLAZE_RZPR_REGNUM, + MICROBLAZE_RTLBX_REGNUM, + MICROBLAZE_RTLBSX_REGNUM, + MICROBLAZE_RTLBLO_REGNUM, + MICROBLAZE_RTLBHI_REGNUM +}; + +/* MICROBLAZE_BREAKPOINT defines the breakpoint that should be used. + Only used for native debugging. */ +#define MICROBLAZE_BREAKPOINT {0xb9, 0xcc, 0x00, 0x60} + +#endif /* microblaze-tdep.h */ |