[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/15] tcg field extract primitives
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH 00/15] tcg field extract primitives |
Date: |
Sat, 15 Oct 2016 20:37:35 -0700 |
I was fooling around with a new target last weekend, and got myself
all turned around with its field extract instruction. How much more
handy would it be, I told myself, if we had such a thing generically?
In addition, many hosts have this natively. So it seems a shame to
not take advantage of it when we can.
Lightly tested on x86_64, ppc64le, arm32, and s390x hosts.
r~
Richard Henderson (15):
tcg: Add field extraction primitives
tcg: Minor adjustments to deposit expanders
tcg/aarch64: Implement field extraction opcodes
tcg/arm: Move isa detection to tcg-target.h
tcg/arm: Implement field extraction opcodes
tcg/i386: Implement field extraction opcodes
tcg/mips: Implement field extraction opcodes
tcg/ppc: Implement field extraction opcodes
tcg/s390: Implement field extraction opcodes
target-alpha: Use deposit and extract ops
target-arm: Use tcg_gen_*extract
target-i386: Use tcg_gen_extract_tl
target-mips: Use tcg_gen_extract_*
target-ppc: Use tcg_gen_extract_*
target-s390: Use tcg_gen_extract_i64
target-alpha/translate.c | 67 +++++----
target-arm/translate-a64.c | 48 ++++---
target-arm/translate.c | 37 ++---
target-i386/translate.c | 45 +++---
target-mips/translate.c | 12 +-
target-ppc/translate.c | 9 +-
target-s390x/translate.c | 24 ++--
tcg/aarch64/tcg-target.h | 4 +
tcg/aarch64/tcg-target.inc.c | 14 ++
tcg/arm/tcg-target.h | 38 +++++-
tcg/arm/tcg-target.inc.c | 63 ++++-----
tcg/i386/tcg-target.h | 7 +
tcg/i386/tcg-target.inc.c | 30 ++++
tcg/ia64/tcg-target.h | 4 +
tcg/mips/tcg-target.h | 2 +
tcg/mips/tcg-target.inc.c | 4 +
tcg/optimize.c | 29 ++++
tcg/ppc/tcg-target.h | 4 +
tcg/ppc/tcg-target.inc.c | 10 ++
tcg/s390/tcg-target.h | 12 +-
tcg/s390/tcg-target.inc.c | 13 +-
tcg/sparc/tcg-target.h | 4 +
tcg/tcg-op.c | 319 ++++++++++++++++++++++++++++++++++++++++++-
tcg/tcg-op.h | 12 ++
tcg/tcg-opc.h | 4 +
tcg/tcg.h | 8 ++
tcg/tci/tcg-target.h | 4 +
27 files changed, 655 insertions(+), 172 deletions(-)
--
2.7.4
- [Qemu-devel] [PATCH 00/15] tcg field extract primitives,
Richard Henderson <=
- [Qemu-devel] [PATCH 01/15] tcg: Add field extraction primitives, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 03/15] tcg/aarch64: Implement field extraction opcodes, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 02/15] tcg: Minor adjustments to deposit expanders, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 04/15] tcg/arm: Move isa detection to tcg-target.h, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 05/15] tcg/arm: Implement field extraction opcodes, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 06/15] tcg/i386: Implement field extraction opcodes, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 07/15] tcg/mips: Implement field extraction opcodes, Richard Henderson, 2016/10/15
- [Qemu-devel] [PATCH 08/15] tcg/ppc: Implement field extraction opcodes, Richard Henderson, 2016/10/15