summaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorStephane Carrez <stcarrez@nerim.fr>2000-11-24 21:24:04 +0000
committerStephane Carrez <stcarrez@nerim.fr>2000-11-24 21:24:04 +0000
commit18c83779fec3d0a7627e3801584d120d045b80d8 (patch)
tree78ca9a34e5332c02242e139c97078b91faab58b1 /gdb
parent36865386313b1775e6566c6bc16309a90a697aa1 (diff)
downloadgdb-18c83779fec3d0a7627e3801584d120d045b80d8.tar.gz
Support 68HC12 arch in Gdb
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/m68hc11-tdep.c12
2 files changed, 16 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f1d504079fc..06060634184 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2000-11-24 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+ * m68hc11-tdep.c (gdb_print_insn_m68hc11): New function.
+ (_initialize_m68hc11_tdep): Install it. Register bfd_arch_m68hc12.
+
+2000-11-24 Stephane Carrez <Stephane.Carrez@worldnet.fr>
+
* m68hc11-tdep.c (gdbarch_tdep): Move stack_correction global to here.
(STACK_CORRECTION): Get stack correction using gdbarch_tdep.
(m68hc11_saved_pc_after_call): Use STACK_CORRECTION.
diff --git a/gdb/m68hc11-tdep.c b/gdb/m68hc11-tdep.c
index df22d6a39f5..197c4a42f21 100644
--- a/gdb/m68hc11-tdep.c
+++ b/gdb/m68hc11-tdep.c
@@ -965,6 +965,15 @@ m68hc11_register_raw_size (int reg_nr)
return M68HC11_REG_SIZE;
}
+static int
+gdb_print_insn_m68hc11 (bfd_vma memaddr, disassemble_info *info)
+{
+ if (TARGET_ARCHITECTURE->arch == bfd_arch_m68hc11)
+ return print_insn_m68hc11 (memaddr, info);
+ else
+ return print_insn_m68hc12 (memaddr, info);
+}
+
static struct gdbarch *
m68hc11_gdbarch_init (struct gdbarch_info info,
struct gdbarch_list *arches)
@@ -1112,8 +1121,9 @@ void
_initialize_m68hc11_tdep (void)
{
register_gdbarch_init (bfd_arch_m68hc11, m68hc11_gdbarch_init);
+ register_gdbarch_init (bfd_arch_m68hc12, m68hc11_gdbarch_init);
if (!tm_print_insn) /* Someone may have already set it */
- tm_print_insn = print_insn_m68hc11;
+ tm_print_insn = gdb_print_insn_m68hc11;
add_com ("regs", class_vars, show_regs, "Print all registers");
}