From c3ba2ed2d0a0ada82f8c93c924e39e3069771bd6 Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Tue, 24 Feb 1998 19:07:28 +0000 Subject: [PATCH] Fixed bug displaying symbols in big endian arms. --- opcodes/ChangeLog | 5 +++++ opcodes/arm-dis.c | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 5ddca55c63..6c7cd53478 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +Tue Feb 24 11:06:18 1998 Nick Clifton + + * 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 * cgen-asm.c: Include symcat.h. diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c index 5075eaa62a..91bcab120a 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 -- 2.34.1