* mips-tdep.c (mips32_next_pc): Fix floating point condition
authorMaciej W. Rozycki <macro@linux-mips.org>
Tue, 6 Dec 2011 23:49:56 +0000 (23:49 +0000)
committerMaciej W. Rozycki <macro@linux-mips.org>
Tue, 6 Dec 2011 23:49:56 +0000 (23:49 +0000)
code mask.

gdb/ChangeLog
gdb/mips-tdep.c

index 39f8ca0d6e94d19e6f6ef3e9a058caa07a88c78e..8c670869cf318af7928afbba22bf9ef4cbe1c2a6 100644 (file)
@@ -1,3 +1,8 @@
+2011-12-06  Maciej W. Rozycki  <macro@codesourcery.com>
+
+       * mips-tdep.c (mips32_next_pc): Fix floating point condition
+       code mask.
+
 2011-12-06  Maciej W. Rozycki  <macro@codesourcery.com>
 
        * mips-tdep.c (deal_with_atomic_sequence): Fix the handling
index 4f1c940d9f4d1aa3a3442f53f2f7e55a8c5b3b90..bbfd7e9e607aa6914aefda04db8dde29f903147a 100644 (file)
@@ -1144,7 +1144,7 @@ mips32_next_pc (struct frame_info *frame, CORE_ADDR pc)
            get_frame_register_signed (frame,
                                       mips_regnum (get_frame_arch (frame))->
                                                fp_control_status);
-         int cond = ((fcrcs >> 24) & 0x0e) | ((fcrcs >> 23) & 0x01);
+         int cond = ((fcrcs >> 24) & 0xfe) | ((fcrcs >> 23) & 0x01);
 
          if (((cond >> cnum) & 0x01) == tf)
            pc += mips32_relative_offset (inst) + 4;