* Makefile.am: Update dependencies with "make dep-am".
[deliverable/binutils-gdb.git] / opcodes / z8k-dis.c
index acbe5d45200baf157b804bef5fbe552ad9b7c721..dcba775c2706e37a0add1902ab4224c8f5552326 100644 (file)
@@ -1,5 +1,5 @@
 /* Disassemble z8000 code.
-   Copyright 1992, 1993, 1998, 2000
+   Copyright 1992, 1993, 1998, 2000, 2001
    Free Software Foundation, Inc.
 
 This file is part of GNU Binutils.
@@ -50,6 +50,9 @@ typedef struct {
   unsigned long interrupts;
 } instr_data_s;
 
+static int fetch_data PARAMS ((struct disassemble_info *, int));
+
+
 /* Make sure that bytes from INFO->PRIVATE_DATA->BUFFER (inclusive)
    to ADDR (exclusive) are valid.  Returns 1 for success, longjmps
    on error.  */
@@ -134,6 +137,7 @@ static char *ctrl_names[8] = {
 };
 
 static int seg_length;
+static int print_insn_z8k PARAMS ((bfd_vma, disassemble_info *, int));
 int z8k_lookup_instr PARAMS ((unsigned char *, disassemble_info *));
 static void output_instr
   PARAMS ((instr_data_s *, unsigned long, disassemble_info *));
@@ -269,13 +273,12 @@ z8k_lookup_instr (nibbles, info)
       tabl_index++;
     }
   return -1;
-
 }
 
 static void
 output_instr (instr_data, addr, info)
      instr_data_s *instr_data;
-     unsigned long addr;
+     unsigned long addr ATTRIBUTE_UNUSED;
      disassemble_info *info;
 {
   int loop, loop_limit;
@@ -334,22 +337,22 @@ unpack_instr (instr_data, is_segmented, info)
          switch (datum_value)
            {
            case ARG_DISP16:
-              instr_data->displacement = instr_data->insn_start + 4 +
-                (signed short) (instr_word & 0xffff);
+             instr_data->displacement = instr_data->insn_start + 4
+               + (signed short) (instr_word & 0xffff);
              nibl_count += 3;
              break;
            case ARG_DISP12:
-              if (instr_word & 0x800)
+             if (instr_word & 0x800)
                {
                  /* neg. 12 bit displacement */
                  instr_data->displacement = instr_data->insn_start + 2
                    - (signed short) ((instr_word & 0xfff) | 0xf000) * 2;
                }
-              else
+             else
                {
                  instr_data->displacement = instr_data->insn_start + 2
                    - (instr_word & 0x0fff) * 2;
-              }
+               }
              nibl_count += 2;
              break;
            default:
@@ -411,15 +414,15 @@ unpack_instr (instr_data, is_segmented, info)
                  FETCH_DATA (info, nibl_count + 8);
                  instr_long = (instr_data->words[nibl_count] << 16)
                    | (instr_data->words[nibl_count + 4]);
-                 instr_data->address = ((instr_word & 0x7f00) << 8) +
-                   (instr_long & 0xffff);
+                 instr_data->address = ((instr_word & 0x7f00) << 8)
+                   (instr_long & 0xffff);
                  nibl_count += 7;
-                  seg_length = 2;
+                 seg_length = 2;
                }
              else
                {
-                 instr_data->address = ((instr_word & 0x7f00) << 8) +
-                   (instr_word & 0x00ff);
+                 instr_data->address = ((instr_word & 0x7f00) << 8)
+                   (instr_word & 0x00ff);
                  nibl_count += 3;
                }
            }
@@ -434,11 +437,13 @@ unpack_instr (instr_data, is_segmented, info)
          instr_data->ctrl_code = instr_nibl & 0x7;
          break;
        case CLASS_0DISP7:
-         instr_data->displacement = instr_data->insn_start + 2 - (instr_byte & 0x7f) * 2;
+         instr_data->displacement =
+           instr_data->insn_start + 2 - (instr_byte & 0x7f) * 2;
          nibl_count += 1;
          break;
        case CLASS_1DISP7:
-         instr_data->displacement = instr_data->insn_start + 2 - (instr_byte & 0x7f) * 2;
+         instr_data->displacement =
+           instr_data->insn_start + 2 - (instr_byte & 0x7f) * 2;
          nibl_count += 1;
          break;
        case CLASS_01II:
@@ -459,12 +464,13 @@ unpack_instr (instr_data, is_segmented, info)
        case CLASS_REGN0:
          instr_data->arg_reg[datum_value] = instr_nibl;
          break;
-        case CLASS_DISP8:
-         instr_data->displacement = instr_data->insn_start + 2  + (signed char)instr_byte * 2;
+       case CLASS_DISP8:
+         instr_data->displacement =
+           instr_data->insn_start + 2 + (signed char) instr_byte * 2;
          nibl_count += 1;
-          break;
+         break;
        default:
-          abort ();
+         abort ();
          break;
        }
 
@@ -566,14 +572,14 @@ unparse_instr (instr_data, is_segmented)
          strcat (out_str, tmp_str);
          break;
        case CLASS_PR:
-          if (is_segmented)
-            sprintf (tmp_str, "rr%ld", instr_data->arg_reg[datum_value]);
-          else
-            sprintf (tmp_str, "r%ld", instr_data->arg_reg[datum_value]);
+         if (is_segmented)
+           sprintf (tmp_str, "rr%ld", instr_data->arg_reg[datum_value]);
+         else
+           sprintf (tmp_str, "r%ld", instr_data->arg_reg[datum_value]);
          strcat (out_str, tmp_str);
          break;
        default:
-          abort ();
+         abort ();
          break;
        }
     }
This page took 0.036517 seconds and 4 git commands to generate.