]> git.ipfire.org Git - thirdparty/valgrind.git/commit
Bug 385412 - s390x: new non-vector z13 instructions not implemented
authorJulian Seward <jseward@acm.org>
Tue, 24 Jul 2018 08:10:40 +0000 (10:10 +0200)
committerJulian Seward <jseward@acm.org>
Tue, 24 Jul 2018 08:10:40 +0000 (10:10 +0200)
commitd44563c49e55f47016e23591f708c7aa57f7a098
treeec58a193d8dfb1f71e46ee21f24b815f33ac81c3
parent53cf5739b37b2ade551dee8d7ae8044f1ae58d72
Bug 385412 - s390x: new non-vector z13 instructions not implemented

Apart from instructions with vector operands, Valgrind does not implement the
additional z/Architecture instructions introduced with z13.

These are:
- load and zero rightmost byte (LZRF, LZRG);
- load logical and zero rightmost byte (LLZRGF);
- load halfword high immediate on condition (LOCHHI);
- load halfword immediate on condition (LOCHI, LOCGHI);
- load high on condition (LOCFHR, LOCFH);
- store high on condition (STOCFH);
- perform pseudorandom number operation (PPNO), with the functions
  PPNO-Query and PPNO-SHA-512-DRNG;
- load count to block boundary (LCBB).

Patches from Vadim Barkov (vbrkov@gmail.com), with coordination, testing
and format cleanups from Andreas Arnez (arnez@linux.ibm.com).
23 files changed:
.gitignore
VEX/priv/guest_s390_defs.h
VEX/priv/guest_s390_helpers.c
VEX/priv/guest_s390_toIR.c
VEX/priv/host_s390_defs.c
VEX/priv/host_s390_defs.h
VEX/priv/s390_defs.h
VEX/priv/s390_disasm.c
VEX/priv/s390_disasm.h
VEX/pub/libvex.h
VEX/pub/libvex_emnote.h
VEX/pub/libvex_s390x_common.h
coregrind/m_machine.c
none/tests/s390x/Makefile.am
none/tests/s390x/lsc2.c [new file with mode: 0644]
none/tests/s390x/lsc2.stderr.exp [new file with mode: 0644]
none/tests/s390x/lsc2.stdout.exp [new file with mode: 0644]
none/tests/s390x/lsc2.vgtest [new file with mode: 0644]
none/tests/s390x/ppno.c [new file with mode: 0644]
none/tests/s390x/ppno.stderr.exp [new file with mode: 0644]
none/tests/s390x/ppno.stdout.exp [new file with mode: 0644]
none/tests/s390x/ppno.vgtest [new file with mode: 0644]
tests/s390x_features.c