From 22478e79f2793aa1bc7a5019ae2e48303573e0d5 Mon Sep 17 00:00:00 2001 From: balrog Date: Sat, 19 Jul 2008 10:12:22 +0000 Subject: Fix smlald, smlsld, pkhtp, pkhbt, ssat, usat, umul, smul... (Laurent Desnogues). helper.c - copy reference c0_c2 to runtime c0_c2 and not c0_c1 op_helper.c - remove old code (PARAM1, probably some left over from old dyngen) that broke do_[us]sat translate.c - gen_smul_dual should sign-extend from 16 bit to 32 bit and not from 8 to 32 - disas_arm_insn: * smlalxy: that was completely wrong; now the addition is performed as for smlald * pkhtb: optional ASR not taken into account (similar * to [us]sat) * pkhtb/pkhbt: tmp2 is dead * smlald, smlsld, smuad, smusd, smlad, smlsd: rd * and rn swapped git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4898 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-arm/op_helper.c | 2 -- 1 file changed, 2 deletions(-) (limited to 'target-arm/op_helper.c') diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c index 5b5581f..2d7be9c 100644 --- a/target-arm/op_helper.c +++ b/target-arm/op_helper.c @@ -185,7 +185,6 @@ static inline uint32_t do_ssat(int32_t val, int shift) int32_t top; uint32_t mask; - shift = PARAM1; top = val >> shift; mask = (1u << shift) - 1; if (top > 0) { @@ -203,7 +202,6 @@ static inline uint32_t do_usat(int32_t val, int shift) { uint32_t max; - shift = PARAM1; max = (1u << shift) - 1; if (val < 0) { env->QF = 1; -- cgit v1.1