aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJie Zhang <jie.zhang@analog.com>2008-07-24 07:25:13 +0000
committerJie Zhang <jie.zhang@analog.com>2008-07-24 07:25:13 +0000
commit81fd73edd15ab295e7340aae0c58ace517159d35 (patch)
tree436fb0a2c5372351c2e725be23f416f0e7067abd /gas
parent5778530ea76fb119f3a77b0c699aa938369bc063 (diff)
downloadfsf-binutils-gdb-81fd73edd15ab295e7340aae0c58ace517159d35.zip
fsf-binutils-gdb-81fd73edd15ab295e7340aae0c58ace517159d35.tar.gz
fsf-binutils-gdb-81fd73edd15ab295e7340aae0c58ace517159d35.tar.bz2
* config/bfin-parse.y (asm_1): Error if plain symbol is used
as load/store offset.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/bfin-parse.y5
2 files changed, 10 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index a486228..b8016c6 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2008-07-24 Jie Zhang <jie.zhang@analog.com>
+
+ * config/bfin-parse.y (asm_1): Error if plain symbol is used
+ as load/store offset.
+
2008-07-22 Chao-ying Fu <fu@mips.com>
* config/tc-mips.c (mips_ip): Reset s to argsStart.
diff --git a/gas/config/bfin-parse.y b/gas/config/bfin-parse.y
index 4a212ac..0110482 100644
--- a/gas/config/bfin-parse.y
+++ b/gas/config/bfin-parse.y
@@ -3202,6 +3202,11 @@ asm_1:
if (!IS_DREG ($1) && !ispreg)
return yyerror ("Bad destination register for LOAD");
+ if (tmp->type == Expr_Node_Reloc
+ && strcmp (tmp->value.s_value,
+ "_current_shared_library_p5_offset_") != 0)
+ return yyerror ("Plain symbol used as offset");
+
if ($5.r0)
tmp = unary (Expr_Op_Type_NEG, tmp);