ppc/svp64: disassemble normal mode specifiers
[binutils-gdb.git] / opcodes / ppc-dis.c
index 0d17c7a3badc9455c7f80c7ed28dd04462797d09..b40dfe03ebc93a403d56e3e94449621fde484e4b 100644 (file)
@@ -872,6 +872,7 @@ print_insn_powerpc_opcode (struct disassemble_info *info,
                           const struct powerpc_opcode *opcode,
                           const struct svp64_ctx *svp64)
 {
+  size_t len = 0;
   const ppc_opindex_t *opindex;
   const struct powerpc_operand *operand;
   enum {
@@ -894,8 +895,15 @@ print_insn_powerpc_opcode (struct disassemble_info *info,
                                "%s%s",
                                (svp64 ? "sv." : ""),
                                opcode->name);
+  len = strlen (opcode->name);
+  if (svp64)
+    {
+      len += (sizeof ("sv.") - 1);
+      len += svp64_print_spec (svp64, info);
+    }
+
   /* gdb fprintf_styled_func doesn't return count printed.  */
-  blanks = (8 - (int)strlen (opcode->name) - (svp64 ? 3 : 2));
+  blanks = (8 - len);
   if (blanks <= 0)
     blanks = 1;