diff options
author | Michael Meissner <gnu@the-meissners.org> | 1997-10-10 04:50:36 +0000 |
---|---|---|
committer | Michael Meissner <gnu@the-meissners.org> | 1997-10-10 04:50:36 +0000 |
commit | 719ddab4cc8d72035669d196f4adca700f2dd7db (patch) | |
tree | c06b3aa181a8d4a76e0742231e748a2e0fd5dcbb /gas | |
parent | 2feb07dc3f9027ad5f7995c15587e46868a4aee3 (diff) | |
download | gdb-719ddab4cc8d72035669d196f4adca700f2dd7db.zip gdb-719ddab4cc8d72035669d196f4adca700f2dd7db.tar.gz gdb-719ddab4cc8d72035669d196f4adca700f2dd7db.tar.bz2 |
Do not allow auto inc/dec to parallelize with an instruction that uses the index register
Diffstat (limited to 'gas')
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-d10v.c | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 37072c0..4e04778 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Fri Oct 10 00:47:44 1997 Michael Meissner <meissner@cygnus.com> + + * config/tc-d10v.c (parallel_ok): Note that auto increment and + decrement modify the index register. + Thu Oct 9 15:17:50 1997 Ian Lance Taylor <ian@cygnus.com> From Robin Kirkham <Robin.Kirkham@mlb.dmt.csiro.au>: diff --git a/gas/config/tc-d10v.c b/gas/config/tc-d10v.c index 14ef397..bbed44b 100644 --- a/gas/config/tc-d10v.c +++ b/gas/config/tc-d10v.c @@ -871,6 +871,12 @@ parallel_ok (op1, insn1, op2, insn2, exec_type) used[j] |= 1 << regno ; if (flags & OPERAND_EVEN) used[j] |= 1 << (regno + 1); + + /* Auto inc/dec also modifies the register. */ + if (op->operands[i+1] != 0 + && (d10v_operands[op->operands[i+1]].flags + & (OPERAND_PLUS | OPERAND_MINUS)) != 0) + mod[j] |= 1 << regno; } } } |