2005-05-07 H.J. Lu <hongjiu.lu@intel.com>
[external/binutils.git] / opcodes / msp430-dis.c
index 767ffa4..3563cac 100644 (file)
@@ -1,5 +1,5 @@
 /* Disassemble MSP430 instructions.
-   Copyright (C) 2002 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
    
    Contributed by Dmitry Diky <diwil@mail.ru>
         
@@ -15,7 +15,7 @@
    
    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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+   Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.  */
 
 #include <stdio.h>
 #include <ctype.h>
@@ -491,6 +491,10 @@ msp430_doubleoperand (info, opcode, addr, insn, op1, op2, comm1, comm2, cycles)
            {
              /* Absolute.  */
              dst = msp430dis_opcode (addr + 2, info);
+             /* If the 'src' field is not the same as the dst
+                then this is not an rla instruction.  */
+             if (dst != msp430dis_opcode (addr + 4, info))
+               return 0;
              cmd_len += 4;
              *cycles = 6;
              sprintf (op1, "&0x%04x", PS (dst));