* Rename remote-es1800.c to remote-es.c
[deliverable/binutils-gdb.git] / gdb / hppa-pinsn.c
index 87d5e7a6fe124a82c1d109653f4a914745a1c089..a22b3d67e1434da7692f0fb1ed4c349ffc0f90f3 100644 (file)
@@ -22,6 +22,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #include "defs.h"
 #include "symtab.h"
+#define OLD_TABLE
 #include "opcode/hppa.h"
 
 static char *control_reg[] =
@@ -101,7 +102,7 @@ print_insn (memaddr, stream)
          
          fputs_filtered (opcode->name, stream);
        
-         if (!index ("cCY<?!@-+&U>~nZFM", opcode->args[0]))
+         if (!index ("cCY<?!@-+&U>~nZFIM", opcode->args[0]))
            fputs_filtered (" ", stream);
          for (s = opcode->args; *s != '\0'; ++s)
            {
@@ -215,6 +216,12 @@ print_insn (memaddr, stream)
                case 'V':
                  fput_const (extract_5_store (insn), stream);
                  break;
+               case 'r':
+                 fput_const (extract_5r_store (insn), stream);
+                 break;
+               case 'R':
+                 fput_const (extract_5R_store (insn), stream);
+                 break;
                case 'i':
                  fput_const (extract_11 (insn), stream);
                  break;
@@ -322,6 +329,29 @@ print_insn (memaddr, stream)
                    fputs_filtered (float_format_names[GET_FIELD 
                                                       (insn, 26, 26)], stream);
                  break;
+               case 'I':
+                 /* if no destination completer, need a space here */
+                 if (GET_FIELD (insn, 21, 22) == 1)
+                   fputs_filtered (float_format_names[GET_FIELD (insn, 20, 20)],
+                                   stream);
+                 else
+                   fprintf_filtered (stream, "%s ",
+                                     float_format_names[GET_FIELD
+                                                        (insn, 20, 20)]);
+                 break;
+               case 'J':
+                  if (GET_FIELD (insn, 24, 24))
+                     fput_reg_r (GET_FIELD (insn, 6, 10), stream);
+                 else
+                     fput_reg (GET_FIELD (insn, 6, 10), stream);
+                     
+                 break;
+               case 'K':
+                  if (GET_FIELD (insn, 19, 19))
+                     fput_reg_r (GET_FIELD (insn, 11, 15), stream);
+                 else
+                     fput_reg (GET_FIELD (insn, 11, 15), stream);
+                 break;
                case 'M':
                  fputs_filtered (float_comp_names[GET_FIELD (insn, 27, 31)],
                                  stream);
This page took 0.024165 seconds and 4 git commands to generate.