fix alpha cmovxx instruction
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>
Fri, 5 Sep 2008 19:07:53 +0000 (19:07 +0000)
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>
Fri, 5 Sep 2008 19:07:53 +0000 (19:07 +0000)
commit29d26d20e5b4a9f28cdd9d072b407223e7b0e610
treef6282aba8ca4adde082eea23ec2811d9f3975aaf
parent980f8a0b394b8542e49a8df0db420e9862b8f3d1
fix alpha cmovxx instruction

The CMOV instruction is defined by the alpha manual as:

CMOVxx Ra.rq,Rb.rq,Rc.wq !Operate format
CMOVxx Ra.rq,#b.ib,Rc.wq !Operate format

Operation:
IF TEST(Rav, Condition_based_on_Opcode) THEN
Rc ← Rbv

The current qemu behavior inverses Ra and Rb.  This is fixed by this
patch.

Signed-off-by: Tristan Gingold <gingold@adacore.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5171 c046a42c-6fe2-441c-8c8c-71466251a162
target-alpha/translate.c