OSDN Git Service

* cr16-dis.c (build_mask): Adjust the mask for 32-bit bcond.
authorNick Clifton <nickc@redhat.com>
Wed, 21 May 2008 07:50:55 +0000 (07:50 +0000)
committerNick Clifton <nickc@redhat.com>
Wed, 21 May 2008 07:50:55 +0000 (07:50 +0000)
opcodes/ChangeLog
opcodes/cr16-dis.c

index a20e120..6720456 100644 (file)
@@ -1,3 +1,7 @@
+2008-05-21  M R Swami Reddy <MR.Swami.Reddy@nsc.com>
+
+       * cr16-dis.c (build_mask): Adjust the mask for 32-bit bcond.
+
 2008-05-14  Alan Modra  <amodra@bigpond.net.au>
 
        * Makefile.am: Run "make dep-am".
index ad0c586..de3eb75 100644 (file)
@@ -1,5 +1,5 @@
 /* Disassembler code for CR16.
-   Copyright 2007 Free Software Foundation, Inc.
+   Copyright 2007, 2008 Free Software Foundation, Inc.
    Contributed by M R Swami Reddy (MR.Swami.Reddy@nsc.com).
 
    This file is part of GAS, GDB and the GNU binutils.
@@ -307,6 +307,11 @@ static unsigned long
 build_mask (void)
 {
   unsigned long mask = SBM (instruction->match_bits);
+
+  /* Adjust mask for bcond with 32-bit size instruction.  */
+  if ((IS_INSN_MNEMONIC("b") && instruction->size == 2))
+    mask = 0xff0f0000;
+
   return mask;
 }