aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorJoern Rennecke <joern.rennecke@embecosm.com>2002-06-06 17:29:55 +0000
committerJoern Rennecke <joern.rennecke@embecosm.com>2002-06-06 17:29:55 +0000
commit9691d64f9a558a599867a6528db1908e4c5bc63f (patch)
tree05f06923f685d6ee92c58404c8872efc7479e00d /gas/config
parentffdefa66c490f75656e7736fae7f241a5bcc098f (diff)
downloadgdb-9691d64f9a558a599867a6528db1908e4c5bc63f.zip
gdb-9691d64f9a558a599867a6528db1908e4c5bc63f.tar.gz
gdb-9691d64f9a558a599867a6528db1908e4c5bc63f.tar.bz2
* config/tc-sh.c (parse_at): @(symbol,pc) is A_DISP_PC again,
but warn about it. * testsuite/gas/sh/pcrel.s: Also test @(symbol,pc). * testsuite/gas/sh/pcrel.d: Update. * testsuite/gas/sh/pcrel.l: New file.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-sh.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/gas/config/tc-sh.c b/gas/config/tc-sh.c
index d411379..cd6f90c 100644
--- a/gas/config/tc-sh.c
+++ b/gas/config/tc-sh.c
@@ -1383,10 +1383,18 @@ parse_at (src, op)
}
else if (mode == A_PC)
{
- 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;
+ if (op->immediate.X_op == O_symbol)
+ {
+ op->type = A_DISP_PC;
+ as_warn (_("Deprecated syntax."));
+ }
+ else
+ {
+ 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
{