summaryrefslogtreecommitdiffhomepage
path: root/Private/HALKit/AXP/CoreSyscallHandlerDEC.cpp
blob: a0d1b13e64ec77ba4f67cdc1c1f5c3e3e6210899 (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 <HALKit/Alpha/Processor.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);
  }
}