aboutsummaryrefslogtreecommitdiff
path: root/opcodes/ppc-dis.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2007-05-18 01:32:58 +0000
committerAlan Modra <amodra@gmail.com>2007-05-18 01:32:58 +0000
commit65b650b4c7463f4508bed523c24ab0031a5ae5cd (patch)
tree7e4cbf3984cfec34faf721c00474d071e8add171 /opcodes/ppc-dis.c
parent26079076f561da43bcdddf0eaec32211fec765a7 (diff)
downloadgdb-65b650b4c7463f4508bed523c24ab0031a5ae5cd.zip
gdb-65b650b4c7463f4508bed523c24ab0031a5ae5cd.tar.gz
gdb-65b650b4c7463f4508bed523c24ab0031a5ae5cd.tar.bz2
* ppc-dis.c (print_insn_powerpc): Don't skip all operands
after setting skip_optional.
Diffstat (limited to 'opcodes/ppc-dis.c')
-rw-r--r--opcodes/ppc-dis.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c
index 295b04d..2545a36 100644
--- a/opcodes/ppc-dis.c
+++ b/opcodes/ppc-dis.c
@@ -271,12 +271,14 @@ print_insn_powerpc (bfd_vma memaddr,
/* If all of the optional operands have the value zero,
then don't print any of them. */
- if (skip_optional < 0
- && (operand->flags & PPC_OPERAND_OPTIONAL) != 0)
- skip_optional = skip_optional_operands (opindex, insn, dialect);
-
- if (skip_optional > 0)
- continue;
+ if ((operand->flags & PPC_OPERAND_OPTIONAL) != 0)
+ {
+ if (skip_optional < 0)
+ skip_optional = skip_optional_operands (opindex, insn,
+ dialect);
+ if (skip_optional)
+ continue;
+ }
value = operand_value_powerpc (operand, insn, dialect);