PowerPC objdump -Mraw
authorAlan Modra <amodra@gmail.com>
Sat, 11 May 2019 00:12:00 +0000 (09:42 +0930)
committerAlan Modra <amodra@gmail.com>
Sat, 11 May 2019 00:37:56 +0000 (10:07 +0930)
* ppc-dis.c (print_insn_powerpc) Don't skip optional operands
when -Mraw is in effect.

opcodes/ChangeLog
opcodes/ppc-dis.c

index 331932cb397eb4435fb111f6c0e70e38610d09dc..aa78ea96d5aec591ab54cd966f37f21a5b833596 100644 (file)
@@ -1,3 +1,8 @@
+2019-05-11  Alan Modra  <amodra@gmail.com>
+
+       * ppc-dis.c (print_insn_powerpc) Don't skip optional operands
+       when -Mraw is in effect.
+
 2019-05-09  Matthew Malcomson  <matthew.malcomson@arm.com>
 
        * aarch64-dis-2.c: Regenerate.
index d9ae42a3d084b3ec676c1229666cf3e2e5b6522d..e9e3b3621a753a27a74ef2fcf124718fd637fecb 100644 (file)
@@ -749,9 +749,11 @@ print_insn_powerpc (bfd_vma memaddr,
 
          operand = powerpc_operands + *opindex;
 
-         /* If all of the optional operands have the value zero,
-            then don't print any of them.  */
-         if ((operand->flags & PPC_OPERAND_OPTIONAL) != 0)
+         /* If all of the optional operands past this one have their
+            default value, then don't print any of them.  Except in
+            raw mode, print them all.  */
+         if ((operand->flags & PPC_OPERAND_OPTIONAL) != 0
+             && (dialect & PPC_OPCODE_RAW) == 0)
            {
              if (!skip_optional)
                skip_optional = skip_optional_operands (opindex, insn, dialect);