diff options
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-d10v.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 2df90da..0d2ddd4 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -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 diff --git a/gas/config/tc-d10v.c b/gas/config/tc-d10v.c index 43fd89c..284b2af 100644 --- a/gas/config/tc-d10v.c +++ b/gas/config/tc-d10v.c @@ -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; |