mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2025-01-09 14:45:34 +00:00
target/arm: Fix PC test for LDM (exception return)
Found by inspection: Rn is the base register against which the load began; I is the register within the mask being processed. The exception return should of course be processed from the loaded PC. Backports commit 9d090d17234058f55c3c439d285db78c94d7d4de from qemu
This commit is contained in:
parent
7a6f61057b
commit
fa70a2bc69
|
@ -10800,7 +10800,7 @@ static void disas_arm_insn(DisasContext *s, unsigned int insn)
|
|||
} else if (i == rn) {
|
||||
loaded_var = tmp;
|
||||
loaded_base = 1;
|
||||
} else if (rn == 15 && exc_return) {
|
||||
} else if (i == 15 && exc_return) {
|
||||
store_pc_exc_ret(s, tmp);
|
||||
} else {
|
||||
store_reg_from_load(s, i, tmp);
|
||||
|
|
Loading…
Reference in a new issue