Fix ARI text for floatformat_from_double
[deliverable/binutils-gdb.git] / opcodes / tic4x-dis.c
index e07434bfde55a29e258a71f199b8040f8a793da7..d9f95c94106a5ccb98431c43de8f4db09dbd6717 100644 (file)
@@ -1,6 +1,6 @@
 /* Print instructions for the Texas TMS320C[34]X, for GDB and GNU Binutils.
 
-   Copyright 2002, 2003, 2005, 2007, 2012 Free Software Foundation, Inc.
+   Copyright (C) 2002-2019 Free Software Foundation, Inc.
 
    Contributed by Michael P. Hayes (m.hayes@elec.canterbury.ac.nz)
 
@@ -24,7 +24,7 @@
 #include "sysdep.h"
 #include <math.h>
 #include "libiberty.h"
-#include "dis-asm.h"
+#include "disassemble.h"
 #include "opcode/tic4x.h"
 
 #define TIC4X_DEBUG 0
@@ -120,7 +120,7 @@ tic4x_print_char (struct disassemble_info * info, char ch)
 }
 
 static int
-tic4x_print_str (struct disassemble_info *info, char *str)
+tic4x_print_str (struct disassemble_info *info, const char *str)
 {
   if (info != NULL)
     (*info->fprintf_func) (info->stream, "%s", str);
@@ -137,17 +137,19 @@ tic4x_print_register (struct disassemble_info *info, unsigned long regno)
     {
       registertable = xmalloc (sizeof (tic4x_register_t *) * REG_TABLE_SIZE);
       for (i = 0; i < tic3x_num_registers; i++)
-       registertable[tic3x_registers[i].regno] = (tic4x_register_t *) (tic3x_registers + i);
+       registertable[tic3x_registers[i].regno]
+         = (tic4x_register_t *) (tic3x_registers + i);
       if (IS_CPU_TIC4X (tic4x_version))
        {
          /* Add C4x additional registers, overwriting
             any C3x registers if necessary.  */
          for (i = 0; i < tic4x_num_registers; i++)
-           registertable[tic4x_registers[i].regno] =
-             (tic4x_register_t *)(tic4x_registers + i);
+           registertable[tic4x_registers[i].regno]
+             (tic4x_register_t *)(tic4x_registers + i);
        }
     }
-  if ((int) regno > (IS_CPU_TIC4X (tic4x_version) ? TIC4X_REG_MAX : TIC3X_REG_MAX))
+  if (regno > (IS_CPU_TIC4X (tic4x_version) ? TIC4X_REG_MAX : TIC3X_REG_MAX)
+      || registertable[regno] == NULL)
     return 0;
   if (info != NULL)
     (*info->fprintf_func) (info->stream, "%s", registertable[regno]->name);
@@ -294,7 +296,7 @@ tic4x_print_indirect (struct disassemble_info *info,
   unsigned int aregno;
   unsigned int modn;
   unsigned int disp;
-  char *a;
+  const char *a;
 
   aregno = 0;
   modn = 0;
@@ -357,8 +359,8 @@ tic4x_print_op (struct disassemble_info *info,
                unsigned long pc)
 {
   int val;
-  char *s;
-  char *parallel = NULL;
+  const char *s;
+  const char *parallel = NULL;
 
   /* Print instruction name.  */
   s = p->name;
@@ -467,6 +469,7 @@ tic4x_print_op (struct disassemble_info *info,
                 return 0;
               break;
             }
+         /* Fall through.  */
 
        case 'J': /* Indirect (short) 8--15.  */
          if (! tic4x_print_indirect (info, INDIRECT_SHORT,
@@ -638,9 +641,9 @@ tic4x_hash_opcode (tic4x_inst_t **optable,
                   const tic4x_inst_t *inst,
                   const unsigned long tic4x_oplevel)
 {
-  int j;
-  int opcode = inst->opcode >> (32 - TIC4X_HASH_SIZE);
-  int opmask = inst->opmask >> (32 - TIC4X_HASH_SIZE);
+  unsigned int j;
+  unsigned int opcode = inst->opcode >> (32 - TIC4X_HASH_SIZE);
+  unsigned int opmask = inst->opmask >> (32 - TIC4X_HASH_SIZE);
 
   /* Use a TIC4X_HASH_SIZE bit index as a hash index.  We should
      have unique entries so there's no point having a linked list
This page took 0.024369 seconds and 4 git commands to generate.