arm: Make sure we can handle a thumb entry point.
Similarly to what's been done on arm64 with commit
712c060c94
, when executing a binary, if the
entry point is a thumb symbol, then make sure we set the PSL_T flag, otherwise
the CPU will interpret it in ARM mode, and that will likely leads to an
undefined instruction.
PR: 256899
MFC after: 1 week
This commit is contained in:
parent
d75d33870d
commit
8c3bd133dd
@ -346,6 +346,8 @@ exec_setregs(struct thread *td, struct image_params *imgp, uintptr_t stack)
|
||||
tf->tf_svc_lr = 0x77777777;
|
||||
tf->tf_pc = imgp->entry_addr;
|
||||
tf->tf_spsr = PSR_USR32_MODE;
|
||||
if ((register_t)imgp->entry_addr & 1)
|
||||
tf->tf_spsr |= PSR_T;
|
||||
}
|
||||
|
||||
#ifdef VFP
|
||||
|
Loading…
Reference in New Issue
Block a user