From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56888) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W2cRU-0000jy-5x for qemu-devel@nongnu.org; Mon, 13 Jan 2014 03:00:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W2cRN-0001n8-Ij for qemu-devel@nongnu.org; Mon, 13 Jan 2014 03:00:16 -0500 Date: Mon, 13 Jan 2014 17:59:34 +1000 From: "Edgar E. Iglesias" Message-ID: <20140113075933.GB18408@edvb> References: <1389386396-22367-1-git-send-email-rth@twiddle.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1389386396-22367-1-git-send-email-rth@twiddle.net> Subject: Re: [Qemu-devel] [PATCH] target-i386: Fix CC_OP_CLR vs PF List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Richard Henderson Cc: 1267955@bugs.launchpad.net, qemu-devel@nongnu.org, qemu-stable@nongnu.org On Fri, Jan 10, 2014 at 12:39:56PM -0800, Richard Henderson wrote: > Parity should be set for a zero result. > > Signed-off-by: Richard Henderson Reviewed-by: Edgar E. Iglesias > --- > target-i386/cc_helper.c | 2 +- > target-i386/translate.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/target-i386/cc_helper.c b/target-i386/cc_helper.c > index ee04092..05dd12b 100644 > --- a/target-i386/cc_helper.c > +++ b/target-i386/cc_helper.c > @@ -103,7 +103,7 @@ target_ulong helper_cc_compute_all(target_ulong dst, target_ulong src1, > case CC_OP_EFLAGS: > return src1; > case CC_OP_CLR: > - return CC_Z; > + return CC_Z | CC_P; > > case CC_OP_MULB: > return compute_all_mulb(dst, src1); > diff --git a/target-i386/translate.c b/target-i386/translate.c > index b0f2279..34f35e7 100644 > --- a/target-i386/translate.c > +++ b/target-i386/translate.c > @@ -748,7 +748,7 @@ static void gen_compute_eflags(DisasContext *s) > return; > } > if (s->cc_op == CC_OP_CLR) { > - tcg_gen_movi_tl(cpu_cc_src, CC_Z); > + tcg_gen_movi_tl(cpu_cc_src, CC_Z | CC_P); > set_cc_op(s, CC_OP_EFLAGS); > return; > } > -- > 1.8.4.2 > >