Commit 004135d0 by Richard Kenner

(movdi matchers): Fix src/dest order in unaligned reg->reg case.

From-SVN: r10223
parent 0813543a
...@@ -825,12 +825,12 @@ ...@@ -825,12 +825,12 @@
|| (REGNO (operands[1]) & 1)) || (REGNO (operands[1]) & 1))
{ {
/* We normally copy the low-numbered register first. However, if /* We normally copy the low-numbered register first. However, if
the second register operand 0 is the same as the first register the second source register is the same as the first destination
of operand 1, we must copy in the opposite order. */ register, we must copy in the opposite order. */
if (REGNO (operands[0]) + 1 == REGNO (operands[1])) if (REGNO (operands[1]) + 1 == REGNO (operands[0]))
return \"mov %D0,%D1\;mov %0,%1\"; return \"mov %D1,%D0\;mov %1,%0\";
else else
return \"mov %0,%1\;mov %D0,%D1\"; return \"mov %1,%0\;mov %D1,%D0\";
} }
else else
return \"movl %1,%0\"; return \"movl %1,%0\";
...@@ -882,12 +882,12 @@ ...@@ -882,12 +882,12 @@
|| (REGNO (operands[1]) & 1)) || (REGNO (operands[1]) & 1))
{ {
/* We normally copy the low-numbered register first. However, if /* We normally copy the low-numbered register first. However, if
the second register operand 0 is the same as the first register the second source register is the same as the first destination
of operand 1, we must copy in the opposite order. */ register, we must copy in the opposite order. */
if (REGNO (operands[0]) + 1 == REGNO (operands[1])) if (REGNO (operands[1]) + 1 == REGNO (operands[0]))
return \"mov %D0,%D1\;mov %0,%1\"; return \"mov %D1,%D0\;mov %1,%0\";
else else
return \"mov %0,%1\;mov %D0,%D1\"; return \"mov %1,%0\;mov %D1,%D0\";
} }
else else
return \"movl %1,%0\"; return \"movl %1,%0\";
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment