diff options
Diffstat (limited to 'target-arm/op.c')
-rw-r--r-- | target-arm/op.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target-arm/op.c b/target-arm/op.c index 08afa2f7cf..0a3811ed2f 100644 --- a/target-arm/op.c +++ b/target-arm/op.c @@ -824,12 +824,13 @@ void OPPROTO op_shrl_T0_im_thumb(void) shift = PARAM1; if (shift == 0) { - env->CF = 0; + env->CF = ((uint32_t)shift) >> 31; T0 = 0; } else { env->CF = (T0 >> (shift - 1)) & 1; T0 = T0 >> shift; } + env->NZF = T0; FORCE_RET(); } |