summaryrefslogtreecommitdiffhomepage
path: root/Private/HALKit/PowerPC/HalCoreSyscallHandlerPowerPC.cpp
blob: 322cb60496905add90ec3ffada97bd0d6ea4a1ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/* -------------------------------------------

    Copyright Mahrouss Logic

------------------------------------------- */

#include <ArchKit/ArchKit.hpp>
#include <NewKit/Array.hpp>

NewOS::Array<void (*)(NewOS::Int32 id, NewOS::HAL::StackFrame *),
             kKernelMaxSystemCalls>
    kSyscalls;

extern "C" void rt_syscall_handle(NewOS::HAL::StackFrame *stack) {
  for (NewOS::SizeT index = 0UL; index < kKernelMaxSystemCalls; ++index) {
    (kSyscalls[index].Leak().Leak())(stack->ID, stack);
  }
}