【发布时间】:2020-06-20 03:59:03
【问题描述】:
我有以下功能可以进行主管调用。
inline uint32_t os_SVC(uint32_t n, uint32_t pid, void* ptr1, void (*ptr2)()){
__asm("svc #0");
return;
}
通过在 SVC ISR 期间更改堆栈,我知道 R0 将包含来自 SVC ISR 的返回参数。据我了解,这就是 AAPCS 从函数返回值的方式。但是如何从os_SVC 返回 R0 寄存器?目前它给了我一个警告,因为我正在从函数返回而没有提供返回值。
【问题讨论】: