Changeset 609 for branches/GNU/src/binutils/opcodes/m68k-dis.c
- Timestamp:
- Aug 16, 2003, 6:59:22 PM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GNU/src/binutils/opcodes/m68k-dis.c
-
Property cvs2svn:cvs-rev
changed from
1.1
to1.1.1.2
r608 r609 1 1 /* Print Motorola 68k instructions. 2 2 Copyright 1986, 1987, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 3 1998, 1999, 2000, 2001 3 1998, 1999, 2000, 2001, 2002 4 4 Free Software Foundation, Inc. 5 5 … … 21 21 #include "dis-asm.h" 22 22 #include "floatformat.h" 23 #include <libiberty.h>23 #include "libiberty.h" 24 24 #include "opintl.h" 25 25 … … 38 38 39 39 static void 40 print_base PARAMS ((int, bfd_vma, disassemble_info *));40 print_base PARAMS ((int, bfd_vma, disassemble_info *)); 41 41 42 42 static unsigned char * … … 47 47 bfd_vma, disassemble_info *)); 48 48 49 CONST char * CONST fpcr_names[] = 50 { 49 const char * const fpcr_names[] = { 51 50 "", "%fpiar", "%fpsr", "%fpiar/%fpsr", "%fpcr", 52 51 "%fpiar/%fpcr", "%fpsr/%fpcr", "%fpiar/%fpsr/%fpcr" 53 }; 54 55 static char *const reg_names[] = 56 { 52 }; 53 54 static char *const reg_names[] = { 57 55 "%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", 58 56 "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", 59 57 "%ps", "%pc" 60 58 }; 61 59 62 60 /* Sign-extend an (unsigned char). */ 63 61 #if __STDC__ == 1 64 #define COERCE_SIGNED_CHAR(ch) ((signed char) (ch))62 #define COERCE_SIGNED_CHAR(ch) ((signed char) (ch)) 65 63 #else 66 #define COERCE_SIGNED_CHAR(ch) ((int) (((ch) ^ 0x80) & 0xFF) - 128)64 #define COERCE_SIGNED_CHAR(ch) ((int) (((ch) ^ 0x80) & 0xFF) - 128) 67 65 #endif 68 66 … … 110 108 111 109 112 113 110 /* Maximum length of an instruction. */ 114 111 #define MAXLEN 22 … … 116 113 #include <setjmp.h> 117 114 118 struct private 119 { 115 struct private { 120 116 /* Points to first byte not fetched. */ 121 117 bfd_byte *max_fetched; … … 129 125 on error. */ 130 126 #define FETCH_DATA(info, addr) \ 131 ((addr) <= ((struct private *) (info->private_data))->max_fetched \127 ((addr) <= ((struct private *) (info->private_data))->max_fetched \ 132 128 ? 1 : fetch_data ((info), (addr))) 133 129 … … 159 155 static int 160 156 #ifdef __STDC__ 161 dummy_printer (FILE * 162 const char * 157 dummy_printer (FILE *file ATTRIBUTE_UNUSED, 158 const char *format ATTRIBUTE_UNUSED, ...) 163 159 #else 164 dummy_printer (file) FILE *file ATTRIBUTE_UNUSED; 160 dummy_printer (file) 161 FILE *file ATTRIBUTE_UNUSED; 165 162 #endif 166 { return 0; } 163 { 164 return 0; 165 } 167 166 168 167 static void … … 191 190 bfd_byte *buffer = priv.the_buffer; 192 191 fprintf_ftype save_printer = info->fprintf_func; 193 void (*save_print_address) PARAMS ((bfd_vma, struct disassemble_info*))192 void (*save_print_address) PARAMS ((bfd_vma, struct disassemble_info *)) 194 193 = info->print_address_func; 195 194 int major_opcode; … … 359 358 if (d[1] == 'l' && p - buffer < 6) 360 359 p = buffer + 6; 361 else if (p - buffer < 4 && d[1] != 'C' && d[1] != '8' 360 else if (p - buffer < 4 && d[1] != 'C' && d[1] != '8') 362 361 p = buffer + 4; 363 362 } … … 418 417 save_p = p; 419 418 info->print_address_func = dummy_print_address; 420 info->fprintf_func = (fprintf_ftype) dummy_printer;421 for ( 419 info->fprintf_func = (fprintf_ftype) dummy_printer; 420 for (; *d; d += 2) 422 421 { 423 422 int eaten = print_insn_arg (d, buffer, p, memaddr + (p - buffer), info); … … 428 427 else 429 428 { 430 (*info->fprintf_func) (info->stream,431 /* xgettext:c-format */432 _("<internal error in opcode table: %s %s>\n"),433 best->name,434 best->args);429 (*info->fprintf_func) (info->stream, 430 /* xgettext:c-format */ 431 _("<internal error in opcode table: %s %s>\n"), 432 best->name, 433 best->args); 435 434 goto invalid; 436 435 } … … 482 481 register unsigned char *p = p0; 483 482 int regno; 484 register CONSTchar *regname;483 register const char *regname; 485 484 register unsigned char *p1; 486 485 double flval; … … 504 503 (info->stream, 505 504 "%s@", 506 reg_names 505 reg_names[fetch_arg (buffer, place, 3, info) + 8]); 507 506 break; 508 507 } … … 628 627 val = fetch_arg (buffer, place, 6, info); 629 628 if (val & 0x20) 630 (*info->fprintf_func) (info->stream, "%s", reg_names 629 (*info->fprintf_func) (info->stream, "%s", reg_names[val & 7]); 631 630 else 632 631 (*info->fprintf_func) (info->stream, "%d", val); … … 653 652 { 654 653 val = fetch_arg (buffer, place, 7, info); 655 if ( val > 63) /* This is a signed constant. */654 if (val > 63) /* This is a signed constant. */ 656 655 val -= 128; 657 656 (*info->fprintf_func) (info->stream, "{#%d}", val); … … 687 686 disp = NEXTBYTE (p); 688 687 else if (place == 'B') 689 disp = COERCE_SIGNED_CHAR (buffer[1]);688 disp = COERCE_SIGNED_CHAR (buffer[1]); 690 689 else if (place == 'w' || place == 'W') 691 690 disp = NEXTWORD (p); … … 821 820 case 4: 822 821 flt_p = 1; /* Assume it's a float... */ 823 switch ( place)822 switch (place) 824 823 { 825 824 case 'b': … … 839 838 840 839 case 'f': 841 NEXTSINGLE (flval, p);840 NEXTSINGLE (flval, p); 842 841 break; 843 842 844 843 case 'F': 845 NEXTDOUBLE (flval, p);844 NEXTDOUBLE (flval, p); 846 845 break; 847 846 848 847 case 'x': 849 NEXTEXTEND (flval, p);848 NEXTEXTEND (flval, p); 850 849 break; 851 850 852 851 case 'p': 853 flval = NEXTPACKED (p);852 flval = NEXTPACKED (p); 854 853 break; 855 854 … … 857 856 return -1; 858 857 } 859 if ( flt_p) /* Print a float? */858 if (flt_p) /* Print a float? */ 860 859 (*info->fprintf_func) (info->stream, "#%g", flval); 861 860 else … … 1209 1208 { 1210 1209 register int word; 1211 static char *const scales[] = { "", ":2", ":4", ":8"};1210 static char *const scales[] = { "", ":2", ":4", ":8" }; 1212 1211 bfd_vma base_disp; 1213 1212 bfd_vma outer_disp; -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.