* config/tc-d10v.c (find_opcode): Reject non-SP operand if
authorAlexandre Oliva <aoliva@redhat.com>
Thu, 29 Nov 2001 18:04:12 +0000 (18:04 +0000)
committerAlexandre Oliva <aoliva@redhat.com>
Thu, 29 Nov 2001 18:04:12 +0000 (18:04 +0000)
flags requires SP.

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

index 2df90da..0d2ddd4 100644 (file)
@@ -1,3 +1,8 @@
+2001-11-29  Alexandre Oliva  <aoliva@redhat.com>
+
+       * config/tc-d10v.c (find_opcode): Reject non-SP operand if
+       flags requires SP.
+
 2001-11-29 Arati Dikey <aratid@kpit.com>
 
        * tc-sh.c (parse_at): Removed case-sensitivity of index register
index 43fd89c..284b2af 100644 (file)
@@ -1276,7 +1276,8 @@ find_opcode (opcode, myops)
          if (X_op != O_register
              || (num & ~flags
                  & (OPERAND_GPR | OPERAND_ACC0 | OPERAND_ACC1
-                    | OPERAND_FFLAG | OPERAND_CFLAG | OPERAND_CONTROL)))
+                    | OPERAND_FFLAG | OPERAND_CFLAG | OPERAND_CONTROL))
+             || ((flags & OPERAND_SP) && ! (num & OPERAND_SP)))
            {
              as_bad (_("bad opcode or operands"));
              return 0;
@@ -1385,7 +1386,8 @@ find_opcode (opcode, myops)
                      || (num & ~flags
                          & (OPERAND_GPR | OPERAND_ACC0 | OPERAND_ACC1
                             | OPERAND_FFLAG | OPERAND_CFLAG
-                            | OPERAND_CONTROL)))
+                            | OPERAND_CONTROL))
+                     || ((flags & OPERAND_SP) && ! (num & OPERAND_SP)))
                    {
                      match = 0;
                      break;