From 6b32719e57e725200d1194e92ca43b239e9e01da Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Wed, 6 Feb 2002 06:26:14 +0000 Subject: [PATCH] * config/tc-sh.c (parse_at): Install the correct version of 2002-02-04's patch. --- gas/ChangeLog | 3 +++ gas/config/tc-sh.c | 13 ++++--------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 76413b68d5d..944108b8b05 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,8 @@ 2002-02-06 Alexandre Oliva + * config/tc-sh.c (parse_at): Install the correct version of + 2002-02-04's patch. + * config/tc-sh.c (md_apply_fix3) : Don't assume fixP->fx_subsy is non-NULL. diff --git a/gas/config/tc-sh.c b/gas/config/tc-sh.c index b266b805d4b..80ff037a69d 100644 --- a/gas/config/tc-sh.c +++ b/gas/config/tc-sh.c @@ -981,15 +981,10 @@ parse_at (src, op) } else if (mode == A_PC) { - /* Turn a plain @(4,pc) into @(.+4,pc). */ - if (op->immediate.X_op == O_constant) - { - op->immediate.X_add_symbol = dot (); - op->immediate.X_op = O_symbol; - op->type = A_DISP_PC; - } - else - op->type = A_DISP_PC_ABS; + op->type = A_DISP_PC_ABS; + /* Such operands don't get corrected for PC==.+4, so + make the correction here. */ + op->immediate.X_add_number -= 4; } else { -- 2.30.2