qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v4 0/9] s390x: instruction flags and AFP registers f


From: David Hildenbrand
Subject: [Qemu-devel] [PATCH v4 0/9] s390x: instruction flags and AFP registers for TCG
Date: Thu, 27 Sep 2018 15:02:54 +0200

I wanted to add AFP-register control related checks for a long time.
However, doing these checks in each and every relevant handler is ugly.

As I will need similar checks for vector instructions (yes, I'm looking into
that but it might take some time), I decided to introduce per-instruction
flags, that allow to to check such "instruction properties" globally.
Tagging e.g. privileged instructions that way turns out quite nice.

Of course, while at it some fixes and cleanups.

v3 -> v4
- Use deposit32() and simplify one assert in patch #2
- Rename IF_HFP[123] to IF_AFP[123] in patch #5 and #6
- Moved comment fixup from patch #8 to patch #7 (again :/)
- Added r-bs

v2 -> v3:
- Moved comment fixup from patch #8 to patch #7
- Added an include to kvm.c in patch #1 to make it compile
- Added r-bs

v1 -> v2:
- added "s390x: move tcg_s390_program_interrupt() into TCG code and ..."
- Some checkpatch changes lead to some false positives in the last two
  patches ... to work around them, I dropped some unnecessary parantheses.

David Hildenbrand (9):
  s390x: move tcg_s390_program_interrupt() into TCG code and mark it
    noreturn
  s390x/tcg: factor out and fix DATA exception injection
  s390x/tcg: store in the TB flags if AFP is enabled
  s390x/tcg: support flags for instructions
  s390x/tcg: add instruction flags for floating point instructions
  s390x/tcg: check for AFP-register, BFP and DFP data exceptions
  s390x/tcg: handle privileged instructions via flags
  s390x/tcg: fix FP register pair checks
  s390x/tcg: refactor specification checking

 target/s390x/cpu.h         |   9 +
 target/s390x/excp_helper.c |  36 ++++
 target/s390x/fpu_helper.c  |  13 +-
 target/s390x/helper.h      |   1 +
 target/s390x/insn-data.def | 395 +++++++++++++++++++------------------
 target/s390x/interrupt.c   |  15 +-
 target/s390x/kvm.c         |   4 +-
 target/s390x/tcg-stub.c    |  10 +
 target/s390x/tcg_s390x.h   |   4 +
 target/s390x/translate.c   | 197 ++++++++----------
 10 files changed, 344 insertions(+), 340 deletions(-)

-- 
2.17.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]