this repo has no description
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

[kernel] Branch to `__darling_bsd_syscall` instead of using `svc` syscall

Thomas A 1f899c79 b5013184

+34
+13
src/kernel/libsyscall/bsdsyscalls/SYS.h
··· 472 472 * TBD 473 473 */ 474 474 475 + #ifdef DARLING 476 + #define DO_SYSCALL(num, cerror) \ 477 + mov x16, #(num) %%\ 478 + bl __darling_bsd_syscall %%\ 479 + b.cc 2f %%\ 480 + PUSH_FRAME %%\ 481 + bl _##cerror %%\ 482 + POP_FRAME %%\ 483 + ret %%\ 484 + 2: 485 + 486 + #else 475 487 #define DO_SYSCALL(num, cerror) \ 476 488 mov x16, #(num) %%\ 477 489 svc #SWI_SYSCALL %%\ ··· 481 493 POP_FRAME %%\ 482 494 ret %%\ 483 495 2: 496 + #endif 484 497 485 498 #define MI_GET_ADDRESS(reg,var) \ 486 499 adrp reg, var@page %%\
+13
src/kernel/libsyscall/custom/SYS.h
··· 472 472 * TBD 473 473 */ 474 474 475 + #if DARLING 476 + #define DO_SYSCALL(num, cerror) \ 477 + mov x16, #(num) %%\ 478 + bl __darling_bsd_syscall %%\ 479 + b.cc 2f %%\ 480 + PUSH_FRAME %%\ 481 + bl _##cerror %%\ 482 + POP_FRAME %%\ 483 + ret %%\ 484 + 2: 485 + 486 + #else 475 487 #define DO_SYSCALL(num, cerror) \ 476 488 mov x16, #(num) %%\ 477 489 svc #SWI_SYSCALL %%\ ··· 481 493 POP_FRAME %%\ 482 494 ret %%\ 483 495 2: 496 + #endif 484 497 485 498 #define MI_GET_ADDRESS(reg,var) \ 486 499 adrp reg, var@page %%\
+8
src/kernel/libsyscall/wrappers/mach_absolute_time.S
··· 262 262 .globl _mach_absolute_time_kernel 263 263 _mach_absolute_time_kernel: 264 264 mov w16, #-3 // Load the magic MAT number 265 + #ifdef DARLING 266 + bl __darling_bsd_syscall 267 + #else 265 268 svc #SWI_SYSCALL 269 + #endif 266 270 ret 267 271 268 272 .text ··· 270 274 .globl _mach_continuous_time_kernel 271 275 _mach_continuous_time_kernel: 272 276 mov w16, #-4 // Load the magic MCT number 277 + #ifdef DARLING 278 + bl __darling_bsd_syscall 279 + #else 273 280 svc #SWI_SYSCALL 281 + #endif 274 282 ret 275 283 276 284 #else