From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52376) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XTXp2-0008BW-Jc for qemu-devel@nongnu.org; Mon, 15 Sep 2014 11:04:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XTXot-0007kp-5N for qemu-devel@nongnu.org; Mon, 15 Sep 2014 11:04:08 -0400 Received: from mail-we0-x229.google.com ([2a00:1450:400c:c03::229]:49243) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XTXos-0007kj-Uz for qemu-devel@nongnu.org; Mon, 15 Sep 2014 11:03:59 -0400 Received: by mail-we0-f169.google.com with SMTP id w61so4159963wes.14 for ; Mon, 15 Sep 2014 08:03:58 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Mon, 15 Sep 2014 17:03:32 +0200 Message-Id: <1410793421-6453-6-git-send-email-pbonzini@redhat.com> In-Reply-To: <1410793421-6453-1-git-send-email-pbonzini@redhat.com> References: <1410793421-6453-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 05/14] ppc: use CRF_* in fpu_helper.c List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: tommusta@gmail.com, agraf@suse.de Reviewed-by: Tom Musta Tested-by: Tom Musta Signed-off-by: Paolo Bonzini --- v1->v2: renamed the "ret" variable to "fpcc" target-ppc/fpu_helper.c | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/target-ppc/fpu_helper.c b/target-ppc/fpu_helper.c index da93d12..b4e6d72 100644 --- a/target-ppc/fpu_helper.c +++ b/target-ppc/fpu_helper.c @@ -1043,7 +1043,7 @@ uint32_t helper_ftdiv(uint64_t fra, uint64_t frb) } } - return 0x8 | (fg_flag ? 4 : 0) | (fe_flag ? 2 : 0); + return (1 << CRF_LT) | (fg_flag << CRF_GT) | (fe_flag << CRF_EQ); } uint32_t helper_ftsqrt(uint64_t frb) @@ -1074,33 +1074,33 @@ uint32_t helper_ftsqrt(uint64_t frb) } } - return 0x8 | (fg_flag ? 4 : 0) | (fe_flag ? 2 : 0); + return (1 << CRF_LT) | (fg_flag << CRF_GT) | (fe_flag << CRF_EQ); } void helper_fcmpu(CPUPPCState *env, uint64_t arg1, uint64_t arg2, uint32_t crfD) { CPU_DoubleU farg1, farg2; - uint32_t ret = 0; + uint32_t fpcc; farg1.ll = arg1; farg2.ll = arg2; if (unlikely(float64_is_any_nan(farg1.d) || float64_is_any_nan(farg2.d))) { - ret = 0x01UL; + fpcc = CRF_SO; } else if (float64_lt(farg1.d, farg2.d, &env->fp_status)) { - ret = 0x08UL; + fpcc = CRF_LT; } else if (!float64_le(farg1.d, farg2.d, &env->fp_status)) { - ret = 0x04UL; + fpcc = CRF_GT; } else { - ret = 0x02UL; + fpcc = CRF_EQ; } env->fpscr &= ~(0x0F << FPSCR_FPRF); - env->fpscr |= ret << FPSCR_FPRF; - env->crf[crfD] = ret; - if (unlikely(ret == 0x01UL + env->fpscr |= (0x01 << FPSCR_FPRF) << fpcc; + env->crf[crfD] = (1 << fpcc); + if (unlikely(fpcc == CRF_SO && (float64_is_signaling_nan(farg1.d) || float64_is_signaling_nan(farg2.d)))) { /* sNaN comparison */ @@ -1112,26 +1112,26 @@ void helper_fcmpo(CPUPPCState *env, uint64_t arg1, uint64_t arg2, uint32_t crfD) { CPU_DoubleU farg1, farg2; - uint32_t ret = 0; + uint32_t fpcc; farg1.ll = arg1; farg2.ll = arg2; if (unlikely(float64_is_any_nan(farg1.d) || float64_is_any_nan(farg2.d))) { - ret = 0x01UL; + fpcc = CRF_SO; } else if (float64_lt(farg1.d, farg2.d, &env->fp_status)) { - ret = 0x08UL; + fpcc = CRF_LT; } else if (!float64_le(farg1.d, farg2.d, &env->fp_status)) { - ret = 0x04UL; + fpcc = CRF_GT; } else { - ret = 0x02UL; + fpcc = CRF_EQ; } env->fpscr &= ~(0x0F << FPSCR_FPRF); - env->fpscr |= ret << FPSCR_FPRF; - env->crf[crfD] = ret; - if (unlikely(ret == 0x01UL)) { + env->fpscr |= (0x01 << FPSCR_FPRF) << fpcc; + env->crf[crfD] = (1 << fpcc); + if (unlikely(fpcc == CRF_SO)) { if (float64_is_signaling_nan(farg1.d) || float64_is_signaling_nan(farg2.d)) { /* sNaN comparison */ -- 1.8.3.1