aboutsummaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>1998-02-24 19:07:28 +0000
committerNick Clifton <nickc@redhat.com>1998-02-24 19:07:28 +0000
commitc3ba2ed2d0a0ada82f8c93c924e39e3069771bd6 (patch)
tree7a5c6085e586a4eb07135d50963b002c145261eb /opcodes
parent69312dac86df4f919d38e10cb0244af881678ac1 (diff)
downloadgdb-c3ba2ed2d0a0ada82f8c93c924e39e3069771bd6.zip
gdb-c3ba2ed2d0a0ada82f8c93c924e39e3069771bd6.tar.gz
gdb-c3ba2ed2d0a0ada82f8c93c924e39e3069771bd6.tar.bz2
Fixed bug displaying symbols in big endian arms.
Diffstat (limited to 'opcodes')
-rw-r--r--opcodes/ChangeLog5
-rw-r--r--opcodes/arm-dis.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 5ddca55..6c7cd53 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,8 @@
+Tue Feb 24 11:06:18 1998 Nick Clifton <nickc@cygnus.com>
+
+ * arm-dis.c (print_insn_big_arm): Save the current symbol before
+ displaying a disassembled line.
+
Mon Feb 23 13:16:17 1998 Doug Evans <devans@seba.cygnus.com>
* cgen-asm.c: Include symcat.h.
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index 5075eaa..91bcab1 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -714,7 +714,7 @@ print_insn_big_arm (pc, info)
int is_thumb;
cs = coffsymbol (info->symbol);
- is_thumb =
+ is_thumb = (cs != NULL) &&
( cs->native->u.syment.n_sclass == C_THUMBEXT
|| cs->native->u.syment.n_sclass == C_THUMBSTAT
|| cs->native->u.syment.n_sclass == C_THUMBLABEL
@@ -758,6 +758,8 @@ print_insn_big_arm (pc, info)
given = (b[0] << 24) | (b[1] << 16) | (b[2] << 8) | (b[3]);
}
+ saved_symbol = info->symbol;
+
if (is_thumb)
{
status = print_insn_thumb (pc, info, given);
@@ -785,7 +787,7 @@ print_insn_little_arm (pc, info)
int is_thumb;
cs = coffsymbol (info->symbol);
- is_thumb =
+ is_thumb = (cs != NULL) &&
( cs->native->u.syment.n_sclass == C_THUMBEXT
|| cs->native->u.syment.n_sclass == C_THUMBSTAT
|| cs->native->u.syment.n_sclass == C_THUMBLABEL