aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2001-11-29 18:04:12 +0000
committerAlexandre Oliva <aoliva@redhat.com>2001-11-29 18:04:12 +0000
commit55aa1bc40b10bf80322a02f313371e1b80cb6b86 (patch)
tree63995ebf5ac4aecb4f83f2d98963951ad16499bb
parente21c4a1c1b529bbce6c63e95ddb90b8d63ad0cde (diff)
downloadgdb-55aa1bc40b10bf80322a02f313371e1b80cb6b86.zip
gdb-55aa1bc40b10bf80322a02f313371e1b80cb6b86.tar.gz
gdb-55aa1bc40b10bf80322a02f313371e1b80cb6b86.tar.bz2
* config/tc-d10v.c (find_opcode): Reject non-SP operand if
flags requires SP.
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-d10v.c6
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;