We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 521ebcb commit a951c1fCopy full SHA for a951c1f
cortex-m/src/asm.rs
@@ -197,13 +197,14 @@ pub unsafe fn semihosting_syscall(nr: u32, arg: u32) -> u32 {
197
pub unsafe fn enter_unprivileged_psp(psp: *const u32, entry: extern "C" fn() -> !) -> ! {
198
unsafe {
199
core::arch::asm!(
200
- "mrs {tmp}, CONTROL",
201
- "orr {tmp}, #3",
202
- "msr PSP, {psp}",
203
- "msr CONTROL, {tmp}",
+ "msr PSP, {psp}",
+ "mrs {tmp}, CONTROL",
+ "orrs {tmp}, {flags}",
+ "msr CONTROL, {tmp}",
204
"isb",
205
- "bx {ent}",
+ "bx {ent}",
206
tmp = in(reg) 0,
207
+ flags = in(reg) 3,
208
psp = in(reg) psp,
209
ent = in(reg) entry,
210
options(noreturn, nostack)
0 commit comments