mirror of https://github.com/xqemu/xqemu.git
target-s390: Implement ADD LOGICAL WITH SIGNED IMMEDIATE
Signed-off-by: Richard Henderson <rth@twiddle.net>
This commit is contained in:
parent
3f4cb56a43
commit
e272b3ace3
|
@ -35,6 +35,11 @@
|
||||||
/* ADD LOGICAL IMMEDIATE */
|
/* ADD LOGICAL IMMEDIATE */
|
||||||
C(0xc20b, ALFI, RIL_a, EI, r1, i2_32u, new, r1_32, add, addu32)
|
C(0xc20b, ALFI, RIL_a, EI, r1, i2_32u, new, r1_32, add, addu32)
|
||||||
C(0xc20a, ALGFI, RIL_a, EI, r1, i2_32u, r1, 0, add, addu64)
|
C(0xc20a, ALGFI, RIL_a, EI, r1, i2_32u, r1, 0, add, addu64)
|
||||||
|
/* ADD LOGICAL WITH SIGNED IMMEDIATE */
|
||||||
|
C(0xeb6e, ALSI, SIY, GIE, m1_32u, i2, new, m1_32, add, addu32)
|
||||||
|
C(0xecda, ALHSIK, RIE_d, DO, r3, i2, new, r1_32, add, addu32)
|
||||||
|
C(0xeb7e, ALGSI, SIY, GIE, m1_64, i2, new, m1_64, add, addu64)
|
||||||
|
C(0xecdb, ALGHSIK, RIE_d, DO, r3, i2, r1, 0, add, addu64)
|
||||||
|
|
||||||
/* SUBTRACT */
|
/* SUBTRACT */
|
||||||
C(0x1b00, SR, RR_a, Z, r1, r2, new, r1_32, sub, subs32)
|
C(0x1b00, SR, RR_a, Z, r1, r2, new, r1_32, sub, subs32)
|
||||||
|
|
|
@ -5005,6 +5005,13 @@ static void in1_m1_32s(DisasContext *s, DisasFields *f, DisasOps *o)
|
||||||
tcg_gen_qemu_ld32s(o->in1, o->addr1, get_mem_index(s));
|
tcg_gen_qemu_ld32s(o->in1, o->addr1, get_mem_index(s));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void in1_m1_32u(DisasContext *s, DisasFields *f, DisasOps *o)
|
||||||
|
{
|
||||||
|
in1_la1(s, f, o);
|
||||||
|
o->in1 = tcg_temp_new_i64();
|
||||||
|
tcg_gen_qemu_ld32u(o->in1, o->addr1, get_mem_index(s));
|
||||||
|
}
|
||||||
|
|
||||||
static void in1_m1_64(DisasContext *s, DisasFields *f, DisasOps *o)
|
static void in1_m1_64(DisasContext *s, DisasFields *f, DisasOps *o)
|
||||||
{
|
{
|
||||||
in1_la1(s, f, o);
|
in1_la1(s, f, o);
|
||||||
|
|
Loading…
Reference in New Issue