diff options
author | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-09-01 13:09:06 +0000 |
---|---|---|
committer | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-09-01 13:09:06 +0000 |
commit | 69d6275b0058cf7a8ccba83f74e36b973b951d22 (patch) | |
tree | a8a6e7589548552a8cc8b26e35e0b22d54a74c24 /target-sh4/op.c | |
parent | c047da1af40c116fb9b365ccaa3ae6dda80727d1 (diff) | |
download | qemu-69d6275b0058cf7a8ccba83f74e36b973b951d22.zip qemu-69d6275b0058cf7a8ccba83f74e36b973b951d22.tar.gz qemu-69d6275b0058cf7a8ccba83f74e36b973b951d22.tar.bz2 |
SH4: Convert remaining non-fp ops to TCG
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5120 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sh4/op.c')
-rw-r--r-- | target-sh4/op.c | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/target-sh4/op.c b/target-sh4/op.c index 7bd2e18..3b25b4a 100644 --- a/target-sh4/op.c +++ b/target-sh4/op.c @@ -37,84 +37,6 @@ static inline void cond_t(int cond) clr_t(); } -void OPPROTO op_cmp_str_T0_T1(void) -{ - cond_t((T0 & 0x000000ff) == (T1 & 0x000000ff) || - (T0 & 0x0000ff00) == (T1 & 0x0000ff00) || - (T0 & 0x00ff0000) == (T1 & 0x00ff0000) || - (T0 & 0xff000000) == (T1 & 0xff000000)); - RETURN(); -} - -void OPPROTO op_div0s_T0_T1(void) -{ - if (T1 & 0x80000000) - env->sr |= SR_Q; - else - env->sr &= ~SR_Q; - if (T0 & 0x80000000) - env->sr |= SR_M; - else - env->sr &= ~SR_M; - cond_t((T1 ^ T0) & 0x80000000); - RETURN(); -} - -void OPPROTO op_div1_T0_T1(void) -{ - helper_div1_T0_T1(); - RETURN(); -} - -void OPPROTO op_shad_T0_T1(void) -{ - if ((T0 & 0x80000000) == 0) - T1 <<= (T0 & 0x1f); - else if ((T0 & 0x1f) == 0) - T1 = (T1 & 0x80000000)? 0xffffffff : 0; - else - T1 = ((int32_t) T1) >> ((~T0 & 0x1f) + 1); - RETURN(); -} - -void OPPROTO op_shld_T0_T1(void) -{ - if ((T0 & 0x80000000) == 0) - T1 <<= (T0 & 0x1f); - else if ((T0 & 0x1f) == 0) - T1 = 0; - else - T1 = ((uint32_t) T1) >> ((~T0 & 0x1f) + 1); - RETURN(); -} - -void OPPROTO op_rotcl_Rn(void) -{ - helper_rotcl(&env->gregs[PARAM1]); - RETURN(); -} - -void OPPROTO op_rotcr_Rn(void) -{ - helper_rotcr(&env->gregs[PARAM1]); - RETURN(); -} - -void OPPROTO op_rotl_Rn(void) -{ - cond_t(env->gregs[PARAM1] & 0x80000000); - env->gregs[PARAM1] = (env->gregs[PARAM1] << 1) | (env->sr & SR_T); - RETURN(); -} - -void OPPROTO op_rotr_Rn(void) -{ - cond_t(env->gregs[PARAM1] & 1); - env->gregs[PARAM1] = (env->gregs[PARAM1] >> 1) | - ((env->sr & SR_T) ? 0x80000000 : 0); - RETURN(); -} - void OPPROTO op_fmov_frN_FT0(void) { FT0 = env->fregs[PARAM1]; |