qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
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

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