summaryrefslogtreecommitdiff
path: root/target-ppc/int_helper.c
diff options
context:
space:
mode:
authorTom Musta <tommusta@gmail.com>2014-08-25 14:25:44 -0500
committerAlexander Graf <agraf@suse.de>2014-09-08 12:50:53 +0200
commit22ffad31d453a82aa290bf196f904580198e8e66 (patch)
tree247b2dfd16ba4f144f31d89d3c8325f40c3b3082 /target-ppc/int_helper.c
parent269778769d4d24c511bc3d5f95eeb2e92dcf1868 (diff)
downloadqemu-22ffad31d453a82aa290bf196f904580198e8e66.tar.gz
qemu-22ffad31d453a82aa290bf196f904580198e8e66.tar.bz2
qemu-22ffad31d453a82aa290bf196f904580198e8e66.zip
target-ppc: Implement mulldo with TCG
Optimize mulldo by using the muls2_i64 operation rather than a helper. Eliminate the obsolete helper code. Signed-off-by: Tom Musta <tommusta@gmail.com> Suggested-by: Richard Henderson <rth@twiddle.net> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-ppc/int_helper.c')
-rw-r--r--target-ppc/int_helper.c27
1 files changed, 0 insertions, 27 deletions
diff --git a/target-ppc/int_helper.c b/target-ppc/int_helper.c
index e5b103b0ec..713d777076 100644
--- a/target-ppc/int_helper.c
+++ b/target-ppc/int_helper.c
@@ -24,33 +24,6 @@
#include "helper_regs.h"
/*****************************************************************************/
/* Fixed point operations helpers */
-#if defined(TARGET_PPC64)
-
-uint64_t helper_mulldo(CPUPPCState *env, uint64_t arg1, uint64_t arg2)
-{
- int64_t th;
- uint64_t tl;
-
- muls64(&tl, (uint64_t *)&th, arg1, arg2);
-
- /* th should either contain all 1 bits or all 0 bits and should
- * match the sign bit of tl; otherwise we have overflowed. */
-
- if ((int64_t)tl < 0) {
- if (likely(th == -1LL)) {
- env->ov = 0;
- } else {
- env->so = env->ov = 1;
- }
- } else if (likely(th == 0LL)) {
- env->ov = 0;
- } else {
- env->so = env->ov = 1;
- }
-
- return (int64_t)tl;
-}
-#endif
target_ulong helper_divweu(CPUPPCState *env, target_ulong ra, target_ulong rb,
uint32_t oe)