qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Aurelien Jarno <aurelien@aurel32.net>
To: qemu-devel@nongnu.org
Cc: Aurelien Jarno <aurelien@aurel32.net>
Subject: [Qemu-devel] [PATCH v2 00/29] target/s390x: fix, improve and implement some more instructions
Date: Mon, 29 May 2017 21:24:11 +0200	[thread overview]
Message-ID: <20170529192440.5990-1-aurelien@aurel32.net> (raw)

This patchset tries to improve the s390x emulation by fixing and
improving some instructions. It implement some more instructions, from
the zArchitecture base and from the Extended-Translation Facility 2. The
last patch updates the maximum TCG CPU to z800, as the ETF2 and
Long-Displacement Facility are now both fully implemented.

This patch series is based on the s390x unwind and execute patches
from Richard Henderson and the qemu cpu_models patch from Thomas Huth.
It includes feedback from both.

v1 -> v2:
 - add a patch to improve IPTE
 - implement local-TLB-clearing in IPTE
 - use tcg_gen_atomic_xchg_i32 in TEST AND SET
 - use gen_op_movi_cc in TEST ADDRESSING MODE
 - use helper_atomic_ldo_be_mmu in LOAD PAIR FROM QUADWORD
 - use helper_atomic_sto_be_mmu in STORE PAIR TO QUADWORD
 - add a patch to implement COMPARE AND SIGNAL
 - rename dest and src into src1 and src3 and check that r1 & r3 are even
   in COMPARE LOGICAL LONG EXTENDED
 - check that r1 & r2 are even in COMPARE LOGICAL LONG
 - check that r1 & r3 are even in COMPARE LOGICAL LONG UNICODE
 - move the adj_len_to_page patch before MVCL/MVCLE changes and simplify
   the expression a bit
 - fix indentation in MOVE LONG UNICODE
 - rebase the cpu model upgrade to z800 onto the qemu cpu_models patch
   from Thomas Huth and use s390_find_cpu_def to get the z800 model.

Aurelien Jarno (29):
  target/s390x: remove dead code in translate.c
  target/s390x: remove some Linux assumptions from IPTE
  target/s390x: implement local-TLB-clearing in IPTE
  target/s390x: implement TEST AND SET
  target/s390x: implement TEST ADDRESSING MODE
  target/s390x: implement PACK
  target/s390x: implement LOAD PAIR FROM QUADWORD
  target/s390x: implement STORE PAIR TO QUADWORD
  target/s390x: implement COMPARE AND SIGNAL
  target/s390x: implement MOVE INVERSE
  target/s390x: implement MOVE NUMERICS
  target/s390x: implement MOVE WITH OFFSET
  target/s390x: implement MOVE ZONES
  target/s390x: improve 24-bit and 31-bit addresses read
  target/s390x: improve 24-bit and 31-bit addresses write
  target/s390x: improve 24-bit and 31-bit lengths read/write
  target/s390x: fix COMPARE LOGICAL LONG EXTENDED
  target/s390x: implement COMPARE LOGICAL LONG
  target/s390x: fix adj_len_to_page
  target/s390x: improve MOVE LONG and MOVE LONG EXTENDED
  target/s390x: implement COMPARE LOGICAL LONG UNICODE
  target/s390x: implement MOVE LONG UNICODE
  target/s390x: implement PACK ASCII
  target/s390x: implement PACK UNICODE
  target/s390x: implement UNPACK ASCII
  target/s390x: implement UNPACK UNICODE
  target/s390x: implement TEST DECIMAL
  target/s390x: implement TRANSLATE ONE/TWO TO ONE/TWO
  target/s390x: update maximum TCG model to z800

 target/s390x/cpu.h         |   2 +
 target/s390x/cpu_models.c  |  12 +-
 target/s390x/fpu_helper.c  |  27 ++
 target/s390x/helper.h      |  21 +-
 target/s390x/insn-data.def |  57 ++++
 target/s390x/mem_helper.c  | 747 +++++++++++++++++++++++++++++++++++++--------
 target/s390x/misc_helper.c |   4 +-
 target/s390x/mmu_helper.c  |   4 +-
 target/s390x/translate.c   | 318 +++++++++++++++++--
 9 files changed, 1036 insertions(+), 156 deletions(-)

