* config/tc-h8300.c (check_operand): Don't print a warning
authorKazu Hirata <kazu@codesourcery.com>
Thu, 24 Jan 2002 18:22:06 +0000 (18:22 +0000)
committerKazu Hirata <kazu@codesourcery.com>
Thu, 24 Jan 2002 18:22:06 +0000 (18:22 +0000)
when a valid 24-bit address is given to a 16-bit address
operand.

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

index 3532a9b77110c9a69f4a6dd66dbe4bf679481b20..02b1040cea9568262e827d301255ba154bd39f5d 100644 (file)
@@ -1,3 +1,9 @@
+2002-01-24  Kazu Hirata  <kazu@hxi.com>
+
+       * config/tc-h8300.c (check_operand): Don't print a warning
+       when a valid 24-bit address is given to a 16-bit address
+       operand.
+
 2002-01-24  Alexandre Oliva  <aoliva@redhat.com>
 
        * config/tc-sh.c (sh_elf_suffix): Removed.
index b1f6ecbc2ce8827751b0a805341c9db46c3e3405..940e6d67f5f494aa41965b9f836c67006765166b 100644 (file)
@@ -813,6 +813,14 @@ check_operand (operand, width, string)
                 fit a 16 bit address truncated into an 8 bit address
                 of something like bset.  */
            }
+         else if (strcmp (string, "@") == 0
+                  && width == 0xffff
+                  && (operand->exp.X_add_number & 0xff8000) == 0xff8000)
+           {
+             /* Just ignore this one - which happens when trying to
+                fit a 24 bit address truncated into a 16 bit address
+                of something like mov.w.  */
+           }
          else
            {
              as_warn (_("operand %s0x%lx out of range."), string,