qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/12] Change helper declarations to use call flags
@ 2022-05-17 12:39 matheus.ferst
  2022-05-17 12:39 ` [PATCH 01/12] target/ppc: declare darn32/darn64 helpers with TCG_CALL_NO_RWG matheus.ferst
                   ` (11 more replies)
  0 siblings, 12 replies; 26+ messages in thread
From: matheus.ferst @ 2022-05-17 12:39 UTC (permalink / raw)
  To: qemu-devel, qemu-ppc
  Cc: clg, danielhb413, david, groug, richard.henderson, Matheus Ferst

From: Matheus Ferst <matheus.ferst@eldorado.org.br>

In our "PowerISA Vector/VSX instruction batch" patch series, rth noted[1]
that helpers that only access vector registers should be declared with
DEF_HELPER_FLAGS_* and TCG_CALL_NO_RWG. We fixed helpers in that series,
but there are older helpers that could use the same optimization.

Guided by the presence of env as the first argument, in patches 1~4 we
change helpers that do not have access to the cpu_env pointer to modify
any globals. Then, we change other helpers that receive cpu_env but do
not use it and apply the same fix, taking the opportunity to move them
to decodetree.

[1] https://lists.gnu.org/archive/html/qemu-ppc/2022-02/msg00568.html

Matheus Ferst (12):
  target/ppc: declare darn32/darn64 helpers with TCG_CALL_NO_RWG
  target/ppc: use TCG_CALL_NO_RWG in vector helpers without env
  target/ppc: use TCG_CALL_NO_RWG in BCD helpers
  target/ppc: use TCG_CALL_NO_RWG in VSX helpers without env
  target/ppc: Use TCG_CALL_NO_RWG_SE in fsel helper
  target/ppc: declare xscvspdpn helper with call flags
  target/ppc: declare xvxsigsp helper with call flags
  target/ppc: declare xxextractuw and xxinsertw helpers with call flags
  target/ppc: introduce do_va_helper
  target/ppc: declare vmsum[um]bm helpers with call flags
  target/ppc: declare vmsumuhm helper with call flags
  target/ppc: declare vmsumshm helper with call flags

 target/ppc/fpu_helper.c             |  19 ++-
 target/ppc/helper.h                 | 226 ++++++++++++++--------------
 target/ppc/insn32.decode            |  28 +++-
 target/ppc/int_helper.c             |  22 +--
 target/ppc/translate/fp-impl.c.inc  |  30 +++-
 target/ppc/translate/fp-ops.c.inc   |   1 -
 target/ppc/translate/vmx-impl.c.inc |  62 ++++----
 target/ppc/translate/vmx-ops.c.inc  |   4 -
 target/ppc/translate/vsx-impl.c.inc | 103 ++++++++-----
 target/ppc/translate/vsx-ops.c.inc  |   4 -
 10 files changed, 282 insertions(+), 217 deletions(-)

-- 
2.25.1



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

end of thread, other threads:[~2022-05-17 17:44 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-17 12:39 [PATCH 00/12] Change helper declarations to use call flags matheus.ferst
2022-05-17 12:39 ` [PATCH 01/12] target/ppc: declare darn32/darn64 helpers with TCG_CALL_NO_RWG matheus.ferst
2022-05-17 16:30   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 02/12] target/ppc: use TCG_CALL_NO_RWG in vector helpers without env matheus.ferst
2022-05-17 16:31   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 03/12] target/ppc: use TCG_CALL_NO_RWG in BCD helpers matheus.ferst
2022-05-17 16:32   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 04/12] target/ppc: use TCG_CALL_NO_RWG in VSX helpers without env matheus.ferst
2022-05-17 16:32   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 05/12] target/ppc: Use TCG_CALL_NO_RWG_SE in fsel helper matheus.ferst
2022-05-17 16:43   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 06/12] target/ppc: declare xscvspdpn helper with call flags matheus.ferst
2022-05-17 16:50   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 07/12] target/ppc: declare xvxsigsp " matheus.ferst
2022-05-17 17:30   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 08/12] target/ppc: declare xxextractuw and xxinsertw helpers " matheus.ferst
2022-05-17 17:32   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 09/12] target/ppc: introduce do_va_helper matheus.ferst
2022-05-17 17:33   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 10/12] target/ppc: declare vmsum[um]bm helpers with call flags matheus.ferst
2022-05-17 17:34   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 11/12] target/ppc: declare vmsumuhm helper " matheus.ferst
2022-05-17 17:37   ` Richard Henderson
2022-05-17 17:38   ` Richard Henderson
2022-05-17 12:39 ` [PATCH 12/12] target/ppc: declare vmsumshm " matheus.ferst
2022-05-17 17:40   ` 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).