From: David Hildenbrand <da...@redhat.com> Such shifts are usually used to easily extract the PSW KEY from the PSW mask, so let's avoid the confusing offset of 4.
Reviewed-by: Thomas Huth <th...@redhat.com> Signed-off-by: David Hildenbrand <da...@redhat.com> Message-Id: <20170614133819.18480-2-da...@redhat.com> Signed-off-by: Richard Henderson <r...@twiddle.net> --- target/s390x/cpu.h | 2 +- target/s390x/translate.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h index a4028fb..532a4a0 100644 --- a/target/s390x/cpu.h +++ b/target/s390x/cpu.h @@ -315,7 +315,7 @@ void s390x_cpu_debug_excp_handler(CPUState *cs); #define PSW_MASK_IO 0x0200000000000000ULL #define PSW_MASK_EXT 0x0100000000000000ULL #define PSW_MASK_KEY 0x00F0000000000000ULL -#define PSW_SHIFT_KEY 56 +#define PSW_SHIFT_KEY 52 #define PSW_MASK_MCHECK 0x0004000000000000ULL #define PSW_MASK_WAIT 0x0002000000000000ULL #define PSW_MASK_PSTATE 0x0001000000000000ULL diff --git a/target/s390x/translate.c b/target/s390x/translate.c index 48cee25..4773a10 100644 --- a/target/s390x/translate.c +++ b/target/s390x/translate.c @@ -3752,7 +3752,7 @@ static ExitStatus op_spka(DisasContext *s, DisasOps *o) { check_privileged(s); tcg_gen_shri_i64(o->in2, o->in2, 4); - tcg_gen_deposit_i64(psw_mask, psw_mask, o->in2, PSW_SHIFT_KEY - 4, 4); + tcg_gen_deposit_i64(psw_mask, psw_mask, o->in2, PSW_SHIFT_KEY, 4); return NO_EXIT; } -- 2.9.4