Don't mask top 32 bits of 64-bit address.
authorAlan Modra <amodra@gmail.com>
Thu, 11 May 2000 07:10:19 +0000 (07:10 +0000)
committerAlan Modra <amodra@gmail.com>
Thu, 11 May 2000 07:10:19 +0000 (07:10 +0000)
opcodes/ChangeLog
opcodes/mips-dis.c

index 6f7043fb3868e0d4494b8201b3f25401a9afd82a..6bacde53ec4600d8f1da40df76b9409023f4f954 100644 (file)
@@ -1,3 +1,8 @@
+2000-05-11  Ulf Carlsson  <ulfc@engr.sgi.com>
+
+       * mips-dis.c (print_insn_arg): Don't mask top 32 bits of 64-bit
+       target addresses for 'jal' and 'j'.
+
 2000-05-10  Geoff Keating  <geoffk@cygnus.com>
 
        * ppc-opc.c (powerpc_opcodes): Make the predicted-branch opcodes
index 9ab9f98690c54b158a3ece2adf5b393a3be2645d..11e322c2bba4fbaa8be1785a4f5c48b73d6ced20 100644 (file)
@@ -1,5 +1,6 @@
 /* Print mips instructions for GDB, the GNU debugger, or for objdump.
-   Copyright (c) 1989, 91-97, 1998 Free Software Foundation, Inc.
+   Copyright (c) 1989, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000
+   Free Software Foundation, Inc.
    Contributed by Nobuyuki Hikichi(hikichi@sra.co.jp).
 
 This file is part of GDB, GAS, and the GNU binutils.
@@ -132,7 +133,8 @@ print_insn_arg (d, l, pc, info)
 
     case 'a':
       (*info->print_address_func)
-       (((pc & 0xF0000000) | (((l >> OP_SH_TARGET) & OP_MASK_TARGET) << 2)),
+       (((pc & ~ (bfd_vma) 0x0fffffff)
+         | (((l >> OP_SH_TARGET) & OP_MASK_TARGET) << 2)),
         info);
       break;