* config/bfin-parse.y (asm_1): Error if plain symbol is used
authorJie Zhang <jie.zhang@analog.com>
Thu, 24 Jul 2008 07:25:13 +0000 (07:25 +0000)
committerJie Zhang <jie.zhang@analog.com>
Thu, 24 Jul 2008 07:25:13 +0000 (07:25 +0000)
as load/store offset.

gas/ChangeLog
gas/config/bfin-parse.y

index a4862286bbff256d25039cf0e6c04a959e5ecf2a..b8016c6c430e7ece7c681b15eda5817b283698ac 100644 (file)
@@ -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.
index 4a212ac5b5ad72e810960a0c4f100ff3c076930c..0110482705f9c3ddc443695300d6cec6df706e59 100644 (file)
@@ -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);