From e0e3ecca5c85732382b3d47efc14bfb26ca31bb2 Mon Sep 17 00:00:00 2001 From: Phil Blundell Date: Fri, 8 Sep 2000 21:05:33 +0000 Subject: [PATCH] 2000-09-08 Philip Blundell * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when offset is negative. --- gas/ChangeLog | 5 +++++ gas/config/tc-arm.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index f906e7dd1d..ca278e6f2b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2000-09-08 Philip Blundell + + * config/tc-arm.c (md_apply_fix3): Correct handling of ADRL when + offset is negative. + 2000-09-07 H.J. Lu * configure.in (AC_ISC_POSIX): Put after AC_CANONICAL_SYSTEM. diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index faded9626b..0cc8cab6e7 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -5676,7 +5676,7 @@ md_apply_fix3 (fixP, val, seg) if (newimm != (unsigned int) FAIL) newinsn = temp; /* Still No ? Try using a negated value. */ - else if (validate_immediate_twopart (- value, & highpart) != (unsigned int) FAIL) + else if ((newimm = validate_immediate_twopart (- value, & highpart)) != (unsigned int) FAIL) temp = newinsn = (temp & OPCODE_MASK) | OPCODE_SUB << DATA_OP_SHIFT; /* Otherwise - give up. */ else -- 2.34.1