Similar in spirit to the already present gen_(ld,st)(q,o)_env_A0, it will prove useful in later commits for smaller-sized vector loads.
Reviewed-by: Richard Henderson <richard.hender...@linaro.org> Signed-off-by: Jan Bobek <jan.bo...@gmail.com> --- target/i386/translate.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/target/i386/translate.c b/target/i386/translate.c index c5ec309fe2..258351fce3 100644 --- a/target/i386/translate.c +++ b/target/i386/translate.c @@ -2652,6 +2652,18 @@ static void gen_jmp(DisasContext *s, target_ulong eip) gen_jmp_tb(s, eip, 0); } +static inline void gen_ldd_env_A0(DisasContext *s, int offset) +{ + tcg_gen_qemu_ld_i32(s->tmp2_i32, s->A0, s->mem_index, MO_LEUL); + tcg_gen_st_i32(s->tmp2_i32, cpu_env, offset); +} + +static inline void gen_std_env_A0(DisasContext *s, int offset) +{ + tcg_gen_ld_i32(s->tmp2_i32, cpu_env, offset); + tcg_gen_qemu_st_i32(s->tmp2_i32, s->A0, s->mem_index, MO_LEUL); +} + static inline void gen_ldq_env_A0(DisasContext *s, int offset) { tcg_gen_qemu_ld_i64(s->tmp1_i64, s->A0, s->mem_index, MO_LEQ); -- 2.20.1