]> git.proxmox.com Git - mirror_qemu.git/commit - target/arm/translate.c
Fix smlald, smlsld, pkhtp, pkhbt, ssat, usat, umul, smul... (Laurent Desnogues).
authorbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 19 Jul 2008 10:12:22 +0000 (10:12 +0000)
committerbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 19 Jul 2008 10:12:22 +0000 (10:12 +0000)
commit22478e79f2793aa1bc7a5019ae2e48303573e0d5
treea736478a7d1cb9670b44dfc9f6015127dc0bbfe4
parentf617a9a6bb3b66e93d30f57e966f425e58cef8bc
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/helper.c
target-arm/op_helper.c
target-arm/translate.c