The following changes were made by
authorDavid Taylor <taylor@redhat.com>
Tue, 8 Dec 1998 15:54:10 +0000 (15:54 +0000)
committerDavid Taylor <taylor@redhat.com>
Tue, 8 Dec 1998 15:54:10 +0000 (15:54 +0000)
Elena Zannoni <ezannoni@kwikemart.cygnus.com>,
David Taylor <taylor@texas.cygnus.com>, and
Edith Epstein <eepstein@sophia.cygnus.com> as part of a project to
merge in changes by HP; HP did not create ChangeLog entries.

* dis-buf.c (generic_strcat_address): new function.

* hppa-dis.c: Changes to improve hppa disassembly.
  Changed formatting in : reg_names, fp_reg_names,control_reg,
  New variables : sign_extension_names, deposit_names, conversion_names
    float_test_names, compare_cond_names_double, add_cond_names_double,
    logical_cond_names_double, unit_cond_names_double,
    branch_push_pop_names, saturation_names, shift_names, mix_names,
  New Macros :   GET_COMPL_O, GET_PUSH_POP,MERGED_REG
  Move some definitions to libhppa.h: GET_FIELD, GET_BIT
  (fput_const): renamed as fput_hex_const
  (print_insn_hppa):
   - use the macros fputs_filtered and
     fput_decimal_const whenever possible; calls to sign_extend require
     2 params -- add a missing second param of 0.
   - Some new code ifdefed for LOCAL_ONLY, all related to figuring out
     architecture version number of current machine. HP folks are
     trying to handle situation where the target program was compiled
     for PA 1.x (32-bit), but is running on a PA 2.0 machine and
     visa versa.
   - added new cases : 'g', 'B', 'm'
   - added cases specifically for PA 2.0
   - changed the following cases : '"', 'n', 'N', 'p', 'Z',
   - calls to fput_const become calls to fput_hex_const

opcodes/ChangeLog
opcodes/dis-buf.c

index 77f0ab2..a24520a 100644 (file)
@@ -1,3 +1,36 @@
+Tue Dec  8 10:50:46 1998  David Taylor  <taylor@texas.cygnus.com>
+
+       The following changes were made by
+       Elena Zannoni <ezannoni@kwikemart.cygnus.com>,
+       David Taylor <taylor@texas.cygnus.com>, and
+       Edith Epstein <eepstein@sophia.cygnus.com> as part of a project to
+       merge in changes by HP; HP did not create ChangeLog entries.
+
+       * dis-buf.c (generic_strcat_address): new function.
+
+       * hppa-dis.c: Changes to improve hppa disassembly.
+         Changed formatting in : reg_names, fp_reg_names,control_reg, 
+         New variables : sign_extension_names, deposit_names, conversion_names
+           float_test_names, compare_cond_names_double, add_cond_names_double,
+           logical_cond_names_double, unit_cond_names_double, 
+           branch_push_pop_names, saturation_names, shift_names, mix_names,
+         New Macros :   GET_COMPL_O, GET_PUSH_POP,MERGED_REG 
+         Move some definitions to libhppa.h: GET_FIELD, GET_BIT
+         (fput_const): renamed as fput_hex_const
+         (print_insn_hppa):
+          - use the macros fputs_filtered and
+            fput_decimal_const whenever possible; calls to sign_extend require
+            2 params -- add a missing second param of 0.
+          - Some new code ifdefed for LOCAL_ONLY, all related to figuring out
+            architecture version number of current machine. HP folks are
+            trying to handle situation where the target program was compiled
+            for PA 1.x (32-bit), but is running on a PA 2.0 machine and 
+            visa versa.
+          - added new cases : 'g', 'B', 'm'
+          - added cases specifically for PA 2.0
+          - changed the following cases : '"', 'n', 'N', 'p', 'Z', 
+          - calls to fput_const become calls to fput_hex_const
+
 1998-12-07  James E Wilson  <wilson@wilson-pc.cygnus.com>
 
        * Makefile.am (CFILES): Add i960c-asm, i960c-dis.c, i960c-opc.c.
index c46dad3..3438434 100644 (file)
@@ -1,5 +1,5 @@
 /* Disassemble from a buffer, for GNU.
-   Copyright (C) 1993, 1994 Free Software Foundation, Inc.
+   Copyright (C) 1993, 1994, 1998 Free Software Foundation, Inc.
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
@@ -13,11 +13,12 @@ GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
+#include "sysdep.h"
 #include "dis-asm.h"
-#include <string.h>
 #include <errno.h>
+#include "opintl.h"
 
 /* Get LENGTH bytes from info's buffer, at target address memaddr.
    Transfer them to myaddr.  */
@@ -46,12 +47,12 @@ perror_memory (status, memaddr, info)
 {
   if (status != EIO)
     /* Can't happen.  */
-    (*info->fprintf_func) (info->stream, "Unknown error %d\n", status);
+    info->fprintf_func (info->stream, _("Unknown error %d\n"), status);
   else
     /* Actually, address between memaddr and memaddr + len was
        out of bounds.  */
-    (*info->fprintf_func) (info->stream,
-                          "Address 0x%x is out of bounds.\n", memaddr);
+    info->fprintf_func (info->stream,
+                       _("Address 0x%x is out of bounds.\n"), memaddr);
 }
 
 /* This could be in a separate file, to save miniscule amounts of space
@@ -68,3 +69,36 @@ generic_print_address (addr, info)
 {
   (*info->fprintf_func) (info->stream, "0x%x", addr);
 }
+
+/* Just concatenate the address as hex.  This is included for
+   completeness even though both GDB and objdump provide their own (to
+   print symbolic addresses).  */
+
+void
+generic_strcat_address (addr, buf, len)
+     bfd_vma addr;
+     char *buf;
+     int len;
+{
+  if (buf != (char *)NULL && len > 0)
+  {
+    char tmpBuf[30];
+
+    sprintf(tmpBuf, "0x%x", addr);
+    if ((strlen(buf) + strlen(tmpBuf)) <= len)
+      strcat(buf, tmpBuf);
+    else
+      strncat(buf, tmpBuf, (len - strlen(buf)));
+  }
+  return;
+}
+
+/* Just return the given address.  */
+
+int
+generic_symbol_at_address (addr, info)
+     bfd_vma addr;
+     struct disassemble_info * info;
+{
+  return 1;
+}