reactos/sdk/lib/crt
Timo Kreuzer 92db51883a [MSVCRT] Add asm wrapper around RtlUnwind for Wine code
This is needed, because Wine code expects RtlUnwind to restore the non-volatile registers, before returning, but ours / the native one doesn't do that.
Should fix CORE-19392 and CORE-19397
2024-01-13 19:39:23 +02:00
..
conio
direct
except
float
include/internal
locale
math [CRT] Make ML based asm code GAS compatible 2023-11-10 19:20:24 +02:00
mbstring [CRT] Add parameter check to _mbscmp 2023-11-10 19:19:22 +02:00
mem [CRT] Fix parameter check for _memicmp on NT 6+ 2023-11-10 19:19:22 +02:00
misc [CRT] Sync $I10_OUTPUT and test with wine head 2023-12-30 12:51:22 +02:00
printf
process
search
setjmp
signal
startup [CRT] Define _NTSYSTEM_ in 2 files to force using import-stubs 2023-11-10 19:00:41 +02:00
stdio
stdlib [CRT][MSVCRT] Import _gcvt and _gcvt_s from wine and export _gcvt_s on Vista+ 2023-11-10 19:19:22 +02:00
string
sys_stat
time
wine [MSVCRT] Add asm wrapper around RtlUnwind for Wine code 2024-01-13 19:39:23 +02:00
wstring
CMakeLists.txt
crt.cmake [MSVCRT] Add asm wrapper around RtlUnwind for Wine code 2024-01-13 19:39:23 +02:00
libcntpr.cmake
moldname-msvcrt.def
msvcrtex.cmake
oldnames-msvcrt.S
oldnames.cmake
precomp.h
README.txt

Big chunks of this CRT library are taken from Wine's msvcrt implementation,
you can find a list of synced files in README.WINE file.

Notes:
1. When syncing, omit MSVCRT_ prefix where possible, Wine has to keep this
because they are linking with *both* original crt, and ms crt implementation.
ReactOS has the only CRT, so no need to make distinct functions.
2. ReactOS compiles two versions of the CRT library, one for usermode
(called just "crt"), and one version for kernelmode usage (called "libcntpr").
In order to separate the code, you can use #ifdef _LIBCNT_ for libcntpr code.