OSDN Git Service

s390x/tcg: Introduce tcg_s390_vector_exception()
authorDavid Hildenbrand <david@redhat.com>
Fri, 22 Feb 2019 10:19:48 +0000 (11:19 +0100)
committerDavid Hildenbrand <david@redhat.com>
Fri, 7 Jun 2019 12:53:25 +0000 (14:53 +0200)
commit9be6fa99d6b1371ced6a9b57c32daec86733cd0a
treed1922ea6cd6eadd8593e093d51daacbc50fc960e
parente19a61eb514dbf7c9a725c7539ce3b6166cd6ac4
s390x/tcg: Introduce tcg_s390_vector_exception()

Handling is similar to data exceptions, however we can always store the
VXC into the lowore and the FPC:

z14 PoP, 6-20, "Vector-Exception Code"
    When a vector-processing exception causes a pro-
    gram interruption, a vector-exception code (VXC) is
    stored at location 147, and zeros are stored at loca-
    tions 144-146. The VXC is also placed in the DXC
    field of the floating-point-control (FPC) register if bit
    45 of control register 0 is one. When bit 45 of control
    register 0 is zero and bit 46 of control register 0 is
    one, the DXC field of the FPC register and the con-
    tents of storage at location 147 are unpredictable.

Signed-off-by: David Hildenbrand <david@redhat.com>
target/s390x/cpu.h
target/s390x/excp_helper.c
target/s390x/tcg_s390x.h