aboutsummaryrefslogtreecommitdiff
path: root/opcodes/arm-dis.c
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/arm-dis.c')
-rw-r--r--opcodes/arm-dis.c6
1 files changed, 4 insertions, 2 deletions
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