From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LsOGM-00055I-GZ for qemu-devel@nongnu.org; Fri, 10 Apr 2009 17:27:50 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LsOGL-00054G-1W for qemu-devel@nongnu.org; Fri, 10 Apr 2009 17:27:49 -0400 Received: from [199.232.76.173] (port=34468 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LsOGK-00054A-Om for qemu-devel@nongnu.org; Fri, 10 Apr 2009 17:27:48 -0400 Received: from hall.aurel32.net ([88.191.82.174]:38242) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1LsOGK-0008LM-9u for qemu-devel@nongnu.org; Fri, 10 Apr 2009 17:27:48 -0400 Date: Fri, 10 Apr 2009 23:27:30 +0200 From: Aurelien Jarno Subject: Re: [Qemu-devel] [PATCH] Alpha: remove amask helper Message-ID: <20090410212730.GC8217@volta.aurel32.net> References: <1239353885-68017-1-git-send-email-gingold@adacore.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Disposition: inline In-Reply-To: <1239353885-68017-1-git-send-email-gingold@adacore.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Tristan Gingold Cc: qemu-devel@nongnu.org On Fri, Apr 10, 2009 at 10:58:05AM +0200, Tristan Gingold wrote: > The direct use of helper_amask in translate.c was bogus (as env is not > assigned). Directly code amask in tcg and remove the helper. > > Signed-off-by: Tristan Gingold > --- > target-alpha/helper.h | 1 - > target-alpha/op_helper.c | 15 --------------- > target-alpha/translate.c | 15 +++++++++++++-- > 3 files changed, 13 insertions(+), 18 deletions(-) Thanks, applied > diff --git a/target-alpha/helper.h b/target-alpha/helper.h > index f62b1c2..a4faca2 100644 > --- a/target-alpha/helper.h > +++ b/target-alpha/helper.h > @@ -3,7 +3,6 @@ > DEF_HELPER_0(tb_flush, void) > > DEF_HELPER_2(excp, void, int, int) > -DEF_HELPER_1(amask, i64, i64) > DEF_HELPER_0(load_pcc, i64) > DEF_HELPER_0(rc, i64) > DEF_HELPER_0(rs, i64) > diff --git a/target-alpha/op_helper.c b/target-alpha/op_helper.c > index 59010fc..e9c7d28 100644 > --- a/target-alpha/op_helper.c > +++ b/target-alpha/op_helper.c > @@ -37,21 +37,6 @@ void helper_excp (int excp, int error) > cpu_loop_exit(); > } > > -uint64_t helper_amask (uint64_t arg) > -{ > - switch (env->implver) { > - case IMPLVER_2106x: > - /* EV4, EV45, LCA, LCA45 & EV5 */ > - break; > - case IMPLVER_21164: > - case IMPLVER_21264: > - case IMPLVER_21364: > - arg &= ~env->amask; > - break; > - } > - return arg; > -} > - > uint64_t helper_load_pcc (void) > { > /* XXX: TODO */ > diff --git a/target-alpha/translate.c b/target-alpha/translate.c > index 11b8139..a971b03 100644 > --- a/target-alpha/translate.c > +++ b/target-alpha/translate.c > @@ -1160,9 +1160,20 @@ static always_inline int translate_one (DisasContext *ctx, uint32_t insn) > /* AMASK */ > if (likely(rc != 31)) { > if (islit) > - tcg_gen_movi_i64(cpu_ir[rc], helper_amask(lit)); > + tcg_gen_movi_i64(cpu_ir[rc], lit); > else > - gen_helper_amask(cpu_ir[rc], cpu_ir[rb]); > + tcg_gen_mov_i64(cpu_ir[rc], cpu_ir[rb]); > + switch (ctx->env->implver) { > + case IMPLVER_2106x: > + /* EV4, EV45, LCA, LCA45 & EV5 */ > + break; > + case IMPLVER_21164: > + case IMPLVER_21264: > + case IMPLVER_21364: > + tcg_gen_andi_i64(cpu_ir[rc], cpu_ir[rc], > + ~(uint64_t)ctx->amask); > + break; > + } > } > break; > case 0x64: > -- > 1.6.2 > > > > -- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net