aboutsummaryrefslogtreecommitdiff
path: root/target-sparc/op.c
diff options
context:
space:
mode:
authorblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2008-03-16 19:22:18 +0000
committerblueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162>2008-03-16 19:22:18 +0000
commitd9bdab86e83c1a8e1ed12fad67e76a2459a9e305 (patch)
treec7bc4a3f8fa853f87c62ae9e60306f4ef166ce71 /target-sparc/op.c
parentc4071c90143c6c356ad670e6ed03024b14ce4fa7 (diff)
downloadqemu-d9bdab86e83c1a8e1ed12fad67e76a2459a9e305.zip
qemu-d9bdab86e83c1a8e1ed12fad67e76a2459a9e305.tar.gz
qemu-d9bdab86e83c1a8e1ed12fad67e76a2459a9e305.tar.bz2
Convert mulscc to TCG, add cc_src2
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4075 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sparc/op.c')
-rw-r--r--target-sparc/op.c28
1 files changed, 0 insertions, 28 deletions
diff --git a/target-sparc/op.c b/target-sparc/op.c
index 921699e..f4f05d2 100644
--- a/target-sparc/op.c
+++ b/target-sparc/op.c
@@ -195,34 +195,6 @@ void OPPROTO op_smul_T1_T0(void)
env->y = res >> 32;
}
-void OPPROTO op_mulscc_T1_T0(void)
-{
- unsigned int b1, N, V, b2;
- target_ulong src1;
-
- N = FLAG_SET(PSR_NEG);
- V = FLAG_SET(PSR_OVF);
- b1 = N ^ V;
- b2 = T0 & 1;
- T0 = (b1 << 31) | (T0 >> 1);
- if (!(env->y & 1))
- T1 = 0;
- /* do addition and update flags */
- src1 = T0;
- T0 += T1;
- env->psr = 0;
- if (!T0)
- env->psr |= PSR_ZERO;
- if ((int32_t) T0 < 0)
- env->psr |= PSR_NEG;
- if (T0 < src1)
- env->psr |= PSR_CARRY;
- if (((src1 ^ T1 ^ -1) & (src1 ^ T0)) & (1 << 31))
- env->psr |= PSR_OVF;
- env->y = (b2 << 31) | (env->y >> 1);
- FORCE_RET();
-}
-
void OPPROTO op_udiv_T1_T0(void)
{
uint64_t x0;