diff options
| author | David Hildenbrand | 2019-09-02 09:49:46 +0200 |
|---|---|---|
| committer | David Hildenbrand | 2019-09-23 09:28:29 +0200 |
| commit | bed04a2b9caec96cf339980b64d2939ee9541328 (patch) | |
| tree | 4c08be0bff0b28614357a8574c837f631a8f2bff /target | |
| parent | Merge remote-tracking branch 'remotes/cleber/tags/python-next-pull-request' i... (diff) | |
| download | qemu-bed04a2b9caec96cf339980b64d2939ee9541328.tar.gz qemu-bed04a2b9caec96cf339980b64d2939ee9541328.tar.xz qemu-bed04a2b9caec96cf339980b64d2939ee9541328.zip | |
s390x/tcg: Reset exception_index to -1 instead of 0
We use the marker "-1" for "no exception". s390_cpu_do_interrupt() might
get confused by that.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: David Hildenbrand <david@redhat.com>
Diffstat (limited to 'target')
| -rw-r--r-- | target/s390x/mem_helper.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/target/s390x/mem_helper.c b/target/s390x/mem_helper.c index 29fcce426e..39ee9b3175 100644 --- a/target/s390x/mem_helper.c +++ b/target/s390x/mem_helper.c @@ -1747,7 +1747,7 @@ uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2) if (env->int_pgm_code == PGM_PROTECTION) { /* retry if reading is possible */ - cs->exception_index = 0; + cs->exception_index = -1; if (!s390_cpu_virt_mem_check_read(cpu, a1, 0, 1)) { /* Fetching permitted; storing not permitted */ return 1; @@ -1757,7 +1757,7 @@ uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2) switch (env->int_pgm_code) { case PGM_PROTECTION: /* Fetching not permitted; storing not permitted */ - cs->exception_index = 0; + cs->exception_index = -1; return 2; case PGM_ADDRESSING: case PGM_TRANS_SPEC: @@ -1767,7 +1767,7 @@ uint32_t HELPER(tprot)(CPUS390XState *env, uint64_t a1, uint64_t a2) } /* Translation not available */ - cs->exception_index = 0; + cs->exception_index = -1; return 3; } |