-- 
2.11.0

             reply	other threads:[~2017-05-29 19:24 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-29 19:24 Aurelien Jarno [this message]
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 01/29] target/s390x: remove dead code in translate.c Aurelien Jarno
2017-05-29 20:47   ` Philippe Mathieu-Daudé
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 02/29] target/s390x: remove some Linux assumptions from IPTE Aurelien Jarno
2017-05-30  8:20   ` Thomas Huth
2017-05-30 11:19     ` Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 03/29] target/s390x: implement local-TLB-clearing in IPTE Aurelien Jarno
2017-05-30  9:01   ` Thomas Huth
2017-05-30 11:18     ` Aurelien Jarno
2017-05-30 12:03       ` Thomas Huth
2017-05-30 19:59   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 04/29] target/s390x: implement TEST AND SET Aurelien Jarno
2017-05-30 20:01   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 05/29] target/s390x: implement TEST ADDRESSING MODE Aurelien Jarno
2017-05-30 20:01   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 06/29] target/s390x: implement PACK Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 07/29] target/s390x: implement LOAD PAIR FROM QUADWORD Aurelien Jarno
2017-05-30 20:03   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 08/29] target/s390x: implement STORE PAIR TO QUADWORD Aurelien Jarno
2017-05-30 20:03   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 09/29] target/s390x: implement COMPARE AND SIGNAL Aurelien Jarno
2017-05-30 20:08   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 10/29] target/s390x: implement MOVE INVERSE Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 11/29] target/s390x: implement MOVE NUMERICS Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 12/29] target/s390x: implement MOVE WITH OFFSET Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 13/29] target/s390x: implement MOVE ZONES Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 14/29] target/s390x: improve 24-bit and 31-bit addresses read Aurelien Jarno
2017-05-30  9:14   ` Thomas Huth
2017-05-30 20:08   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 15/29] target/s390x: improve 24-bit and 31-bit addresses write Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 16/29] target/s390x: improve 24-bit and 31-bit lengths read/write Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 17/29] target/s390x: fix COMPARE LOGICAL LONG EXTENDED Aurelien Jarno
2017-05-30 20:11   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 18/29] target/s390x: implement COMPARE LOGICAL LONG Aurelien Jarno
2017-05-30 20:12   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 19/29] target/s390x: fix adj_len_to_page Aurelien Jarno
2017-05-30 20:12   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 20/29] target/s390x: improve MOVE LONG and MOVE LONG EXTENDED Aurelien Jarno
2017-05-30 20:14   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 21/29] target/s390x: implement COMPARE LOGICAL LONG UNICODE Aurelien Jarno
2017-05-30 20:15   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 22/29] target/s390x: implement MOVE " Aurelien Jarno
2017-05-30 20:15   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 23/29] target/s390x: implement PACK ASCII Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 24/29] target/s390x: implement PACK UNICODE Aurelien Jarno
2017-05-30 20:16   ` Richard Henderson
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 25/29] target/s390x: implement UNPACK ASCII Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 26/29] target/s390x: implement UNPACK UNICODE Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 27/29] target/s390x: implement TEST DECIMAL Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 28/29] target/s390x: implement TRANSLATE ONE/TWO TO ONE/TWO Aurelien Jarno
2017-05-29 19:24 ` [Qemu-devel] [PATCH v2 29/29] target/s390x: update maximum TCG model to z800 Aurelien Jarno
2017-05-30  9:18   ` Thomas Huth
2017-05-30 20:17   ` 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=20170529192440.5990-1-aurelien@aurel32.net \
    --to=aurelien@aurel32.net \
    --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).