aboutsummaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorUlrich Weigand <ulrich.weigand@de.ibm.com>2021-06-30 12:50:58 +0200
committerCornelia Huck <cohuck@redhat.com>2021-07-07 13:57:25 +0200
commit28761057043aa234b33a3301b39c8707984bb0a0 (patch)
treec738cc6a4c64358a207caa3231aea105fca4cfc1 /python
parentfb4a08121695a88acefcbcd86f1376df079eefee (diff)
downloadqemu-28761057043aa234b33a3301b39c8707984bb0a0.zip
qemu-28761057043aa234b33a3301b39c8707984bb0a0.tar.gz
qemu-28761057043aa234b33a3301b39c8707984bb0a0.tar.bz2
target/s390x: Fix CC set by CONVERT TO FIXED/LOGICAL
The FP-to-integer conversion instructions need to set CC 3 whenever a "special case" occurs; this is the case whenever the instruction also signals the IEEE invalid exception. (See e.g. figure 19-18 in the Principles of Operation.) However, qemu currently will set CC 3 only in the case where the input was a NaN. This is indeed one of the special cases, but there are others, most notably the case where the input is out of range of the target data type. This patch fixes the problem by switching these instructions to the "static" CC method and computing the correct result directly in the helper. (It cannot be re-computed later as the information about the invalid exception is no longer available.) This fixes a bug observed when running the wasmtime test suite under the s390x-linux-user target. Signed-off-by: Ulrich Weigand <ulrich.weigand@de.ibm.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20210630105058.GA29130@oc3748833570.ibm.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'python')
0 files changed, 0 insertions, 0 deletions