Do not allow auto inc/dec to parallelize with an instruction that uses the index...
authorMichael Meissner <gnu@the-meissners.org>
Fri, 10 Oct 1997 04:50:36 +0000 (04:50 +0000)
committerMichael Meissner <gnu@the-meissners.org>
Fri, 10 Oct 1997 04:50:36 +0000 (04:50 +0000)
gas/ChangeLog
gas/config/tc-d10v.c

index 37072c0..4e04778 100644 (file)
@@ -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>:
index 14ef397..bbed44b 100644 (file)
@@ -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;
                }
            }
        }