summaryrefslogtreecommitdiff
path: root/target-arm
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2007-07-22 18:16:42 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2007-07-22 18:16:42 +0000
commitaa268ea622a1e0443ee816c0eb09da928efef5eb (patch)
tree0d6ff97b80d84262c63e7a189fa767a7eeded0ea /target-arm
parent4ce6f8de1aa07cd0587f100200f949a2defdf5cb (diff)
downloadqemu-aa268ea622a1e0443ee816c0eb09da928efef5eb.tar.gz
qemu-aa268ea622a1e0443ee816c0eb09da928efef5eb.tar.bz2
qemu-aa268ea622a1e0443ee816c0eb09da928efef5eb.zip
Thumb shifter carry flag fixes.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3083 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-arm')
-rw-r--r--target-arm/op.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/target-arm/op.c b/target-arm/op.c
index d7ac6de062..771f9c470a 100644
--- a/target-arm/op.c
+++ b/target-arm/op.c
@@ -819,7 +819,7 @@ void OPPROTO op_shll_T0_im_thumb(void)
int shift;
shift = PARAM1;
if (shift != 0) {
- env->CF = (T1 >> (32 - shift)) & 1;
+ env->CF = (T0 >> (32 - shift)) & 1;
T0 = T0 << shift;
}
env->NZF = T0;
@@ -832,7 +832,7 @@ void OPPROTO op_shrl_T0_im_thumb(void)
shift = PARAM1;
if (shift == 0) {
- env->CF = ((uint32_t)shift) >> 31;
+ env->CF = ((uint32_t)T0) >> 31;
T0 = 0;
} else {
env->CF = (T0 >> (shift - 1)) & 1;