* config/tc-xtensa.c (xg_add_opcode_fix): Number operands starting
authorBob Wilson <bob.wilson@acm.org>
Tue, 14 Feb 2006 00:58:05 +0000 (00:58 +0000)
committerBob Wilson <bob.wilson@acm.org>
Tue, 14 Feb 2006 00:58:05 +0000 (00:58 +0000)
from 1, not 0, in error messages.
(md_assemble): Simplify special-case check for ENTRY instructions.
(tinsn_has_invalid_symbolic_operands): Do not include opcode and
operand in error message.

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

index a6ca03cd0a7985a1c1dacb6f90b9b953a57f0052..7d12994c1542072f1965b238a68b8d66e5e51b03 100644 (file)
@@ -1,3 +1,11 @@
+2006-02-13  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/tc-xtensa.c (xg_add_opcode_fix): Number operands starting
+       from 1, not 0, in error messages.
+       (md_assemble): Simplify special-case check for ENTRY instructions.
+       (tinsn_has_invalid_symbolic_operands): Do not include opcode and
+       operand in error message.
+
 2006-02-13  Joseph S. Myers  <joseph@codesourcery.com>
 
        * configure.tgt (arm-*-linux-gnueabi*): Change to
index ac9274b49e87791f02d1bb9f774f7d76acb9ab95..a44c28093efaedfe64d089c984d397cde0cfa77b 100644 (file)
@@ -4131,7 +4131,7 @@ xg_add_opcode_fix (TInsn *tinsn,
   if (opnum != get_relaxable_immed (opcode))
     {
       as_bad (_("invalid relocation for operand %i of '%s'"),
-             opnum, xtensa_opcode_name (xtensa_default_isa, opcode));
+             opnum + 1, xtensa_opcode_name (xtensa_default_isa, opcode));
       return FALSE;
     }
 
@@ -4141,7 +4141,7 @@ xg_add_opcode_fix (TInsn *tinsn,
   if (expr->X_op == O_lo16 || expr->X_op == O_hi16)
     {
       as_bad (_("invalid expression for operand %i of '%s'"),
-             opnum, xtensa_opcode_name (xtensa_default_isa, opcode));
+             opnum + 1, xtensa_opcode_name (xtensa_default_isa, opcode));
       return FALSE;
     }
 
@@ -5252,24 +5252,12 @@ md_assemble (char *str)
 
   xg_add_branch_and_loop_targets (&orig_insn);
 
-  /* Special-case for "entry" instruction.  */
-  if (orig_insn.opcode == xtensa_entry_opcode)
+  /* Check that immediate value for ENTRY is >= 16.  */
+  if (orig_insn.opcode == xtensa_entry_opcode && orig_insn.ntok >= 3)
     {
-      /* Check that the third opcode (#2) is >= 16.  */
-      if (orig_insn.ntok >= 3)
-       {
-         expressionS *exp = &orig_insn.tok[2];
-         switch (exp->X_op)
-           {
-           case O_constant:
-             if (exp->X_add_number < 16)
-               as_warn (_("entry instruction with stack decrement < 16"));
-             break;
-
-           default:
-             as_warn (_("entry instruction with non-constant decrement"));
-           }
-       }
+      expressionS *exp = &orig_insn.tok[2];
+      if (exp->X_op == O_constant && exp->X_add_number < 16)
+       as_warn (_("entry instruction with stack decrement < 16"));
     }
 
   /* Finish it off:
@@ -11045,8 +11033,7 @@ tinsn_has_invalid_symbolic_operands (const TInsn *insn)
              || (xtensa_operand_is_PCrelative (isa, insn->opcode, i) != 1
                  && insn->opcode != xtensa_const16_opcode))
            {
-             as_bad (_("invalid symbolic operand %d on '%s'"),
-                     i, xtensa_opcode_name (isa, insn->opcode));
+             as_bad (_("invalid symbolic operand"));
              return TRUE;
            }
        }
This page took 0.032532 seconds and 4 git commands to generate.