mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 16:23:55 -06:00
target-arm: Make elr_el1 an array
No functional change. Prepares for future additions of the EL2 and 3 versions of this reg. Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com> Message-id: 1400980132-25949-7-git-send-email-edgar.iglesias@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
f79fbf39e2
commit
6947f05978
6 changed files with 11 additions and 10 deletions
|
@ -406,7 +406,7 @@ void HELPER(exception_return)(CPUARMState *env)
|
|||
env->regs[i] = env->xregs[i];
|
||||
}
|
||||
|
||||
env->regs[15] = env->elr_el1 & ~0x1;
|
||||
env->regs[15] = env->elr_el[1] & ~0x1;
|
||||
} else {
|
||||
new_el = extract32(spsr, 2, 2);
|
||||
if (new_el > 1) {
|
||||
|
@ -424,7 +424,7 @@ void HELPER(exception_return)(CPUARMState *env)
|
|||
env->aarch64 = 1;
|
||||
pstate_write(env, spsr);
|
||||
env->xregs[31] = env->sp_el[new_el];
|
||||
env->pc = env->elr_el1;
|
||||
env->pc = env->elr_el[1];
|
||||
}
|
||||
|
||||
return;
|
||||
|
@ -438,7 +438,7 @@ illegal_return:
|
|||
* no change to exception level, execution state or stack pointer
|
||||
*/
|
||||
env->pstate |= PSTATE_IL;
|
||||
env->pc = env->elr_el1;
|
||||
env->pc = env->elr_el[1];
|
||||
spsr &= PSTATE_NZCV | PSTATE_DAIF;
|
||||
spsr |= pstate_read(env) & ~(PSTATE_NZCV | PSTATE_DAIF);
|
||||
pstate_write(env, spsr);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue