From: Richard Henderson <rth@twiddle.net>
To: qemu-devel@nongnu.org
Cc: mark.cave-ayland@ilande.co.uk, aurelien@aurel32.net
Subject: [Qemu-devel] [PATCH v2 00/14] tcg: Improve sparc register windows
Date: Thu, 17 Dec 2015 11:56:32 -0800 [thread overview]
Message-ID: <1450382206-5149-1-git-send-email-rth@twiddle.net> (raw)
This is a two year old patch set that I revived just before the 2.5 cutoff;
I decided against re-posting it then, but now that 2.6 development is open,
I think it's time to try again.
The Idea is to let TCG know that the 24 windowed registers are accessed
via a different base register than TCG_AREG0. Moreover, the base register
by which they are accessed is itself loaded via TCG_AREG0. A simple bit
of recursion in the tcg register allocation functions that allows this
to happen.
We were able to do some benchmarking with this patch set during the
summer and fall; it's somewhere on the mailing list if you want to go
looking.
r~
Richard Henderson (14):
tcg: Change tcg_global_mem_new_* to take a TCGv_ptr
tcg: Change ts->mem_reg to ts->mem_base
tcg: Tidy temporary allocation
tcg: More use of TCGReg where appropriate
tcg: Remove tcg_get_arg_str_i32/64
tcg: Change reg_to_temp to TCGTemp pointer
tcg: Change temp_dead argument to TCGTemp
tcg: Change temp_sync argument to TCGTemp
tcg: Change temp_save argument to TCGTemp
tcg: Introduce temp_load
tcg: Implement indirect memory registers
tcg: Allocate indirect_base temporaries in a different order
target-sparc: Tidy global register initialization
target-sparc: Use global registers for the register window
target-alpha/translate.c | 8 +-
target-arm/translate-a64.c | 6 +-
target-arm/translate.c | 18 +-
target-cris/translate.c | 24 +-
target-cris/translate_v10.c | 82 +++---
target-i386/translate.c | 10 +-
target-lm32/translate.c | 24 +-
target-m68k/translate.c | 30 +-
target-microblaze/translate.c | 18 +-
target-mips/translate.c | 25 +-
target-moxie/translate.c | 8 +-
target-openrisc/translate.c | 26 +-
target-ppc/translate.c | 44 +--
target-s390x/translate.c | 18 +-
target-sh4/translate.c | 48 ++--
target-sparc/translate.c | 192 ++++++-------
target-tilegx/translate.c | 4 +-
target-tricore/translate.c | 22 +-
target-unicore32/translate.c | 2 +-
target-xtensa/translate.c | 10 +-
tcg/tcg.c | 639 +++++++++++++++++++++---------------------
tcg/tcg.h | 51 ++--
22 files changed, 670 insertions(+), 639 deletions(-)
--
2.5.0
next reply other threads:[~2015-12-17 19:56 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-17 19:56 Richard Henderson [this message]
-- strict thread matches above, loose matches on Subject: below --
2015-12-17 19:58 [Qemu-devel] [PATCH v2 00/14] tcg: Improve sparc register windows Richard Henderson
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=1450382206-5149-1-git-send-email-rth@twiddle.net \
--to=rth@twiddle.net \
--cc=aurelien@aurel32.net \
--cc=mark.cave-ayland@ilande.co.uk \
--cc=qemu-devel@nongnu.org \
/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).