]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
s390: Provide operand number in assembler warning and error messages
authorJens Remus <jremus@linux.ibm.com>
Fri, 1 Mar 2024 11:45:14 +0000 (12:45 +0100)
committerJens Remus <jremus@linux.ibm.com>
Fri, 1 Mar 2024 11:45:14 +0000 (12:45 +0100)
Prepend the operand number "operand %d:" to the s390-specific assembler
operand parsing warning and error messages.

While at it reword the custom operand out of range error message text to
be closer to the one used by as_bad_value_out_of_range(). Additionally
reword the invalid FPR pair warning message to make it nicer.

gas/
* config/tc-s390.c: Print operand number in error messages.
* testsuite/gas/s390/zarch-base-index-0-err.l: Update test case
verification patterns to accept syntax error messages now
containing the operand number.
* testsuite/gas/s390/zarch-omitted-base-index-err.l: Likewise.
* testsuite/gas/s390/zarch-warn-areg-zero.l: Likewise.
* testsuite/gas/s390/zarch-z9-109-err.l: Likewise.
* testsuite/gas/s390/zarch-z900-err.l: Likewise.

Reviewed-by: Andreas Krebbel <krebbel@linux.ibm.com>
Signed-off-by: Jens Remus <jremus@linux.ibm.com>
gas/config/tc-s390.c
gas/testsuite/gas/s390/zarch-base-index-0-err.l
gas/testsuite/gas/s390/zarch-omitted-base-index-err.l
gas/testsuite/gas/s390/zarch-warn-areg-zero.l
gas/testsuite/gas/s390/zarch-z9-109-err.l
gas/testsuite/gas/s390/zarch-z900-err.l

index edf88833bd6c201bc95140e7b16c9623dc9947e0..a2f499bd5baa47d29f5f8b776c6301732ee2efe0 100644 (file)
@@ -663,6 +663,41 @@ s390_md_finish (void)
     bfd_set_arch_mach (stdoutput, bfd_arch_s390, bfd_mach_s390_31);
 }
 
+static void
+s390_bad_operand_out_of_range (int operand_number,
+                              offsetT value,
+                              offsetT min,
+                              offsetT max,
+                              const char *file,
+                              unsigned line)
+{
+  const char * err;
+
+  if (operand_number > 0)
+    {
+      /* xgettext:c-format.  */
+      err =_("operand %d: operand out of range (%" PRId64
+            " is not between %" PRId64 " and %" PRId64 ")");
+      if (file)
+       as_bad_where (file, line, err, operand_number,
+                     (int64_t) value, (int64_t) min, (int64_t) max);
+      else
+       as_bad (err, operand_number,
+               (int64_t) value, (int64_t) min, (int64_t) max);
+    }
+  else
+    {
+      /* xgettext:c-format.  */
+      err = _("operand out of range (%" PRId64
+             " is not between %" PRId64 " and %" PRId64 ")");
+      if (file)
+       as_bad_where (file, line, err,
+                     (int64_t) value, (int64_t) min, (int64_t) max);
+      else
+       as_bad (err, (int64_t) value, (int64_t) min, (int64_t) max);
+    }
+}
+
 /* Insert an operand value into an instruction.  */
 
 static void
