Migrate RTL subsystem to C++
Some checks failed
Builds / ExectOS (amd64, debug) (push) Failing after 21s
Builds / ExectOS (amd64, release) (push) Failing after 20s
Builds / ExectOS (i686, debug) (push) Failing after 19s
Builds / ExectOS (i686, release) (push) Failing after 18s

This commit is contained in:
2025-09-11 18:28:24 +02:00
parent e507dd0390
commit 9518e7da8e
35 changed files with 3133 additions and 1068 deletions

View File

@@ -1,12 +1,12 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/rtl/i686/dispatch.c
* FILE: xtoskrnl/rtl/i686/dispatch.cc
* DESCRIPTION: Dispatching support for i686 architecture
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#include <xtos.h>
#include <xtos.hh>
/**
@@ -24,8 +24,8 @@
*/
XTAPI
VOID
RtlGetStackLimits(OUT PULONG_PTR StackBase,
OUT PULONG_PTR StackLimit)
RTL::Dispatcher::GetStackLimits(OUT PULONG_PTR StackBase,
OUT PULONG_PTR StackLimit)
{
PKTHREAD Thread = KeGetCurrentThread();
*StackBase = (ULONG_PTR)Thread->StackBase - sizeof(FX_SAVE_AREA);

View File

@@ -1,14 +1,15 @@
/**
* PROJECT: ExectOS
* COPYRIGHT: See COPYING.md in the top level directory
* FILE: xtoskrnl/rtl/i686/exsup.c
* FILE: xtoskrnl/rtl/i686/exsup.cc
* DESCRIPTION: Exception handling for i686 architecture
* DEVELOPERS: Rafal Kupiec <belliash@codingworkshop.eu.org>
*/
#include <xtos.h>
#include <xtos.hh>
XTCLINK
XTCDECL
EXCEPTION_DISPOSITION
__C_specific_handler(IN PEXCEPTION_RECORD ExceptionRecord,
@@ -22,6 +23,7 @@ __C_specific_handler(IN PEXCEPTION_RECORD ExceptionRecord,
return ExceptionContinueExecution;
}
XTCLINK
XTCDECL
INT
_except_handler3(PEXCEPTION_RECORD ExceptionRecord,