From af858dae9da8d13e2a1c84b53f074a041d96b375 Mon Sep 17 00:00:00 2001 From: Jason Eckhardt Date: Mon, 25 Aug 2003 02:48:14 +0000 Subject: [PATCH] 2003-08-24 Jason Eckhardt * config/tc-i860.c (md_assemble): Use isrc2 from the original instruction when expanding E_ADDR. --- gas/ChangeLog | 5 +++++ gas/config/tc-i860.c | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 9f3f0f37f6..3c77b8d870 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2003-08-24 Jason Eckhardt + + * config/tc-i860.c (md_assemble): Use isrc2 from the original + instruction when expanding E_ADDR. + 2003-08-21 Nick Clifton * po/tr.po: Updated Turkish translation. diff --git a/gas/config/tc-i860.c b/gas/config/tc-i860.c index 8ee4c074df..6362c16934 100644 --- a/gas/config/tc-i860.c +++ b/gas/config/tc-i860.c @@ -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