]> git.proxmox.com Git - qemu.git/commit
target-arm: Fix sbc_CC carry
authorRichard Henderson <rth@twiddle.net>
Mon, 25 Feb 2013 19:41:39 +0000 (11:41 -0800)
committerAnthony Liguori <aliguori@us.ibm.com>
Mon, 25 Feb 2013 20:32:36 +0000 (14:32 -0600)
commite77f083292916ba43b940fdacd2fc1001b750d1d
treeac7fd7f25acb15e0f1d182130d8df59ff417dfd9
parent8c3ac601bdaf8d4d81823a79f2a166b586db7dab
target-arm: Fix sbc_CC carry

While T0+~T1+CF = T0-T1+CF-1 is true for the low 32-bits,
it does not produce the correct carry-out to bit 33.  Do
exactly what the manual says.

Using the ~T1 makes the add and subtract code paths nearly
identical, so have sbc_CC use adc_CC.

Cc: Peter Maydell <peter.maydell@linaro.org>
Reported-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
target-arm/translate.c