From: Aurelien Jarno <aurelien@aurel32.net>
To: Richard Henderson <rth@twiddle.net>
Cc: Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 3/5] target-arm: convert shl and shr helpers to TCG
Date: Mon, 17 Sep 2012 20:09:17 +0200 [thread overview]
Message-ID: <20120917180917.GC3880@ohm.aurel32.net> (raw)
In-Reply-To: <5057437F.9010503@twiddle.net>
On Mon, Sep 17, 2012 at 08:36:31AM -0700, Richard Henderson wrote:
> On 09/16/2012 04:08 PM, Aurelien Jarno wrote:
> > + tcg_gen_setcondi_i32(TCG_COND_GE, tmp2, tmp1, 32); \
> > + tcg_gen_andi_i32(tmp1, tmp1, 0x1f); \
> > + tcg_gen_##name##_i32(dest, t0, tmp1); \
> > + tcg_temp_free_i32(tmp1); \
> > + tcg_gen_subi_i32(tmp2, tmp2, 1); \
> > + tcg_gen_and_i32(dest, dest, tmp2); \
>
> Ought I revive my movcond patch?
>
> Surely you can agree it's much more natural to write this
> as a conditional move of zero than playing masking games.
>
I agree it's more natural, that said in that case it doesn't spare that
many instructions, and I am still not sure we want to introduce such a
TCG op. What is important is to avoid helpers and branches which are
really killing the performances.
If you insist, maybe we can just add a movcond op that uses setcond, so
it makes the code more readable?
We introduced setcond a lot of time ago, and there are still plenty of
places where it's not used. We can get higher performances already by
fixing that.
--
Aurelien Jarno GPG: 1024D/F1BCDB73
aurelien@aurel32.net http://www.aurel32.net
next prev parent reply other threads:[~2012-09-17 18:09 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-16 23:08 [Qemu-devel] [PATCH 0/5] target-arm: misc optimizations Aurelien Jarno
2012-09-16 23:08 ` [Qemu-devel] [PATCH 1/5] target-arm: use globals for CC flags Aurelien Jarno
2012-09-16 23:08 ` [Qemu-devel] [PATCH 2/5] target-arm: convert add_cc and sub_cc helpers to TCG Aurelien Jarno
2012-09-16 23:08 ` [Qemu-devel] [PATCH 3/5] target-arm: convert shl and shr " Aurelien Jarno
2012-09-17 9:30 ` Laurent Desnogues
2012-09-17 9:43 ` Peter Maydell
2012-09-17 13:36 ` Laurent Desnogues
2012-09-17 13:50 ` Peter Maydell
2012-09-18 21:12 ` Edgar E. Iglesias
2012-09-17 15:34 ` Richard Henderson
2012-09-17 15:41 ` Peter Maydell
2012-09-17 15:44 ` Richard Henderson
2012-09-17 15:36 ` Richard Henderson
2012-09-17 18:09 ` Aurelien Jarno [this message]
2012-09-17 18:47 ` Richard Henderson
2012-09-17 20:03 ` Aurelien Jarno
2012-09-16 23:08 ` [Qemu-devel] [PATCH 4/5] target-arm: optimize helper_sar Aurelien Jarno
2012-09-16 23:08 ` [Qemu-devel] [PATCH 5/5] target-arm: mark a few integer helpers const and pure 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=20120917180917.GC3880@ohm.aurel32.net \
--to=aurelien@aurel32.net \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=rth@twiddle.net \
/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.