@@ -670,7 +705,8 @@ s390_insert_operand (unsigned char *insn,
                     const struct s390_operand *operand,
                     offsetT val,
                     const char *file,
-                    unsigned int line)
+                    unsigned int line,
+                    int operand_number)
 {
   addressT uval;
   int offset;
@@ -687,21 +723,16 @@ s390_insert_operand (unsigned char *insn,
       /* Check for underflow / overflow.  */
       if (val < min || val > max)
        {
-         const char *err =
-           _("operand out of range (%" PRId64 " not between %" PRId64
-             " and %" PRId64 ")");
-
          if (operand->flags & S390_OPERAND_PCREL)
            {
              val = (offsetT) ((addressT) val << 1);
              min = (offsetT) ((addressT) min << 1);
              max = (offsetT) ((addressT) max << 1);
            }
-         if (file == (char *) NULL)
-           as_bad (err, (int64_t) val, (int64_t) min, (int64_t) max);
-         else
-           as_bad_where (file, line,
-                         err, (int64_t) val, (int64_t) min, (int64_t) max);
+
+         s390_bad_operand_out_of_range (operand_number, val, min, max,
+                                        file, line);
+
          return;
        }
       /* val is ok, now restrict it to operand->bits bits.  */
@@ -736,7 +767,8 @@ s390_insert_operand (unsigned char *insn,
              max++;
            }
 
-         as_bad_value_out_of_range (_("operand"), uval, (offsetT) min, (offsetT) max, file, line);
+         s390_bad_operand_out_of_range (operand_number, val, min, max,
+                                        file, line);
 
          return;
        }
@@ -1364,7 +1396,7 @@ md_gather_operands (char *str,
        {
          /* Optional parameters might need to be ORed with a
             value so calling s390_insert_operand is needed.  */
-         s390_insert_operand (insn, operand, 0, NULL, 0);
+         s390_insert_operand (insn, operand, 0, NULL, 0, operand_number);
          break;
        }
 
@@ -1394,12 +1426,12 @@ md_gather_operands (char *str,
 
       /* Write the operand to the insn.  */
       if (ex.X_op == O_illegal)
-       as_bad (_("illegal operand"));
+       as_bad (_("operand %d: illegal operand"), operand_number);
       else if (ex.X_op == O_absent)
        {
          if (opindex_ptr[0] == '\0')
            break;
-         as_bad (_("missing operand"));
+         as_bad (_("operand %d: missing operand"), operand_number);
        }
       else if (ex.X_op == O_register || ex.X_op == O_constant)
        {
@@ -1410,7 +1442,7 @@ md_gather_operands (char *str,
              /* We need to generate a fixup for the
                 expression returned by s390_lit_suffix.  */
              if (fc >= MAX_INSN_FIXUPS)
-               as_fatal (_("too many fixups"));
+               as_fatal (_("operand %d: too many fixups"), operand_number);
              fixups[fc].exp = ex;
              fixups[fc].opindex = *opindex_ptr;
              fixups[fc].reloc = BFD_RELOC_UNUSED;
@@ -1420,29 +1452,32 @@ md_gather_operands (char *str,
            {
              if ((operand->flags & S390_OPERAND_LENGTH)
                  && ex.X_op != O_constant)
-               as_bad (_("invalid length field specified"));
+               as_bad (_("operand %d: invalid length field specified"),
+                       operand_number);
              if ((operand->flags & S390_OPERAND_INDEX)
                  && ex.X_add_number == 0
                  && warn_areg_zero)
-               as_warn (_("index register specified but zero"));
+               as_warn (_("operand %d: index register specified but zero"),
+                        operand_number);
              if ((operand->flags & S390_OPERAND_BASE)
                  && ex.X_add_number == 0
                  && warn_areg_zero)
-               as_warn (_("base register specified but zero"));
+               as_warn (_("operand %d: base register specified but zero"),
+                        operand_number);
              if ((operand->flags & S390_OPERAND_GPR)
                  && (operand->flags & S390_OPERAND_REG_PAIR)
                  && (ex.X_add_number & 1))
-               as_bad (_("odd numbered general purpose register specified as "
-                         "register pair"));
+               as_bad (_("operand %d: odd numbered general purpose register "
+                         "specified as register pair"), operand_number);
              if ((operand->flags & S390_OPERAND_FPR)
                  && (operand->flags & S390_OPERAND_REG_PAIR)
                  && ex.X_add_number != 0 && ex.X_add_number != 1
                  && ex.X_add_number != 4 && ex.X_add_number != 5
                  && ex.X_add_number != 8 && ex.X_add_number != 9
                  && ex.X_add_number != 12 && ex.X_add_number != 13)
-               as_bad (_("invalid floating point register pair.  Valid fp "
-                         "register pair operands are 0, 1, 4, 5, 8, 9, "
-                         "12 or 13."));
+               as_bad (_("operand %d: invalid floating-point register (FPR) "
+                         "pair (valid FPR pair operands are 0, 1, 4, 5, 8, 9, "
+                         "12 or 13)"), operand_number);
              if (warn_regtype_mismatch && ex.X_op == O_register
                  && !(opcode->flags & S390_INSTR_FLAG_PSEUDO_MNEMONIC))
                {
@@ -1481,7 +1516,7 @@ md_gather_operands (char *str,
                                 operand_number, expected_regtype);
                    }
                }
-             s390_insert_operand (insn, operand, ex.X_add_number, NULL, 0);
+             s390_insert_operand (insn, operand, ex.X_add_number, NULL, 0, operand_number);
            }
        }
       else
@@ -1567,11 +1602,11 @@ md_gather_operands (char *str,
            }
 
          if (suffix != ELF_SUFFIX_NONE && reloc == BFD_RELOC_UNUSED)
-           as_bad (_("invalid operand suffix"));
+           as_bad (_("operand %d: invalid operand suffix"), operand_number);
          /* We need to generate a fixup of type 'reloc' for this
             expression.  */
          if (fc >= MAX_INSN_FIXUPS)
-           as_fatal (_("too many fixups"));
+           as_fatal (_("operand %d: too many fixups"), operand_number);
          fixups[fc].exp = ex;
          fixups[fc].opindex = *opindex_ptr;
          fixups[fc].reloc = reloc;
@@ -1591,7 +1626,8 @@ md_gather_operands (char *str,
                 skipped. A length operand may not be skipped.  */
              operand = s390_operands + *(++opindex_ptr);
              if (!(operand->flags & (S390_OPERAND_INDEX|S390_OPERAND_BASE)))
-               as_bad (_("syntax error; missing '(' after displacement"));
+               as_bad (_("operand %d: syntax error; missing '(' after displacement"),
+                       operand_number);
 
              /* Ok, skip all operands until S390_OPERAND_BASE.  */
              while (!(operand->flags & S390_OPERAND_BASE))
@@ -1611,7 +1647,8 @@ md_gather_operands (char *str,
                      while (opindex_ptr[1] != '\0')
                        {
                          operand = s390_operands + *(++opindex_ptr);
-                         as_bad (_("syntax error; expected ','"));
+                         as_bad (_("operand %d: syntax error; expected ','"),
+                                 operand_number);
                          break;
                        }
                    }
@@ -1649,7 +1686,8 @@ md_gather_operands (char *str,
        {
          /* After the base register the parenthesised block ends.  */
          if (*str != ')')
-           as_bad (_("syntax error; missing ')' after base register"));
+           as_bad (_("operand %d: syntax error; missing ')' after base register"),
+                   operand_number);
          else
            str++;
          omitted_base_or_index = 0;
@@ -1668,7 +1706,8 @@ md_gather_operands (char *str,
                  while (opindex_ptr[1] != '\0')
                    {
                      operand = s390_operands + *(++opindex_ptr);
-                     as_bad (_("syntax error; expected ','"));
+                     as_bad (_("operand %d: syntax error; expected ','"),
+                             operand_number);
                      break;
                    }
                }
@@ -1691,7 +1730,8 @@ md_gather_operands (char *str,
              operand = s390_operands + *(++opindex_ptr);
 
              if (!(operand->flags & S390_OPERAND_BASE))
-               as_bad (_("syntax error; '%c' not allowed here"), *str);
+               as_bad (_("operand %d: syntax error; '%c' not allowed here"),
+                       operand_number, *str);
              if (*str == ',')
                str++;
              str++;
@@ -1711,7 +1751,8 @@ md_gather_operands (char *str,
                  while (opindex_ptr[1] != '\0')
                    {
                      operand = s390_operands + *(++opindex_ptr);
-                     as_bad (_("syntax error; expected ','"));
+                     as_bad (_("operand %d: syntax error; expected ','"),
+                             operand_number);
                      break;
                    }
                }
@@ -2419,7 +2460,7 @@ md_apply_fix (fixS *fixP, valueT *valP, segT seg ATTRIBUTE_UNUSED)
        {
          /* Insert the fully resolved operand value.  */
          s390_insert_operand ((unsigned char *) where, operand,
-                              (offsetT) value, fixP->fx_file, fixP->fx_line);
+                              (offsetT) value, fixP->fx_file, fixP->fx_line, 0);
          return;
        }
 
index e7d03ecdfe11b51a70fd26d8c24688622c0a5686..6332d9943496c6451180d757c652f82e7abd1f42 100644 (file)
@@ -1,74 +1,74 @@
 .*: Assembler messages:
 .*:5: Error: bad expression
-.*:5: Error: syntax error; missing '\)' after base register
+.*:5: Error: operand 1: syntax error; missing '\)' after base register
 .*:8: Error: bad expression
-.*:8: Error: syntax error; missing '\)' after base register
+.*:8: Error: operand 2: syntax error; missing '\)' after base register
 .*:9: Error: bad expression
-.*:9: Error: syntax error; missing '\)' after base register
+.*:9: Error: operand 2: syntax error; missing '\)' after base register
 .*:12: Error: bad expression
-.*:12: Error: syntax error; missing '\)' after base register
+.*:12: Error: operand 2: syntax error; missing '\)' after base register
 .*:13: Error: bad expression
-.*:13: Error: syntax error; missing '\)' after base register
+.*:13: Error: operand 2: syntax error; missing '\)' after base register
 .*:14: Error: bad expression
-.*:14: Error: syntax error; missing '\)' after base register
+.*:14: Error: operand 2: syntax error; missing '\)' after base register
 .*:15: Error: bad expression
-.*:15: Error: syntax error; missing '\)' after base register
+.*:15: Error: operand 2: syntax error; missing '\)' after base register
 .*:16: Error: bad expression
-.*:16: Error: syntax error; missing '\)' after base register
-.*:17: Error: operand out of range \(0 is not between 1 and 256\)
-.*:18: Error: missing operand
-.*:19: Error: missing operand
-.*:20: Error: missing operand
+.*:16: Error: operand 2: syntax error; missing '\)' after base register
+.*:17: Error: operand 1: operand out of range \(0 is not between 1 and 256\)
+.*:18: Error: operand 1: missing operand
+.*:19: Error: operand 1: missing operand
+.*:20: Error: operand 1: missing operand
 .*:21: Error: bad expression
-.*:21: Error: operand out of range \(0 is not between 1 and 256\)
-.*:21: Error: operand out of range \(32 is not between 0 and 15\)
-.*:21: Error: syntax error; missing '\)' after base register
-.*:21: Error: syntax error; expected ','
+.*:21: Error: operand 1: operand out of range \(0 is not between 1 and 256\)
+.*:21: Error: operand 1: operand out of range \(32 is not between 0 and 15\)
+.*:21: Error: operand 1: syntax error; missing '\)' after base register
+.*:21: Error: operand 1: syntax error; expected ','
 .*:21: Error: bad expression
 .*:21: Error: found 'r', expected: '\)'
-.*:21: Error: syntax error; missing '\)' after base register
+.*:21: Error: operand 1: syntax error; missing '\)' after base register
 .*:21: Error: junk at end of line: `r2\)'
-.*:22: Error: syntax error; missing '\(' after displacement
-.*:23: Error: invalid length field specified
-.*:26: Error: operand out of range \(0 is not between 1 and 16\)
-.*:27: Error: missing operand
-.*:28: Error: missing operand
-.*:29: Error: missing operand
+.*:22: Error: operand 1: syntax error; missing '\(' after displacement
+.*:23: Error: operand 1: invalid length field specified
+.*:26: Error: operand 1: operand out of range \(0 is not between 1 and 16\)
+.*:27: Error: operand 1: missing operand
+.*:28: Error: operand 1: missing operand
+.*:29: Error: operand 1: missing operand
 .*:30: Error: bad expression
-.*:30: Error: operand out of range \(0 is not between 1 and 16\)
-.*:30: Error: operand out of range \(32 is not between 0 and 15\)
-.*:30: Error: syntax error; missing '\)' after base register
-.*:30: Error: syntax error; expected ','
+.*:30: Error: operand 1: operand out of range \(0 is not between 1 and 16\)
+.*:30: Error: operand 1: operand out of range \(32 is not between 0 and 15\)
+.*:30: Error: operand 1: syntax error; missing '\)' after base register
+.*:30: Error: operand 1: syntax error; expected ','
 .*:30: Error: found ',', expected: '\)'
-.*:31: Error: syntax error; missing '\(' after displacement
-.*:32: Error: operand out of range \(0 is not between 1 and 16\)
-.*:33: Error: missing operand
-.*:34: Error: missing operand
-.*:35: Error: missing operand
+.*:31: Error: operand 1: syntax error; missing '\(' after displacement
+.*:32: Error: operand 2: operand out of range \(0 is not between 1 and 16\)
+.*:33: Error: operand 2: missing operand
+.*:34: Error: operand 2: missing operand
+.*:35: Error: operand 2: missing operand
 .*:36: Error: bad expression
-.*:36: Error: operand out of range \(0 is not between 1 and 16\)
-.*:36: Error: syntax error; expected ','
-.*:37: Error: syntax error; missing '\(' after displacement
-.*:38: Error: operand out of range \(0 is not between 1 and 16\)
-.*:38: Error: operand out of range \(0 is not between 1 and 16\)
-.*:39: Error: missing operand
-.*:39: Error: missing operand
-.*:40: Error: missing operand
-.*:40: Error: missing operand
-.*:41: Error: missing operand
-.*:41: Error: missing operand
+.*:36: Error: operand 2: operand out of range \(0 is not between 1 and 16\)
+.*:36: Error: operand 2: syntax error; expected ','
+.*:37: Error: operand 2: syntax error; missing '\(' after displacement
+.*:38: Error: operand 1: operand out of range \(0 is not between 1 and 16\)
+.*:38: Error: operand 2: operand out of range \(0 is not between 1 and 16\)
+.*:39: Error: operand 1: missing operand
+.*:39: Error: operand 2: missing operand
+.*:40: Error: operand 1: missing operand
+.*:40: Error: operand 2: missing operand
+.*:41: Error: operand 1: missing operand
+.*:41: Error: operand 2: missing operand
 .*:42: Error: bad expression
-.*:42: Error: operand out of range \(0 is not between 1 and 16\)
-.*:42: Error: operand out of range \(32 is not between 0 and 15\)
-.*:42: Error: syntax error; missing '\)' after base register
-.*:42: Error: syntax error; expected ','
+.*:42: Error: operand 1: operand out of range \(0 is not between 1 and 16\)
+.*:42: Error: operand 1: operand out of range \(32 is not between 0 and 15\)
+.*:42: Error: operand 1: syntax error; missing '\)' after base register
+.*:42: Error: operand 1: syntax error; expected ','
 .*:42: Error: bad expression
 .*:42: Error: missing '\)'
-.*:42: Error: operand out of range \(0 is not between 1 and 16\)
-.*:42: Error: syntax error; expected ','
-.*:43: Error: syntax error; missing '\(' after displacement
-.*:43: Error: syntax error; missing '\(' after displacement
+.*:42: Error: operand 1: operand out of range \(0 is not between 1 and 16\)
+.*:42: Error: operand 1: syntax error; expected ','
+.*:43: Error: operand 1: syntax error; missing '\(' after displacement
+.*:43: Error: operand 2: syntax error; missing '\(' after displacement
 .*:46: Error: bad expression
-.*:46: Error: syntax error; missing '\)' after base register
+.*:46: Error: operand 2: syntax error; missing '\)' after base register
 .*:47: Error: bad expression
-.*:47: Error: syntax error; missing '\)' after base register
+.*:47: Error: operand 2: syntax error; missing '\)' after base register
index f222fe00093e6dd6fd722397781d7cef4841815d..b2ee382b0f9d79381247be7e17d599dc087a56a9 100644 (file)
@@ -1,21 +1,21 @@
 .*: Assembler messages:
 .*:5: Error: bad expression
-.*:5: Error: syntax error; missing '\)' after base register
+.*:5: Error: operand 3: syntax error; missing '\)' after base register
 .*:8: Error: bad expression
-.*:8: Error: syntax error; missing '\)' after base register
+.*:8: Error: operand 2: syntax error; missing '\)' after base register
 .*:11: Warning: operand 2: expected general register name as base register
 .*:12: Error: bad expression
-.*:12: Error: syntax error; missing '\)' after base register
-.*:15: Error: missing operand
-.*:16: Error: missing operand
-.*:17: Error: invalid length field specified
+.*:12: Error: operand 2: syntax error; missing '\)' after base register
+.*:15: Error: operand 1: missing operand
+.*:16: Error: operand 1: missing operand
+.*:17: Error: operand 1: invalid length field specified
 .*:18: Error: bad expression
-.*:18: Error: operand out of range \(0 is not between 1 and 256\)
-.*:18: Error: operand out of range \(32 is not between 0 and 15\)
-.*:18: Error: syntax error; missing '\)' after base register
-.*:18: Error: syntax error; expected ','
+.*:18: Error: operand 1: operand out of range \(0 is not between 1 and 256\)
+.*:18: Error: operand 1: operand out of range \(32 is not between 0 and 15\)
+.*:18: Error: operand 1: syntax error; missing '\)' after base register
+.*:18: Error: operand 1: syntax error; expected ','
 .*:18: Error: bad expression
 .*:18: Error: found 'r', expected: '\)'
-.*:18: Error: syntax error; missing '\)' after base register
+.*:18: Error: operand 1: syntax error; missing '\)' after base register
 .*:18: Error: junk at end of line: `r2\)'
-.*:19: Error: syntax error; missing '\(' after displacement
+.*:19: Error: operand 1: syntax error; missing '\(' after displacement
index decf896aecc764a12d3fc1560d03dae095d837f2..b820e4c77a132c11f7ce03540ce92efc519f5c47 100644 (file)
@@ -1,65 +1,65 @@
 .*: Assembler messages:
-.*:6: Warning: base register specified but zero
-.*:7: Warning: base register specified but zero
-.*:15: Warning: index register specified but zero
-.*:16: Warning: index register specified but zero
-.*:19: Warning: base register specified but zero
-.*:20: Warning: base register specified but zero
-.*:22: Warning: index register specified but zero
-.*:22: Warning: base register specified but zero
-.*:23: Warning: index register specified but zero
-.*:23: Warning: base register specified but zero
-.*:25: Warning: index register specified but zero
-.*:25: Warning: base register specified but zero
-.*:26: Warning: index register specified but zero
-.*:26: Warning: base register specified but zero
-.*:28: Warning: index register specified but zero
-.*:28: Warning: base register specified but zero
-.*:29: Warning: base register specified but zero
-.*:30: Warning: base register specified but zero
-.*:40: Warning: base register specified but zero
-.*:41: Warning: base register specified but zero
-.*:44: Warning: base register specified but zero
-.*:45: Warning: base register specified but zero
-.*:48: Warning: base register specified but zero
-.*:48: Warning: base register specified but zero
-.*:49: Warning: base register specified but zero
-.*:49: Warning: base register specified but zero
-.*:51: Warning: base register specified but zero
-.*:52: Warning: base register specified but zero
-.*:52: Warning: base register specified but zero
-.*:53: Warning: base register specified but zero
-.*:53: Warning: base register specified but zero
-.*:55: Warning: base register specified but zero
-.*:60: Warning: base register specified but zero
-.*:61: Warning: base register specified but zero
-.*:68: Warning: base register specified but zero
-.*:69: Warning: base register specified but zero
-.*:72: Warning: base register specified but zero
-.*:73: Warning: base register specified but zero
-.*:76: Warning: base register specified but zero
-.*:76: Warning: base register specified but zero
-.*:77: Warning: base register specified but zero
-.*:77: Warning: base register specified but zero
-.*:79: Warning: base register specified but zero
-.*:80: Warning: base register specified but zero
-.*:80: Warning: base register specified but zero
-.*:81: Warning: base register specified but zero
-.*:81: Warning: base register specified but zero
-.*:83: Warning: base register specified but zero
-.*:88: Warning: base register specified but zero
-.*:89: Warning: base register specified but zero
-.*:96: Warning: index register specified but zero
-.*:97: Warning: index register specified but zero
-.*:100: Warning: base register specified but zero
-.*:101: Warning: base register specified but zero
-.*:103: Warning: index register specified but zero
-.*:103: Warning: base register specified but zero
-.*:104: Warning: index register specified but zero
-.*:104: Warning: base register specified but zero
-.*:106: Warning: index register specified but zero
-.*:106: Warning: base register specified but zero
-.*:107: Warning: index register specified but zero
-.*:107: Warning: base register specified but zero
-.*:109: Warning: base register specified but zero
-.*:110: Warning: base register specified but zero
+.*:6: Warning: operand 1: base register specified but zero
+.*:7: Warning: operand 1: base register specified but zero
+.*:15: Warning: operand 2: index register specified but zero
+.*:16: Warning: operand 2: index register specified but zero
+.*:19: Warning: operand 2: base register specified but zero
+.*:20: Warning: operand 2: base register specified but zero
+.*:22: Warning: operand 2: index register specified but zero
+.*:22: Warning: operand 2: base register specified but zero
+.*:23: Warning: operand 2: index register specified but zero
+.*:23: Warning: operand 2: base register specified but zero
+.*:25: Warning: operand 2: index register specified but zero
+.*:25: Warning: operand 2: base register specified but zero
+.*:26: Warning: operand 2: index register specified but zero
+.*:26: Warning: operand 2: base register specified but zero
+.*:28: Warning: operand 2: index register specified but zero
+.*:28: Warning: operand 2: base register specified but zero
+.*:29: Warning: operand 2: base register specified but zero
+.*:30: Warning: operand 2: base register specified but zero
+.*:40: Warning: operand 1: base register specified but zero
+.*:41: Warning: operand 1: base register specified but zero
+.*:44: Warning: operand 2: base register specified but zero
+.*:45: Warning: operand 2: base register specified but zero
+.*:48: Warning: operand 1: base register specified but zero
+.*:48: Warning: operand 2: base register specified but zero
+.*:49: Warning: operand 1: base register specified but zero
+.*:49: Warning: operand 2: base register specified but zero
+.*:51: Warning: operand 1: base register specified but zero
+.*:52: Warning: operand 1: base register specified but zero
+.*:52: Warning: operand 2: base register specified but zero
+.*:53: Warning: operand 1: base register specified but zero
+.*:53: Warning: operand 2: base register specified but zero
+.*:55: Warning: operand 1: base register specified but zero
+.*:60: Warning: operand 2: base register specified but zero
+.*:61: Warning: operand 2: base register specified but zero
+.*:68: Warning: operand 1: base register specified but zero
+.*:69: Warning: operand 1: base register specified but zero
+.*:72: Warning: operand 2: base register specified but zero
+.*:73: Warning: operand 2: base register specified but zero
+.*:76: Warning: operand 1: base register specified but zero
+.*:76: Warning: operand 2: base register specified but zero
+.*:77: Warning: operand 1: base register specified but zero
+.*:77: Warning: operand 2: base register specified but zero
+.*:79: Warning: operand 1: base register specified but zero
+.*:80: Warning: operand 1: base register specified but zero
+.*:80: Warning: operand 2: base register specified but zero
+.*:81: Warning: operand 1: base register specified but zero
+.*:81: Warning: operand 2: base register specified but zero
+.*:83: Warning: operand 1: base register specified but zero
+.*:88: Warning: operand 2: base register specified but zero
+.*:89: Warning: operand 2: base register specified but zero
+.*:96: Warning: operand 2: index register specified but zero
+.*:97: Warning: operand 2: index register specified but zero
+.*:100: Warning: operand 2: base register specified but zero
+.*:101: Warning: operand 2: base register specified but zero
+.*:103: Warning: operand 2: index register specified but zero
+.*:103: Warning: operand 2: base register specified but zero
+.*:104: Warning: operand 2: index register specified but zero
+.*:104: Warning: operand 2: base register specified but zero
+.*:106: Warning: operand 2: index register specified but zero
+.*:106: Warning: operand 2: base register specified but zero
+.*:107: Warning: operand 2: index register specified but zero
+.*:107: Warning: operand 2: base register specified but zero
+.*:109: Warning: operand 2: base register specified but zero
+.*:110: Warning: operand 2: base register specified but zero
index 84d294de960a3064422fc5140714b7b90dbd0be6..b5460b65046d6a3cb2318c1ed9b7be5f95e70072 100644 (file)
@@ -1,2 +1,2 @@
 .*: Assembler messages:
-.*:3: Error: odd numbered general purpose register specified as register pair
+.*:3: Error: operand 1: odd numbered general purpose register specified as register pair
index cf8e9c2cefcc829fb5b7b223169eb47e87acac95..2886802963ef305963416bfaabef5f7531308d2b 100644 (file)
@@ -1,3 +1,3 @@
 .*: Assembler messages:
-.*:3: Error: operand out of range \(-4294967298 not between -4294967296 and 4294967294\)
-.*:4: Error: operand out of range \(4294967296 not between -4294967296 and 4294967294\)
+.*:3: Error: operand out of range \(-4294967298 is not between -4294967296 and 4294967294\)
+.*:4: Error: operand out of range \(4294967296 is not between -4294967296 and 4294967294\)