target/arm: Remove unnecessary '| 0xf0000000' from do_v7m_exception_exit()
In do_v7m_exception_exit(), there's no need to force the high 4 bits of 'type' to 1 when calling v7m_exception_taken(), because we know that they're always 1 or we could not have got to this "handle return to magic exception return address" code. Remove the unnecessary ORs. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Acked-by: Alistair Francis <alistair.francis@xilinx.com> Message-id: 1505137930-13255-6-git-send-email-peter.maydell@linaro.org
This commit is contained in:
parent
22a9c26af6
commit
7115cdf578
@ -6306,7 +6306,7 @@ static void do_v7m_exception_exit(ARMCPU *cpu)
|
|||||||
*/
|
*/
|
||||||
env->v7m.cfsr[env->v7m.secure] |= R_V7M_CFSR_INVPC_MASK;
|
env->v7m.cfsr[env->v7m.secure] |= R_V7M_CFSR_INVPC_MASK;
|
||||||
armv7m_nvic_set_pending(env->nvic, ARMV7M_EXCP_USAGE);
|
armv7m_nvic_set_pending(env->nvic, ARMV7M_EXCP_USAGE);
|
||||||
v7m_exception_taken(cpu, type | 0xf0000000);
|
v7m_exception_taken(cpu, type);
|
||||||
qemu_log_mask(CPU_LOG_INT, "...taking UsageFault on existing "
|
qemu_log_mask(CPU_LOG_INT, "...taking UsageFault on existing "
|
||||||
"stackframe: failed exception return integrity check\n");
|
"stackframe: failed exception return integrity check\n");
|
||||||
return;
|
return;
|
||||||
@ -6348,7 +6348,7 @@ static void do_v7m_exception_exit(ARMCPU *cpu)
|
|||||||
armv7m_nvic_set_pending(env->nvic, ARMV7M_EXCP_USAGE);
|
armv7m_nvic_set_pending(env->nvic, ARMV7M_EXCP_USAGE);
|
||||||
env->v7m.cfsr[env->v7m.secure] |= R_V7M_CFSR_INVPC_MASK;
|
env->v7m.cfsr[env->v7m.secure] |= R_V7M_CFSR_INVPC_MASK;
|
||||||
v7m_push_stack(cpu);
|
v7m_push_stack(cpu);
|
||||||
v7m_exception_taken(cpu, type | 0xf0000000);
|
v7m_exception_taken(cpu, type);
|
||||||
qemu_log_mask(CPU_LOG_INT, "...taking UsageFault on new stackframe: "
|
qemu_log_mask(CPU_LOG_INT, "...taking UsageFault on new stackframe: "
|
||||||
"failed exception return integrity check\n");
|
"failed exception return integrity check\n");
|
||||||
return;
|
return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user