Hey.
I read ARMv7-M Arch manual.
SHCSR register have SVCALLPENDED bit.
So that, It seem SVC is pendable.
But, 'Priority escalation' is written,
When the group priority of a pending synchronous fault or supervisor call is lower than or equal to thecurrently executing priority, inhibiting normal preemption. This applies to all synchronous exceptions, bothfaults and SVCalls.
This seem SVC is not pendable.
Is SVC pendable? If true, how behaver?
That is,
'SVC pending' is assigned by SVCALLPENDED? (or other mechanism?)
If yes,
When clear SVCALLPENDED in higher priority handler, SVC handler not call?
Sorry for the delay (I was in Embedded World last week).
Yes, it is possible to cancel a pending SVC. The most likely usage for this is in a debug session, you can manually change the PC after single stepping over a SVC instruction and the debugger can cancel the pending SVC in this case.
Thank you!!
I understand all.