From: "Aurélien Jarno" <aurelien@aurel32.net>
To: "Andreas Färber" <planche2k@googlemail.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 8/x] ppc: Convert op_set_FT0 to TCG
Date: Thu, 4 Sep 2008 22:36:19 +0200 [thread overview]
Message-ID: <20080904203619.GA1819@volta.aurel32.net> (raw)
In-Reply-To: <9F25F767-0618-4970-88E0-83FD155753C4@googlemail.com>
On Thu, Sep 04, 2008 at 07:59:37PM +0200, Andreas Färber wrote:
> Replace op_set_FT0 with tcg_gen_movi_i64.
>
> Signed-off-by: Andreas Faerber <andreas.faerber@web.de>
>
> ---
> Here's a small one since we now seem to be both working on ppc.
>
> I'm not sure if this is correct since the dyngen op set the upper half
> to zero. Do we need an explicit cast to 32 bits for the immediate
> argument to assure they will be zero? Or was that just to avoid garbage
> with dyngen?
No we don't. If you like at the instruction decoding, or at the PowerPC
manual, you will see that the resulting number is always representable
with a 32-bit variable. In dyngen, I guess it was to avoid passing both
PARAM1 and PARAM2.
Patch applied.
>
> Andreas
>
> target-ppc/op.c | 10 ----------
> target-ppc/translate.c | 2 +-
> 2 files changed, 1 insertions(+), 11 deletions(-)
>
> diff --git a/target-ppc/op.c b/target-ppc/op.c
> index a31b41f..81329e3 100644
> --- a/target-ppc/op.c
> +++ b/target-ppc/op.c
> @@ -424,16 +424,6 @@ void OPPROTO op_load_fpscr_FT0 (void)
> RETURN();
> }
>
> -void OPPROTO op_set_FT0 (void)
> -{
> - CPU_DoubleU u;
> -
> - u.l.upper = 0;
> - u.l.lower = PARAM1;
> - FT0 = u.d;
> - RETURN();
> -}
> -
> void OPPROTO op_load_fpscr_T0 (void)
> {
> T0 = (env->fpscr >> PARAM1) & 0xF;
> diff --git a/target-ppc/translate.c b/target-ppc/translate.c
> index 9dd2506..5139ae6 100644
> --- a/target-ppc/translate.c
> +++ b/target-ppc/translate.c
> @@ -2090,7 +2090,7 @@ GEN_HANDLER(mtfsfi, 0x3F, 0x06, 0x04, 0x006f0800,
> PPC_FLOAT)
> bf = crbD(ctx->opcode) >> 2;
> sh = 7 - bf;
> gen_optimize_fprf();
> - gen_op_set_FT0(FPIMM(ctx->opcode) << (4 * sh));
> + tcg_gen_movi_i64(cpu_FT[0], FPIMM(ctx->opcode) << (4 * sh));
> gen_reset_fpstatus();
> gen_op_store_fpscr(1 << sh);
> if (unlikely(Rc(ctx->opcode) != 0)) {
> --
> 1.5.5.1
>
>
--
.''`. Aurelien Jarno | GPG: 1024D/F1BCDB73
: :' : Debian developer | Electrical Engineer
`. `' aurel32@debian.org | aurelien@aurel32.net
`- people.debian.org/~aurel32 | www.aurel32.net
next prev parent reply other threads:[~2008-09-04 20:36 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-09-02 13:36 [Qemu-devel] [PATCH] [ppc] Convert gen_set_{T0,T1} to TCG Andreas Färber
2008-09-02 14:32 ` [Qemu-devel] [PATCH] [ppc] Convert op_reset_T0, op_set_{T0, T1} " Andreas Färber
2008-09-02 15:39 ` [Qemu-devel] [PATCH] [ppc] Convert op_move_{T1,T2}_T0 " Andreas Färber
2008-09-02 16:19 ` Aurelien Jarno
2008-09-02 16:57 ` [Qemu-devel] [PATCH 4/x] [ppc] Convert op_moven_T2_T0 " Andreas Färber
2008-09-02 22:22 ` [Qemu-devel] [PATCH 5/x] ppc: Convert op_load_gpr_{T0,T1,T2} " Andreas Färber
2008-09-02 23:20 ` Aurelien Jarno
2008-09-03 0:39 ` [Qemu-devel] [PATCH 5/x] ppc: Convert op_load_gpr_{T0, T1, T2} " Andreas Färber
2008-09-03 5:07 ` Aurelien Jarno
2008-09-03 10:41 ` Andreas Färber
2008-09-03 11:28 ` Thiemo Seufer
2008-09-03 18:07 ` Andreas Färber
2008-09-03 18:26 ` Blue Swirl
2008-09-03 19:00 ` Andreas Färber
2008-09-03 19:12 ` Blue Swirl
2008-09-03 20:04 ` [Qemu-devel] [PATCH 5/x v2] ppc: Convert GPR moves " Andreas Färber
2008-09-04 5:25 ` Aurelien Jarno
2008-09-04 10:21 ` Andreas Färber
2008-09-04 12:24 ` [Qemu-devel] [PATCH 6/x] ppc: Convert Altivec register " Andreas Färber
2008-09-04 14:08 ` [Qemu-devel] [PATCH 7/x] ppc: Convert FPR " Andreas Färber
2008-09-04 14:39 ` Aurélien Jarno
2008-09-04 17:59 ` [Qemu-devel] [PATCH 8/x] ppc: Convert op_set_FT0 " Andreas Färber
2008-09-04 20:36 ` Aurélien Jarno [this message]
2008-09-04 22:53 ` [Qemu-devel] [PATCH 9/x] ppc: Convert op_add, op_addi " Andreas Färber
2008-09-05 14:18 ` Aurélien Jarno
2008-09-05 17:17 ` Andreas Färber
2008-09-05 17:49 ` Aurelien Jarno
2008-09-04 23:46 ` [Qemu-devel] [PATCH 10/x] ppc: Convert op_subf " Andreas Färber
2008-09-05 14:18 ` Aurélien Jarno
2008-09-04 14:39 ` [Qemu-devel] [PATCH 6/x] ppc: Convert Altivec register moves " Aurélien Jarno
2008-09-07 14:22 ` [Qemu-devel] [PATCH 5/x] ppc: Convert op_load_gpr_{T0, T1, T2} " Paul Brook
2008-09-03 12:41 ` Aurélien Jarno
2008-09-03 12:58 ` Andreas Färber
2008-09-03 13:00 ` Aurélien Jarno
2008-09-03 13:23 ` Thiemo Seufer
2008-09-03 13:45 ` Tristan Gingold
2008-09-03 16:04 ` Andreas Färber
2008-09-02 23:27 ` [Qemu-devel] [PATCH 4/x] [ppc] Convert op_moven_T2_T0 " Aurélien Jarno
2008-09-02 15:58 ` [Qemu-devel] [PATCH] [ppc] Convert op_reset_T0, op_set_{T0, T1} " Aurelien Jarno
2008-09-02 16:44 ` [Qemu-devel] [PATCH 2/x v2] " Andreas Färber
2008-09-02 23:28 ` Aurélien Jarno
2008-09-02 16:18 ` [Qemu-devel] [PATCH] [ppc] Convert gen_set_{T0,T1} " Aurelien Jarno
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080904203619.GA1819@volta.aurel32.net \
--to=aurelien@aurel32.net \
--cc=planche2k@googlemail.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.