On Wed, 18 Sep 2019 17:28:53 +0200
David Hildenbrand <david@redhat.com> wrote:
> This pull request is not for master.
>
> Hi Conny,
>
> The following changes since commit f8c3db33a5e863291182f8862ddf81618a7c6194:
>
> target/sparc: Switch to do_transaction_failed() hook (2019-09-17 12:01:00 +0100)
>
> are available in the Git repository at:
>
> https://github.com/davidhildenbrand/qemu.git tags/s390x-tcg-2019-09-18
>
> for you to fetch changes up to ea83ebe1503e7496db3358d6a65d734ac4510424:
>
> tests/tcg: target/s390x: Test MVO (2019-09-18 16:10:55 +0200)
>
> ----------------------------------------------------------------
> Fix a bunch of BUGs in the mem-helpers (including the MVC instruction),
> especially, to make them behave correctly on faults.
>
> ----------------------------------------------------------------
> David Hildenbrand (29):
> s390x/tcg: Reset exception_index to -1 instead of 0
> s390x/tcg: MVCL: Zero out unused bits of address
> s390x/tcg: MVCL: Detect destructive overlaps
> s390x/tcg: MVCL: Process max 4k bytes at a time
> s390x/tcg: MVC: Increment the length once
> s390x/tcg: MVC: Use is_destructive_overlap()
> s390x/tcg: MVPG: Check for specification exceptions
> s390x/tcg: MVPG: Properly wrap the addresses
> s390x/tcg: MVCLU/MVCLE: Process max 4k bytes at a time
> s390x/tcg: MVCS/MVCP: Check for special operation exceptions
> s390x/tcg: MVCOS: Lengths are 32 bit in 24/31-bit mode
> s390x/tcg: MVCS/MVCP: Properly wrap the length
> s390x/tcg: MVST: Check for specification exceptions
> s390x/tcg: MVST: Fix storing back the addresses to registers
> s390x/tcg: Always use MMU_USER_IDX for CONFIG_USER_ONLY
> s390x/tcg: Fault-safe memset
> s390x/tcg: Fault-safe memmove
> s390x/tcg: MVCS/MVCP: Use access_memmove()
> s390x/tcg: MVC: Fault-safe handling on destructive overlaps
> s390x/tcg: MVCLU: Fault-safe handling
> s390x/tcg: OC: Fault-safe handling
> s390x/tcg: XC: Fault-safe handling
> s390x/tcg: NC: Fault-safe handling
> s390x/tcg: MVCIN: Fault-safe handling
> s390x/tcg: MVN: Fault-safe handling
> s390x/tcg: MVZ: Fault-safe handling
> s390x/tcg: MVST: Fault-safe handling
> s390x/tcg: MVO: Fault-safe handling
> tests/tcg: target/s390x: Test MVO
>
> target/s390x/cpu.h | 4 +
> target/s390x/helper.h | 2 +-
> target/s390x/insn-data.def | 2 +-
> target/s390x/mem_helper.c | 743 ++++++++++++++++++++++----------
> target/s390x/translate.c | 12 +-
> tests/tcg/s390x/Makefile.target | 1 +
> tests/tcg/s390x/mvo.c | 25 ++
> 7 files changed, 564 insertions(+), 225 deletions(-)
> create mode 100644 tests/tcg/s390x/mvo.c
>
Thanks, pulled.