qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/6] tcg: Restrict tcg_out_op() to arrays of TCG_MAX_OP_ARGS elements
@ 2021-01-13 17:24 Philippe Mathieu-Daudé
  2021-01-13 17:24 ` [PATCH v2 1/6] tcg/arm: Hoist common argument loads in tcg_out_op() Philippe Mathieu-Daudé
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-13 17:24 UTC (permalink / raw)
  To: qemu-devel
  Cc: Thomas Huth, Huacai Chen, qemu-riscv, Stefan Weil, Cornelia Huck,
	Richard Henderson, Aleksandar Rikalo, Philippe Mathieu-Daudé,
	qemu-s390x, qemu-arm, Alistair Francis, Palmer Dabbelt,
	Miroslav Rezanina, Aurelien Jarno

Since v1:
- Redo the whole change, only hoisting when variable is used 10+ times
- Remove goto statement/label
- Take care of the following pattern:

    case INDEX_op_bswap64_i64:
        a2 =3D TCG_REG_R0;
        if (a0 =3D=3D a1) {
            a0 =3D TCG_REG_R0;
            a2 =3D a1;
        }
        ...
        if (a0 =3D=3D 0) {
            tcg_out_mov(s, TCG_TYPE_REG, args[0], a0);
                                         ^^^^ take original a[0]
        }

Attempt to fix the warning reported by Miroslav using GCC 10:
https://www.mail-archive.com/qemu-devel@nongnu.org/msg771520.html

Diff with v1:

Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respective=
ly

001/6:[0063] [FC] 'tcg/arm: Hoist common argument loads in tcg_out_op()'
002/6:[down] 'tcg/arm: Replace goto statement by fall through comment'
003/6:[0190] [FC] 'tcg/ppc: Hoist common argument loads in tcg_out_op()'
004/6:[0136] [FC] 'tcg/s390: Hoist common argument loads in tcg_out_op()'
005/6:[----] [--] 'tcg: Restrict tcg_out_op() to arrays of TCG_MAX_OP_ARGS el=
ements'
006/6:[----] [--] 'tcg: Restrict tcg_out_vec_op() to arrays of TCG_MAX_OP_ARG=
S elements'

Philippe Mathieu-Daud=C3=A9 (6):
  tcg/arm: Hoist common argument loads in tcg_out_op()
  tcg/arm: Replace goto statement by fall through comment
  tcg/ppc: Hoist common argument loads in tcg_out_op()
  tcg/s390: Hoist common argument loads in tcg_out_op()
  tcg: Restrict tcg_out_op() to arrays of TCG_MAX_OP_ARGS elements
  tcg: Restrict tcg_out_vec_op() to arrays of TCG_MAX_OP_ARGS elements

 tcg/tcg.c                    |  19 +--
 tcg/aarch64/tcg-target.c.inc |   3 +-
 tcg/arm/tcg-target.c.inc     | 196 +++++++++++++++----------------
 tcg/i386/tcg-target.c.inc    |   6 +-
 tcg/mips/tcg-target.c.inc    |   3 +-
 tcg/ppc/tcg-target.c.inc     | 191 ++++++++++++++----------------
 tcg/riscv/tcg-target.c.inc   |   3 +-
 tcg/s390/tcg-target.c.inc    | 222 +++++++++++++++++------------------
 tcg/tci/tcg-target.c.inc     |   5 +-
 9 files changed, 311 insertions(+), 337 deletions(-)

--=20
2.26.2



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

end of thread, other threads:[~2021-01-14 10:01 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-13 17:24 [PATCH v2 0/6] tcg: Restrict tcg_out_op() to arrays of TCG_MAX_OP_ARGS elements Philippe Mathieu-Daudé
2021-01-13 17:24 ` [PATCH v2 1/6] tcg/arm: Hoist common argument loads in tcg_out_op() Philippe Mathieu-Daudé
2021-01-13 17:24 ` [PATCH v2 2/6] tcg/arm: Replace goto statement by fall through comment Philippe Mathieu-Daudé
2021-01-13 17:24 ` [PATCH v2 3/6] tcg/ppc: Hoist common argument loads in tcg_out_op() Philippe Mathieu-Daudé
2021-01-14  0:28   ` Richard Henderson
2021-01-14  9:59     ` Philippe Mathieu-Daudé
2021-01-13 17:24 ` [PATCH v2 4/6] tcg/s390: " Philippe Mathieu-Daudé
2021-01-13 17:24 ` [PATCH v2 5/6] tcg: Restrict tcg_out_op() to arrays of TCG_MAX_OP_ARGS elements Philippe Mathieu-Daudé
2021-01-13 17:24 ` [PATCH v2 6/6] tcg: Restrict tcg_out_vec_op() " Philippe Mathieu-Daudé

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