diff options
author | Yao Qi <yao.qi@linaro.org> | 2017-01-26 14:29:19 +0000 |
---|---|---|
committer | Yao Qi <yao.qi@linaro.org> | 2017-01-26 14:29:19 +0000 |
commit | 8cafda321ca8588a9e42d78d8713b031696405bc (patch) | |
tree | 36a1238fcd78e6d8a899a46d7f892fb1ce7ccaf0 | |
parent | e47ad6c0bd7aa388b1bd488f6ef522c20c0b94ed (diff) | |
download | gdb-8cafda321ca8588a9e42d78d8713b031696405bc.zip gdb-8cafda321ca8588a9e42d78d8713b031696405bc.tar.gz gdb-8cafda321ca8588a9e42d78d8713b031696405bc.tar.bz2 |
Call print_insn_mep in mep_gdb_print_insn
opcodes/mep-dis.c:mep_print_insn has already had the code to
handle the case when info->section is NULL,
/* Picking the right ISA bitmask for the current context is tricky. */
if (info->section)
{
}
else /* sid or gdb */
{
}
so that we can still cal print_insn_mep even section can't be found.
On the other hand, user can disassemble an arbitrary address which
doesn't map to any section at all.
gdb:
2017-01-26 Yao Qi <yao.qi@linaro.org>
* mep-tdep.c (mep_gdb_print_insn): Set info->arch
to bfd_arch_mep. Don't return 0 if section is not
found. Call print_insn_mep.
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/mep-tdep.c | 10 |
2 files changed, 9 insertions, 7 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 90d0cb3..246d09e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2017-01-26 Yao Qi <yao.qi@linaro.org> + + * mep-tdep.c (mep_gdb_print_insn): Set info->arch + to bfd_arch_mep. Don't return 0 if section is not + found. Call print_insn_mep. + 2017-01-26 Pedro Alves <palves@redhat.com> Yao Qi <yao.qi@linaro.org> diff --git a/gdb/mep-tdep.c b/gdb/mep-tdep.c index 68b0c4b..b1dcc86 100644 --- a/gdb/mep-tdep.c +++ b/gdb/mep-tdep.c @@ -1266,13 +1266,12 @@ mep_pseudo_register_write (struct gdbarch *gdbarch, /* Disassembly. */ -/* The mep disassembler needs to know about the section in order to - work correctly. */ static int mep_gdb_print_insn (bfd_vma pc, disassemble_info * info) { struct obj_section * s = find_pc_section (pc); + info->arch = bfd_arch_mep; if (s) { /* The libopcodes disassembly code uses the section to find the @@ -1280,12 +1279,9 @@ mep_gdb_print_insn (bfd_vma pc, disassemble_info * info) the me_module index, and the me_module index to select the right instructions to print. */ info->section = s->the_bfd_section; - info->arch = bfd_arch_mep; - - return print_insn_mep (pc, info); } - - return 0; + + return print_insn_mep (pc, info); } |