Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 4909

Bare metal, Assembly language • Re: Circle Context Switch

$
0
0
Hello, I was wondering if anyone could explain why the Circle OS only saves only x16-x30 and likewise d8-d15?
Circle has a cooperative scheduler and the task switch is implemented as a subroutine, so the procedure call rules apply. According to the Procedure Call Standard for AArch64 only x16-x30 and d8-d15 have to be saved by the callee, the other registers by the caller of a subroutine. So for performance reasons it is not necessary to save the other registers.

Statistics: Posted by rst — Tue Oct 01, 2024 9:29 am



Viewing all articles
Browse latest Browse all 4909

Trending Articles