[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/5] tcg: Make bswap support in qemu_ld/st optional
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH 0/5] tcg: Make bswap support in qemu_ld/st optional |
Date: |
Tue, 20 Nov 2018 13:15:53 +0100 |
Having to support bswap in the guest memory operations at times
requires an irritating number of temporaries. Better to allow
the bswap operations to be expanded outside of the memory ops
and let register allocation do its thing.
This is something that I've been planning to do for some time,
to aid i386 and arm32 especially. But I've been prompted again
by the nacent risc-v backend, for which this would be especially
irritating to have to open-code.
Alistair, for convenience I've pushed this to
https://github.com/rth7680/qemu.git tcg-next-for-4.0
r~
Richard Henderson (5):
tcg: Add TCG_TARGET_HAS_MEMORY_BSWAP
tcg/optimize: Optimize bswap
tcg/i386: Set TCG_TARGET_HAS_MEMORY_BSWAP with have_movbe
tcg/aarch64: Set TCG_TARGET_HAS_MEMORY_BSWAP to false
tcg/arm: Set TCG_TARGET_HAS_MEMORY_BSWAP to false
tcg/aarch64/tcg-target.h | 1 +
tcg/arm/tcg-target.h | 1 +
tcg/i386/tcg-target.h | 3 +
tcg/mips/tcg-target.h | 1 +
tcg/ppc/tcg-target.h | 1 +
tcg/s390/tcg-target.h | 1 +
tcg/sparc/tcg-target.h | 1 +
tcg/tci/tcg-target.h | 2 +
tcg/aarch64/tcg-target.inc.c | 63 +++--------
tcg/arm/tcg-target.inc.c | 198 +++++++++--------------------------
tcg/i386/tcg-target.inc.c | 112 +++++++-------------
tcg/optimize.c | 12 +++
tcg/tcg-op.c | 118 ++++++++++++++++++++-
13 files changed, 234 insertions(+), 280 deletions(-)
--
2.17.2
- [Qemu-devel] [PATCH 0/5] tcg: Make bswap support in qemu_ld/st optional,
Richard Henderson <=
- [Qemu-devel] [PATCH 1/5] tcg: Add TCG_TARGET_HAS_MEMORY_BSWAP, Richard Henderson, 2018/11/20
- [Qemu-devel] [PATCH 2/5] tcg/optimize: Optimize bswap, Richard Henderson, 2018/11/20
- [Qemu-devel] [PATCH 4/5] tcg/aarch64: Set TCG_TARGET_HAS_MEMORY_BSWAP to false, Richard Henderson, 2018/11/20
- [Qemu-devel] [PATCH 3/5] tcg/i386: Set TCG_TARGET_HAS_MEMORY_BSWAP with have_movbe, Richard Henderson, 2018/11/20
- [Qemu-devel] [PATCH 5/5] tcg/arm: Set TCG_TARGET_HAS_MEMORY_BSWAP to false, Richard Henderson, 2018/11/20
- Re: [Qemu-devel] [PATCH 0/5] tcg: Make bswap support in qemu_ld/st optional, no-reply, 2018/11/21