* messages.c (as_internal_value_out_of_range): Fix typo in
authorAlan Modra <amodra@gmail.com>
Fri, 20 Apr 2007 13:42:03 +0000 (13:42 +0000)
committerAlan Modra <amodra@gmail.com>
Fri, 20 Apr 2007 13:42:03 +0000 (13:42 +0000)
error message.  Return after printing domain error.
* config/tc-ppc.c (ppc_insert_operand): Preserve low zero bits
in max when shifting right.

gas/ChangeLog
gas/config/tc-ppc.c
gas/messages.c

index 3bcaf48e28f42a0d8923fc3088c82250fdac7bed..33f9bf64cf9569ed2c15f5c6eaa9235052f07a1a 100644 (file)
@@ -1,3 +1,10 @@
+2007-04-20  Alan Modra  <amodra@bigpond.net.au>
+
+       * messages.c (as_internal_value_out_of_range): Fix typo in
+       error message.  Return after printing domain error.
+       * config/tc-ppc.c (ppc_insert_operand): Preserve low zero bits
+       in max when shifting right.
+
 2007-04-20  Alan Modra  <amodra@bigpond.net.au>
 
        * messages.c (as_internal_value_out_of_range): Extend to report
index be745abbf65aa56b2e9fecbd6a7bc0ffe4993fb9..5a5cb3892650657536331cc540d0a0ac5057e94c 100644 (file)
@@ -1508,8 +1508,8 @@ ppc_insert_operand (insn, operand, val, file, line)
   if ((operand->flags & PPC_OPERAND_SIGNED) != 0)
     {
       if ((operand->flags & PPC_OPERAND_SIGNOPT) == 0)
-       max >>= 1;
-      min = ~(max | ((max & -max) - 1)) ;
+       max = (max >> 1) & -right;
+      min = ~max & -right;
 
       if (!ppc_obj64)
        {
index 5736bac7164cb402908be25a7efee69b329fae53..c8788dcc32d5eb5ff517fef201cb1a41f04811b1 100644 (file)
@@ -464,13 +464,14 @@ as_internal_value_out_of_range (char *    prefix,
        abort ();
 
       /* xgettext:c-format  */
-      err = _("%s out of domain (%d is not a multiple of %d");
+      err = _("%s out of domain (%d is not a multiple of %d)");
       if (bad)
        as_bad_where (file, line, err,
                      prefix, (int) val, (int) right);
       else
        as_warn_where (file, line, err,
                       prefix, (int) val, (int) right);
+      return;
     }
 
   if (   val < HEX_MAX_THRESHOLD