mirror of https://github.com/proxmox/mirror_qemu
target/s390x: implement TEST ADDRESSING MODE
Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Message-Id: <20170531220129.27724-6-aurelien@aurel32.net> Signed-off-by: Richard Henderson <rth@twiddle.net>master
parent
6699adfc18
commit
0c0974d785
|
@ -810,6 +810,9 @@
|
||||||
/* SUPERVISOR CALL */
|
/* SUPERVISOR CALL */
|
||||||
C(0x0a00, SVC, I, Z, 0, 0, 0, 0, svc, 0)
|
C(0x0a00, SVC, I, Z, 0, 0, 0, 0, svc, 0)
|
||||||
|
|
||||||
|
/* TEST ADDRESSING MODE */
|
||||||
|
C(0x010b, TAM, E, Z, 0, 0, 0, 0, tam, 0)
|
||||||
|
|
||||||
/* TEST AND SET */
|
/* TEST AND SET */
|
||||||
C(0x9300, TS, S, Z, 0, a2, 0, 0, ts, 0)
|
C(0x9300, TS, S, Z, 0, a2, 0, 0, ts, 0)
|
||||||
|
|
||||||
|
|
|
@ -4068,6 +4068,16 @@ static ExitStatus op_svc(DisasContext *s, DisasOps *o)
|
||||||
return EXIT_NORETURN;
|
return EXIT_NORETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static ExitStatus op_tam(DisasContext *s, DisasOps *o)
|
||||||
|
{
|
||||||
|
int cc = 0;
|
||||||
|
|
||||||
|
cc |= (s->tb->flags & FLAG_MASK_64) ? 2 : 0;
|
||||||
|
cc |= (s->tb->flags & FLAG_MASK_32) ? 1 : 0;
|
||||||
|
gen_op_movi_cc(s, cc);
|
||||||
|
return NO_EXIT;
|
||||||
|
}
|
||||||
|
|
||||||
static ExitStatus op_tceb(DisasContext *s, DisasOps *o)
|
static ExitStatus op_tceb(DisasContext *s, DisasOps *o)
|
||||||
{
|
{
|
||||||
gen_helper_tceb(cc_op, cpu_env, o->in1, o->in2);
|
gen_helper_tceb(cc_op, cpu_env, o->in1, o->in2);
|
||||||
|
|
Loading…
Reference in New Issue