OSDN Git Service

2009-04-01 Matt Thomas <matt@netbsd.org>
authormatt <matt>
Thu, 2 Apr 2009 00:10:45 +0000 (00:10 +0000)
committermatt <matt>
Thu, 2 Apr 2009 00:10:45 +0000 (00:10 +0000)
* config/tc-vax.c (synthetic_votstrs): add "jbbcci" and "jbbssi"
(md_assemble): emit symbol name when used as immediate in PIC mode.
(md_assemble): fix LP64 bug (use sizeof (valueT) instead 4).

gas/ChangeLog
gas/config/tc-vax.c

index 2b7615d..fc14173 100644 (file)
@@ -1,3 +1,9 @@
+2009-04-01  Matt Thomas        <matt@netbsd.org>
+
+       * config/tc-vax.c (synthetic_votstrs): add "jbbcci" and "jbbssi"
+       (md_assemble): emit symbol name when used as immediate in PIC mode.
+       (md_assemble): fix LP64 bug (use sizeof (valueT) instead 4).
+
 2009-04-01  Sterling Augustine  <sterling@jaw.hq.tensilica.com>
 
        * config/tc-xtensa.c (parse_arguments): call demand_empty_rest_of_line
index b8cdec9..db2055e 100644 (file)
@@ -852,6 +852,8 @@ static const struct vot
   {"jbcs",     {"rlvbb?", 0x800000e3}},
   {"jbsc",     {"rlvbb?", 0x800000e4}},
   {"jbcc",     {"rlvbb?", 0x800000e5}},
+  {"jbssi",    {"rlvbb?", 0x800000e6}},
+  {"jbcci",    {"rlvbb?", 0x800000e7}},
   {"jlbs",     {"rlb?", 0x800000e8}},
   {"jlbc",     {"rlb?", 0x800000e9}},
 
@@ -3152,7 +3154,8 @@ md_assemble (char *instruction_string)
                          if (flag_want_pic && operandP->vop_mode == 8
                                && this_add_symbol != NULL)
                            {
-                             as_warn (_("Symbol used as immediate operand in PIC mode."));
+                             as_warn (_("Symbol %s used as immediate operand in PIC mode."),
+                                      S_GET_NAME (this_add_symbol));
                            }
 #endif
                          p[0] = (operandP->vop_mode << 4) | 0xF;
@@ -3168,7 +3171,8 @@ md_assemble (char *instruction_string)
                                                  min (sizeof (valueT),
                                                       (size_t) nbytes));
                              if ((size_t) nbytes > sizeof (valueT))
-                               memset (p + 5, '\0', nbytes - sizeof (valueT));
+                               memset (p + 1 + sizeof (valueT),
+                                       '\0', nbytes - sizeof (valueT));
                            }
                          else
                            {