Timo Kreuzer
45aa8f8111
[CRT] Remove useless #undef abort from process.h
2024-04-26 15:16:31 +02:00
Timo Kreuzer
6beff505d7
[CRT] Add _Exit to process.h
...
This is already done this way in our stdlib.h. It is needed by GCC 13 C++ headers. The problem happens like this:
- telnet/precomp.h includes fstream from GCC
- fstream includes pthread.h from GCC
- pthread.h includes process.h from ReactOS
- process.h defines _CRT_TERMINATE_DEFINED, but doesn't declare _Exit
- fstream includes cstdlib from GCC
- cstdlib includes stdlib.h from GCC (#include_next)
- stdlib.h doesn't declare _Exit, because _CRT_TERMINATE_DEFINED is defined
- cstdlib uses _Exit
2024-04-26 15:16:31 +02:00
Timo Kreuzer
95bf896b10
[CRT] crtdefs.h: Wrap localeinfo_struct in ifdef
...
This prevents a redefinition error, when GCC 13 host headers are included when compiling c++ code.
2024-04-16 20:10:38 +02:00
Timo Kreuzer
2f03b146da
[CRT] intrin_x86.h: Use movsl instead of movsd to fix a GCC 13 warning
2024-03-19 07:44:40 +01:00
Hermès Bélusca-Maïto
864aed6bcd
[SDK:CRT] malloc.h: Use MS PSDK-compatible guard name instead of MinGW one.
...
Use the MS PSDK-compatible name _INC_MALLOC, instead of the MinGW one
_MALLOC_H_, so that code that may depend on this to determine whether
malloc.h functions are defined, can compile without problems.
2024-02-08 17:48:58 +01:00
Hermès Bélusca-Maïto
f49e213943
[CRT][MSVCRT] Implement _CrtDbgReport(W)V and redefine _CrtDbgReport(W) around those ( #5678 )
...
Also add the internal _VCrtDbgReportA and _VCrtDbgReportW functions listed in
https://learn.microsoft.com/en-us/cpp/c-runtime-library/internal-crt-globals-and-functions?view=msvc-170
CORE-11835, CORE-15517
2023-11-14 12:23:51 +01:00
Hermès Bélusca-Maïto
ee11747527
[CRT] Fix "wcsat_s" typo...
2023-11-11 21:30:09 +01:00
Katayama Hirofumi MZ
85377ee3db
[SDK][CRT][MSVCRT] Implement _CrtSetReportMode and _CrtSetReportFile ( #5662 )
...
- Implement reporting to file.
CORE-11835, CORE-15517, ROSTESTS-386
2023-09-11 04:37:27 +09:00
Joachim Henze
09dde2cff9
[REACTOS] " http://www.reactos " -> " https://reactos " ( #5043 )
...
To harmonize, to save some bytes, and last but not least for security reasons.
This can be understood as an addendum to (#2619 ).
2023-02-06 17:01:52 +03:00
Timo Kreuzer
06f1ac5fa4
[CRT] Add a workaround for CORE-18255
2022-12-01 15:21:59 +02:00
Timo Kreuzer
20a6cff4dd
[CRT] Implement _InterlockedCompareExchange128 intrinsic for GCC
2022-11-24 21:17:58 +02:00
Timo Kreuzer
76086220fa
[CRT] Fix amd64 floating point control functions
2022-08-22 11:22:08 +02:00
Timo Kreuzer
bc9409daba
[CRT] Add round and roundf and add it to msvcrtex to make clang v14 happy
2022-07-17 17:32:32 +02:00
Timo Kreuzer
ba0d16f3b3
[CRT] Add missing OP_* constants in fpieee.h
2022-06-26 23:08:14 +02:00
Timo Kreuzer
b7c6170a5f
[CRT] Add emmintrin.h
...
Implementations are taken from clang.
2022-06-26 19:59:41 +02:00
Timo Kreuzer
8a67170616
[CRT_APITEST] Implement tests for fabs/fabsf
2022-06-26 19:13:47 +02:00
Timo Kreuzer
318d696f0e
[CRT] Implement xmmintrin.h
...
This includes inline functions for GCC/Clang.
Note: the previous GCC definition of __m128 was broken and didn't work.
2022-06-10 23:21:41 +02:00
Timo Kreuzer
9c8a2bbc81
[CRT] Implement mmintrin.h
...
This includes inline functions for GCC/Clang.
2022-06-10 23:21:41 +02:00
Timo Kreuzer
c34c5e29f0
[CRT] Move __INTRIN_INLINE to mingw32.h to be available everywhere
...
Also use __attribute__((artificial)) for clang, too.
2022-06-10 23:21:41 +02:00
Justin Miller
4363e74ddc
[REACTOS] Finally get some ARM64 applications building ( #4517 )
...
- Add some missing ARM64 exports to ntdll, kernel32 and user32
- Create mmtypes header file based on WoA debug symbols
- Get the remaining headers in order, so we can build ARM64 apps
- Adjust subsystem version for binaries so they can run on WoA host
- Get calc, notepad and more base apps to build for ARM64 platform
CORE-17518
Reviewed-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Reviewed-by: Stanislav Motylkov <x86corez@gmail.com>
2022-05-25 17:06:32 +03:00
Julen Urizar Compains
748d5c694e
[CRT] Fix MinGW-arm intrin minor bug in _byteswap_ushort ( #4475 )
...
A little bug were in the CRT, found with RosBE and cegcc compiler:
../sdk/include/crt/mingw32/intrin_arm.h:44:32: error: '<<' in boolean context, did you mean '<' ? [-Werror=int-in-bool-context]
Thanks to @HBelusca for suggesting the fix. CORE-17604
2022-04-30 01:24:49 +03:00
Justin Miller
2204695f0a
[SDK] Fix some arm64 stuff that was discovered during testing
...
Addendum to 6dfc13e4
. CORE-17518
2022-04-07 19:50:43 +03:00
Mark Jansen
f1132155d9
[SDK][CRT] Add _CRT_NON_CONFORMING_SWPRINTFS support
...
This allows us to easier port wine changes, where swprintf with a size is used a lot
2022-03-20 19:28:22 +01:00
Thomas Faber
b72efb6ca8
[CRT] Fix some inconsistent annotations in CRT headers.
...
This fixes about 5000 VS analysis warnings.
2022-02-17 22:01:37 -05:00
Serge Gautherie
9a523c8135
[CRT/arm64] Fix handling of intrinsics
...
Fix msvc14.1-arm64-Release build.
Follow-up to db41787
(0.4.15-dev-2914).
CORE-17518
2022-01-11 20:52:48 +03:00
Justin Miller
6dfc13e411
[CRT] Add vadefs macros for arm64 ( #4123 )
...
CORE-17621 CORE-17518
2021-12-09 17:16:20 +03:00
Justin Miller
51ce0c5150
[CRT] Add setjmp for the arm64 architecture ( #4088 )
...
CORE-17622 CORE-17518
2021-11-17 14:24:07 +03:00
Roman Masanin
554bbb6bab
[CRT/ARM] Floating point control functions implementation ( #3870 )
...
Implement controlfp, statusfp, fpreset, clearfp. CORE-17757 CORE-17604
2021-09-08 16:04:48 +03:00
Timo Kreuzer
379957424c
[CRT] Fix some _CRTIMP
...
Get rid of the ugly __MINGW_IMP_SYMBOL hacks.
2021-08-04 02:03:07 +02:00
Timo Kreuzer
b05cc36208
[CRT] Fix CRT headers a bit
...
* Remove unused internal version of float.h
* Define _STATIC_ASSERT in crtdefs.h
* Add some missing declarations
2021-08-04 02:03:07 +02:00
Timo Kreuzer
486a4d93ed
[CRT] Define NULL in crtdefs.h
2021-07-27 22:08:58 +02:00
Timo Kreuzer
db41787951
[CRT] Fix handling of intrinsics and inline functions
2021-07-11 21:45:29 +02:00
Jérôme Gardou
e10892e4f4
[CRT] Put __MINGW_EXTENSION (whatever that means) in front of function declarations
...
Needed for next commit
2021-06-28 10:20:57 +02:00
Victor Perevertkin
34593d933b
[FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces
2021-06-11 15:33:08 +03:00
Jérôme Gardou
8aea84dab7
[CRT] Do not define builtin functions if not needed
2021-05-03 22:00:57 +02:00
Jérôme Gardou
976c4c10aa
[CRT] Fix SEH macros for clang x64
2021-05-03 22:00:57 +02:00
Jérôme Gardou
955b5c27b1
[CRT] Fix __ll_lshift, __ll_rshift and __ull_rshift intrinsics on gcc-amd64
2021-04-28 13:10:23 +02:00
Jérôme Gardou
a4138329a1
[CRT] Add macros to disable diagnostics from GCC and clang
...
Instead of disabling them globally, this will help making finer grained decisions
2021-04-28 13:10:23 +02:00
Serge Gautherie
b6493654a3
[CRT] intrin_x86.h: Fix '_InterlockedIncrement64' copypasta
...
Addendum to bc3a471
.
2021-04-27 10:36:54 +03:00
Katayama Hirofumi MZ
66f6abfc4a
[SDK][INCLUDE] Fix offsetof and CCSIZEOF_STRUCT for Clang-CL build ( #3624 )
...
Clang-CL was failing with "error: function declaration cannot have variably modified type". This PR will fix the Clang-CL build. CORE-17547
2021-04-25 13:38:22 +09:00
Jérôme Gardou
3731fd1661
[CRT] Properly declare rot functions in public headers
2021-04-09 15:12:13 +02:00
Jérôme Gardou
bc3a471413
[CRT] Do not try to implement x86_64 builtins of clang
2021-04-09 10:33:05 +02:00
Jérôme Gardou
97d4cb6ee0
[CRT] Declare strlen & wcslen as _CRTIMP
2021-03-03 08:34:32 +01:00
Jérôme Gardou
86a0852ffb
[SDK/CRT] Provide inline implementation of log2
2021-02-04 16:37:01 +01:00
Hervé Poussineau
e3cbdcf2e9
[CRT] Use correct prototypes for GCC x64
2021-01-05 14:19:45 +01:00
Hervé Poussineau
de647b4155
[CRT] Remove bad define of _int128 in GCC x64
2021-01-05 14:19:45 +01:00
Jérôme Gardou
3936c3f19e
[CRT] Fix __forceinline definition for clang
2020-11-16 16:58:10 +01:00
Jérôme Gardou
f96e47db43
[CRT] Fix intrinsics definition with clang
2020-11-16 16:58:10 +01:00
Timo Kreuzer
fe36f081c7
[COMPILER_APITEST] Add SEH tests from MS ( #2435 )
...
* [COMPILER_APITEST] Import MS EH/SEH tests
Taken from https://github.com/microsoft/compiler-tests
* [CRT] Add missing declaration of _longjmpex
* [COMPILER_APITEST] Add cmake build files for MS SEH test
It is built as a static library
* [COMPILER_APITEST] Fix GCC build of MS SEH tests
There are a number of hacks in there now. Also the volatile hacks should be separated and sent upstream.
* [COMPILER_APITEST] Fix x64 build of MS SEH tests
* [COMPILER_APITEST] Fix clang build of MS SEH tests
* [COMPILER_APITEST] Include MS SEH tests
2020-10-31 11:08:27 +01:00
Timo Kreuzer
0e5a4d5afe
[PSDK] Import some SAL headers from MS
...
Taken from https://github.com/microsoft/ChakraCore/tree/master/pal/inc/rt
* Move _Check_return_opt_ and _Check_return_wat_ to crtdefs.h
* Update sal.h from https://github.com/microsoft/ChakraCore/blob/master/pal/inc/rt/sal.h
* Import no_sal2.h from MS and remove the one in NDK
* Import specstrings.h from MS
* Import specstrings_strict.h from MS
* Add specstrings_undef.h (based on defines in specstrings_strict.h)
* Remove __REACTOS__ hacks from cdfs
2020-10-29 06:51:28 +01:00