mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-07-23 11:28:30 +00:00
target/arm/translate: Synchronize with qemu
Backports a few other missing pieces from mainline qemu.
This commit is contained in:
parent
5b062dacf2
commit
bf6dfeb175
|
@ -11186,7 +11186,7 @@ static void disas_thumb2_insn(DisasContext *s, uint32_t insn)
|
||||||
gen_aa32_st32(s, tmp, addr, get_mem_index(s));
|
gen_aa32_st32(s, tmp, addr, get_mem_index(s));
|
||||||
tcg_temp_free_i32(tcg_ctx, tmp);
|
tcg_temp_free_i32(tcg_ctx, tmp);
|
||||||
}
|
}
|
||||||
if (insn & (1 << 21)) {
|
if (wback) {
|
||||||
/* Base writeback. */
|
/* Base writeback. */
|
||||||
tcg_gen_addi_i32(tcg_ctx, addr, addr, offset - 4);
|
tcg_gen_addi_i32(tcg_ctx, addr, addr, offset - 4);
|
||||||
store_reg(s, rn, addr);
|
store_reg(s, rn, addr);
|
||||||
|
@ -11440,7 +11440,7 @@ static void disas_thumb2_insn(DisasContext *s, uint32_t insn)
|
||||||
if (loaded_base) {
|
if (loaded_base) {
|
||||||
store_reg(s, rn, loaded_var);
|
store_reg(s, rn, loaded_var);
|
||||||
}
|
}
|
||||||
if (insn & (1 << 21)) {
|
if (wback) {
|
||||||
/* Base register writeback. */
|
/* Base register writeback. */
|
||||||
if (insn & (1 << 24)) {
|
if (insn & (1 << 24)) {
|
||||||
tcg_gen_addi_i32(tcg_ctx, addr, addr, 0-offset);
|
tcg_gen_addi_i32(tcg_ctx, addr, addr, 0-offset);
|
||||||
|
|
Loading…
Reference in a new issue