From: David Gibson <david@gibson.dropbear.id.au>
To: Stefan Brankovic <stefan.brankovic@rt-rk.com>
Cc: richard.henderson@linaro.org, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH v5 0/8] target/ppc: Optimize emulation of some Altivec instructions
Date: Wed, 17 Jul 2019 13:03:34 +1000 [thread overview]
Message-ID: <20190717030334.GF9123@umbus.fritz.box> (raw)
In-Reply-To: <1563200574-11098-1-git-send-email-stefan.brankovic@rt-rk.com>
[-- Attachment #1: Type: text/plain, Size: 2668 bytes --]
On Mon, Jul 15, 2019 at 04:22:46PM +0200, Stefan Brankovic wrote:
> Optimize emulation of ten Altivec instructions: lvsl, lvsr, vsl, vsr, vpkpx,
> vgbbd, vclzb, vclzh, vclzw and vclzd.
>
> This series buils up on and complements recent work of Thomas Murta, Mark
> Cave-Ayland and Richard Henderson in the same area. It is based on devising TCG
> translation implementation for selected instructions rather than using helpers.
> The selected instructions are most of the time idiosyncratic to ppc platform,
> so relatively complex TCG translation (without direct mapping to host
> instruction that is not possible in these cases) seems to be the best option,
> and that approach is presented in this series. The performance improvements
> are significant in all cases.
I've now also applied patches 4-6 to ppc-for-4.2, leaving just the
ones which don't have acks from rth yet.
>
> V5:
>
> Fixed vpkpx bug and added it back in patch.
> Fixed graphical distortions on OSX 10.3 and 10.4.
> Removed conversion of vmrgh and vmrgl instructions to vector operations for
> further investigation.
>
> V4:
>
> Addressed Richard's Henderson's suggestions.
> Removed vpkpx's optimization for further investigation on graphical distortions
> it caused on OSX 10.2-4 guests.
> Added opcodes for vector vmrgh(b|h|w) and vmrgl(b|h|w) in tcg.
> Implemented vector vmrgh and vmrgl instructions for i386.
> Converted vmrgh and vmrgl instructions to vector operations.
>
> V3:
>
> Fixed problem during build.
>
> V2:
>
> Addressed Richard's Henderson's suggestions.
> Fixed problem during build on patch 2/8.
> Rebased series to the latest qemu code.
>
> Stefan Brankovic (8):
> target/ppc: Optimize emulation of lvsl and lvsr instructions
> target/ppc: Optimize emulation of vsl and vsr instructions
> target/ppc: Optimize emulation of vpkpx instruction
> target/ppc: Optimize emulation of vgbbd instruction
> target/ppc: Optimize emulation of vclzd instruction
> target/ppc: Optimize emulation of vclzw instruction
> target/ppc: Optimize emulation of vclzh and vclzb instructions
> target/ppc: Refactor emulation of vmrgew and vmrgow instructions
>
> target/ppc/helper.h | 10 -
> target/ppc/int_helper.c | 365 --------------------
> target/ppc/translate/vmx-impl.inc.c | 656 ++++++++++++++++++++++++++++++++----
> 3 files changed, 587 insertions(+), 444 deletions(-)
>
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2019-07-17 3:41 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-15 14:22 [Qemu-devel] [PATCH v5 0/8] target/ppc: Optimize emulation of some Altivec instructions Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 1/8] target/ppc: Optimize emulation of lvsl and lvsr instructions Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 2/8] target/ppc: Optimize emulation of vsl and vsr instructions Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 3/8] target/ppc: Optimize emulation of vpkpx instruction Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 4/8] target/ppc: Optimize emulation of vgbbd instruction Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 5/8] target/ppc: Optimize emulation of vclzd instruction Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 6/8] target/ppc: Optimize emulation of vclzw instruction Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 7/8] target/ppc: Optimize emulation of vclzh and vclzb instructions Stefan Brankovic
2019-07-15 14:22 ` [Qemu-devel] [PATCH v5 8/8] target/ppc: Refactor emulation of vmrgew and vmrgow instructions Stefan Brankovic
2019-07-16 9:02 ` [Qemu-devel] [PATCH v5 0/8] target/ppc: Optimize emulation of some Altivec instructions David Gibson
2019-07-17 3:03 ` David Gibson [this message]
2019-08-24 9:42 ` David Gibson
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=20190717030334.GF9123@umbus.fritz.box \
--to=david@gibson.dropbear.id.au \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=stefan.brankovic@rt-rk.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).