From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42596) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bSygd-0004G0-Hf for qemu-devel@nongnu.org; Thu, 28 Jul 2016 23:42:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bSygb-0006wD-HN for qemu-devel@nongnu.org; Thu, 28 Jul 2016 23:42:10 -0400 Date: Fri, 29 Jul 2016 13:34:56 +1000 From: David Gibson Message-ID: <20160729033456.GI2588@voom.fritz.box> References: <1469571686-7284-1-git-send-email-benh@kernel.crashing.org> <1469571686-7284-28-git-send-email-benh@kernel.crashing.org> <76968d9e-1b45-538e-a400-9069eb72f42e@twiddle.net> <1469758381.5978.241.camel@kernel.crashing.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Li7ckgedzMh1NgdW" Content-Disposition: inline In-Reply-To: <1469758381.5978.241.camel@kernel.crashing.org> Subject: Re: [Qemu-devel] [PATCH 28/32] ppc: Avoid double translation for lvx/lvxl/stvx/stvxl List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Benjamin Herrenschmidt Cc: Richard Henderson , qemu-ppc@nongnu.org, qemu-devel@nongnu.org --Li7ckgedzMh1NgdW Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jul 29, 2016 at 12:13:01PM +1000, Benjamin Herrenschmidt wrote: > On Fri, 2016-07-29 at 06:19 +0530, Richard Henderson wrote: > > This, I'm not so keen on. > >=20 > > (1) The helper, since it writes to registers controlled by tcg, must be= =A0 > > described to clobber all registers.=A0 Which will noticeably increase m= emory=A0 > > traffic to ENV.=A0 For instance, you won't be able to hold the guest re= gister=A0 > > holding the address in a host register across the call. >=20 > Ah I wasn't aware of this. How do you describe such a clobber ? Can I des= cribe > specifically which one is clobbered ? I didn't think TCG kept track of th= e vector > halves but I must admit I'm still a bit new with TCG in general. >=20 > I noticed other constructs doing that (passing a register number to an op= code), > what do I do to ensure the right clobbers are there ? >=20 > > > (2) We're going to have to teach tcg about 16-byte data types soon an= yway, for=A0 > > the proper emulation of 16-byte atomic operations. >=20 > Is anybody working on this already ? I thought about that approach as > it would definitely make things easier for that and a couple of other > cases such as lq/stq. What should I do with this in the short term? Leave it in ppc-for-2.8, or remove it for now pending possible changes? --=20 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 --Li7ckgedzMh1NgdW Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAEBAgAGBQJXms7gAAoJEGw4ysog2bOST4gP/3PvNGW/6yXz1tUpZHHkwSHC VK4y1enUO46fFlmuxz8rxNwoA31d+efFkDr2e185N42kBYjVd9eDJfLMlu1p3tEh kju0DOKC8xeg4V88XLjNKnHV2eav19pXgarAKyV1U8SCdRDsfMjfF6INNJVwQb7v TkYj+733W/YnoOs+yjFmOpD2kvXPg2ujCC7AJaroXK/6JSTl6z5NDdUQzb+xRLIl KATQrgmBt/Lon9GaFGgpA6zAOymPoTXCocRs3NmHaMhjKoUN3QJfjYbr9LcQAxGz ibo7qgmY7ha8WOQVXwCDirbJ+qy48lJxjvvJK06uI23eVteHP04/11NC4j/L92l2 ddzQAkRG2++MoIvLryQlKgn2355tJIQVUuXMQ2USS//z3oDyzOz2irKn8XOQBBql ET9G4qP+0rnzjF2angTvjLFeuhIWItJpBEu4BBH9WsYbi9mxVvYgHzuP+1rDVJZs BXNyFasAEDJH6JozNhJQxZ8RQJxjr0NDjRSMECrYgoHC9SuT6+Sq+IfCHpmh+7Zf KP9A0cOkH3eCiUeB2HZfpZJZnDS7imNkzq7udSRIdKXMALKGT3UeWj3Azg9C9L0J +lUWuz6JIpLfVst7nO6vHbSUhKebjGdtU0P5u5oEr5x9/XhUKZSmXHnmNhCyYaW5 DwQcVqtczDny+qguZkQa =Lmf3 -----END PGP SIGNATURE----- --Li7ckgedzMh1NgdW--