From ab382d64260d6549f57201b80d34035726117e3f Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Thu, 28 May 2020 17:36:31 +0930 Subject: [PATCH] asan: ns32k: use of uninitialized value * ns32k-dis.c (print_insn_arg): Handle d value of 'f' for immediates. (print_insn_ns32k): Revert last change. --- opcodes/ChangeLog | 6 ++++++ opcodes/ns32k-dis.c | 9 ++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 01892090697..986761ed8c7 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,9 @@ +2020-05-28 Alan Modra + + * ns32k-dis.c (print_insn_arg): Handle d value of 'f' for + immediates. + (print_insn_ns32k): Revert last change. + 2020-05-28 Nick Clifton * ns32k-dis.c (print_insn_ns32k): Change the arg_bufs array to diff --git a/opcodes/ns32k-dis.c b/opcodes/ns32k-dis.c index ccad820d8f3..eac461a9692 100644 --- a/opcodes/ns32k-dis.c +++ b/opcodes/ns32k-dis.c @@ -524,9 +524,7 @@ print_insn_arg (int d, /* Immediate. */ switch (d) { - case 'I': - case 'Z': - case 'A': + default: /* I and Z are output operands and can`t be immediate A is an address and we can`t have the address of an immediate either. We don't know how much to increase @@ -738,10 +736,7 @@ print_insn_ns32k (bfd_vma memaddr, disassemble_info *info) unsigned short first_word; int ioffset; /* Bits into instruction. */ int aoffset; /* Bits into arguments. */ - /* The arg_bufs array is made static in order to avoid a potential - use of an uninitialised value if we are asekd to disassemble a - corrupt instruction. */ - static char arg_bufs[MAX_ARGS+1][ARG_LEN]; + char arg_bufs[MAX_ARGS+1][ARG_LEN]; int argnum; int maxarg; struct private priv; -- 2.30.2