qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] tcg: Streamline vector load/store
@ 2023-08-31  3:07 Richard Henderson
  2023-08-31  3:07 ` [PATCH 1/2] tcg: Add tcg_gen_{ld,st}_i128 Richard Henderson
  2023-08-31  3:07 ` [PATCH 2/2] target/i386: Use i128 for 128 and 256-bit loads and stores Richard Henderson
  0 siblings, 2 replies; 3+ messages in thread
From: Richard Henderson @ 2023-08-31  3:07 UTC (permalink / raw)
  To: qemu-devel

We have tcg_gen_qemu_{ld,st}_i128, which can be used to implement
load/store of vectors to guest memory.  But at present we have to
split into, or concatenated from, two i64 to reference the guest
vector register backing store within env.

Provide tcg_gen_{ld,st}_i128, which can avoid the trip through i64.

This does require that the target store i128 in host byte ordering,
which is true of i386 (and some other backends) but not arm or s390x.
There is definitely further cleanup possible.


r~


Richard Henderson (2):
  tcg: Add tcg_gen_{ld,st}_i128
  target/i386: Use i128 for 128 and 256-bit loads and stores

 include/tcg/tcg-op-common.h |  3 ++
 target/i386/tcg/translate.c | 61 ++++++++++++++++---------------------
 tcg/tcg-op.c                | 22 +++++++++++++
 3 files changed, 52 insertions(+), 34 deletions(-)

-- 
2.34.1



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-08-31  3:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-31  3:07 [PATCH 0/2] tcg: Streamline vector load/store Richard Henderson
2023-08-31  3:07 ` [PATCH 1/2] tcg: Add tcg_gen_{ld,st}_i128 Richard Henderson
2023-08-31  3:07 ` [PATCH 2/2] target/i386: Use i128 for 128 and 256-bit loads and stores Richard Henderson

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).