aboutsummaryrefslogtreecommitdiff
path: root/gdb/microblaze-tdep.h
diff options
context:
space:
mode:
authorMichael Eager <eager@eagercon.com>2009-10-15 19:28:52 +0000
committerMichael Eager <eager@eagercon.com>2009-10-15 19:28:52 +0000
commit2d1c1221e22ffc8188595927cc1ae473bf66e1fb (patch)
tree6f2b8adbc8f096b8374b95f85b9849eb131b581e /gdb/microblaze-tdep.h
parentf15f61a7f344161a8e23cd995d15d7382f738b9d (diff)
downloadgdb-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.h117
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 */