2003-08-24 Jason Eckhardt <jle@rice.edu>
authorJason Eckhardt <jle@rice.edu>
Mon, 25 Aug 2003 02:48:14 +0000 (02:48 +0000)
committerJason Eckhardt <jle@rice.edu>
Mon, 25 Aug 2003 02:48:14 +0000 (02:48 +0000)
        * config/tc-i860.c (md_assemble): Use isrc2 from the original
        instruction when expanding E_ADDR.

gas/ChangeLog
gas/config/tc-i860.c

index 9f3f0f3..3c77b8d 100644 (file)
@@ -1,3 +1,8 @@
+2003-08-24  Jason Eckhardt  <jle@rice.edu>
+
+       * config/tc-i860.c (md_assemble): Use isrc2 from the original
+       instruction when expanding E_ADDR.
+
 2003-08-21  Nick Clifton  <nickc@redhat.com>
 
        * po/tr.po: Updated Turkish translation.
index 8ee4c07..6362c16 100644 (file)
@@ -312,8 +312,9 @@ md_assemble (char *str)
                  && the_insn.fi[0].exp.X_add_number >= -(1 << 15)))
            break;
 
-         /* Emit "orh ha%addr_expr,r0,r31".  */
-         pseudo[0].opcode = 0xec000000 | (atmp << 16);
+         /* Emit "orh ha%addr_expr,ireg_src2,r31".  */
+         pseudo[0].opcode = 0xec000000 | (the_insn.opcode & 0x03e00000)
+                            | (atmp << 16);
          pseudo[0].fi[0].fup = (OP_IMM_S16 | OP_SEL_HA);
 
          /* Emit "l%addr_expr(r31),ireg_dest".  We pick up the fixup