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
0f3d052af9
[CRT] Remove _fmode and _commode initialization
...
This "initialization" copies the value of the local variable to the one exported from msvcrt, which is the same. Also there shouldn't be a local version of the variable in the first place.
2021-08-04 02:03:07 +02:00
Victor Perevertkin
03506b90e0
[MSVCRTEX] Add some routines required for clang optimizations
...
- Include exp2* in all clang builds
- Include __aulldiv for i386 ones
Those are required, at least for clang-cl Release configuration
2021-08-02 20:23:18 +03:00
Roman Masanin
be3c532bf4
[ARM/CRT] Refactor several functions ( #3865 )
...
- Make __fto64 function more readable
- Call worker function directly for __rt_sdiv/udiv
- Adapt __rt_sdiv64/udiv64 asm shims accordingly
- Add header files to CMake source list
CORE-17607 CORE-17614 CORE-17703 CORE-17604
Addendum to f2bc1f0e
, e448094e
and 54406bf4
.
2021-07-31 11:24:03 +03:00
Stanislav Motylkov
54406bf4f0
[CRT/ARM] __fto64: Assembly wrappers are actually not needed anymore
...
Addendum to e448094e
. CORE-17703 CORE-17604
2021-07-30 22:48:03 +03:00
Roman Masanin
e448094e74
[CRT/ARM] Implement __dtoi64/dtou64/stoi64/stou64 functions ( #3848 )
...
CORE-17703 CORE-17604
2021-07-30 14:20:23 +03:00
Roman Masanin
fd8baca9f2
[CRT/ARM] Fix modulus on division ( #3856 )
...
This fixes all tests added in 759bdedc
. Addendum to f2bc1f0e
.
CORE-17607 CORE-17614 CORE-17604
2021-07-29 13:44:16 +03:00
Timo Kreuzer
da2a5673e7
[CRT] Fix _matherror and _setusermatherror
...
We previously used 2 different versions: one from wine and one from mingw-w64.
The former was used in msvcrt, the latter was statically compiled into the executable. When using MS libs, there is only one _matherr, which is statically linked into the executable and does nothing (it's not really a function for users to be called).
_setusermatherror should only exist in msvcrt and not statically, which wouldn't work at all.
2021-07-27 22:08:58 +02:00
Timo Kreuzer
f1e2c6cbd0
[CRT/arm] Update file headers to new format and change license to MIT
...
* Add Raman Masanin to copyrights
* Add some comments
* Return long long from __rt_sdiv (no functional difference, just for clarity)
2021-07-27 14:42:55 +02:00
Roman Masanin
f2bc1f0e11
__rt_div fixes for arm ( #3843 )
...
[CRT/arm] Fix __rt_udiv and __rt_sdiv
2021-07-24 20:23:58 +02:00
Timo Kreuzer
5d8e834897
[REACTOS] Fix a number of MSVC warnings
2021-07-23 22:03:48 +02:00
Timo Kreuzer
7100a24fc3
[CRT] Remove checkstk_ms from build (it was unused)
2021-07-20 23:13:03 +02:00
Timo Kreuzer
8c4aff39a8
[CRT] Refactor CMake files
2021-07-20 23:13:03 +02:00
Timo Kreuzer
aea4cfba55
[CRT] Add some missing #pragma function
2021-07-11 21:45:29 +02:00
Jérôme Gardou
0ffbbab5a2
[CRT] Revert unwanted part of f30136bc79
2021-06-29 12:48:25 +02:00
Jérôme Gardou
f30136bc79
[NTOS:KE] Test spinlock ownership on both UP & MP build
...
There is no reason not to, and this avoids introducing bugs stupidly.
2021-06-29 11:49:20 +02:00
Victor Perevertkin
34593d933b
[FORMATTING][NTOS][HAL][DRIVERS][SDK] Fix trailing spaces
2021-06-11 15:33:08 +03:00
Timo Kreuzer
0520c75aaf
[CRT] Implement __C_specific_handler
2021-06-05 13:52:42 +02:00
Stanislav Motylkov
11687e9e43
[CRT][ARM] Fix uninitialized variables caught by RTC
...
CORE-17613
2021-06-02 13:18:40 +03:00
Timo Kreuzer
db0c59cbd4
[CRT] Use the asm version of sqrt on amd64
2021-05-28 11:52:42 +02:00
Jérôme Gardou
802665a4ac
[CRT] Also use alias _rot functions for clang-cl amd64 build
2021-05-03 22:00:57 +02:00
Jérôme Gardou
439aefb31d
[CRT] Sync tlssup.c with mingw-w64
...
This allows amd64 built binary to be loaded.
2021-04-28 13:10:23 +02:00
Jérôme Gardou
fe3278d4d6
[CRT] We never use the mthread library
2021-04-28 13:10:23 +02:00
Jérôme Gardou
d31856cda1
[CRT] Do not include unneeded PSEH header
2021-04-28 13:10:23 +02:00
Jérôme Gardou
e470b58376
[REACTOS] Explicitly link against pseh & include pseh headers in a few places
2021-04-28 13:10:23 +02:00
Serge Gautherie
b8ae966634
[CRT] exp2*.c: Add an explicit type for 'TWO' variable
...
Addendum to 199adee
.
2021-04-27 10:36:54 +03: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
620f333252
[CRT] Fix rot functions aliases in non-x86 clang builds
2021-04-09 15:00:07 +02:00
Jérôme Gardou
199adee3fe
[CRT] Add a generic C version of exp2(f) and use it for all architecture
2021-04-09 14:59:07 +02:00
Jérôme Gardou
3a14c97d0c
[LIBCNTPR] Fix a typo
...
There is no console to display to.
2021-03-25 11:54:49 +01:00
Jérôme Gardou
162f51e6b8
[OLDNAMES] Add missing isascii
2021-03-17 18:52:58 +01:00
Jérôme Gardou
0c34c067c4
[CRT] Add CFI annotatiions to memmove function
2021-03-09 19:42:49 +01:00
Jérôme Gardou
2306c83e5c
[CMAKE] Explicitly declare libcntpr as a static lib
2021-03-03 08:34:32 +01:00
Hervé Poussineau
bbf7b5b72a
[CRT/x64] Correctly implement fabs for GCC
...
Note that MSVC does not recognize 'fabs' as a valid label name.
See fee844b6ff
and 2f7cf157d8
2021-02-01 19:57:12 +01:00
Hervé Poussineau
c345f7f137
[ASM x64] Make UNIMPLEMENTED macro self-suffisant
...
This fixes link errors with MsgUnimplemented not defined on binaries not linking to CRT.
2021-01-28 20:31:16 +01:00
Jérôme Gardou
af3527d4d2
[MSVCRTEX] Do not include _CI* math functions
...
They are exported by msvcrt
CORE-17423
2021-01-21 09:43:43 +01:00
Mark Jansen
69dffed3f7
[CMAKE] Fix MSVC configuring
2021-01-15 20:43:10 +01:00
Hervé Poussineau
0cce1348c6
[CRT/x64] Make _fpreset/_logb public, as they are exported using the .spec file
2021-01-07 21:12:11 +01:00
Hervé Poussineau
a644e7f5fd
[CRT/x64] Disable MSVCRT__setjmp function, which references non-existent function __wine_setjmpex
...
_setjmp is already defined in sdk/lib/crt/setjmp/amd64/setjmp.s
2021-01-07 21:12:11 +01:00
Hervé Poussineau
80b1b0b294
[CRT] Fix hack for GCC x64, when CRT is linking against RosBE libstdc++
2021-01-05 19:24:23 +01:00
Jérôme Gardou
c8d07514c8
[CMAKE] Fix GCC -fstack-protector usage
2021-01-05 13:38:57 +01:00
Jérôme Gardou
8a6d653044
[CRT] Fix _onexit
...
Avoid calling malloc in CR initialisation code.
Have executables call msvcrt implementation, while the DLLs keep their own function tables
CORE-17362
2020-12-30 19:03:52 +01:00
Jérôme Gardou
6c6d9bee68
[CRT] Do not call atexit at process initialization
...
There is no guarantee that the underlying APIs are initialized at this point
CORE-17362
2020-12-30 19:03:52 +01:00
Jérôme Gardou
26863538a4
[CRT] Format source a bit.
...
This is horrendous.
2020-12-30 19:03:52 +01:00
Jérôme Gardou
b96e88894a
[CMAKE] Turn import libs into regular C static libs
...
Embed msvcrtex into libmsvcrt
Idea taken from Thomas Faber
2020-12-28 12:13:30 +01:00
Jérôme Gardou
281389b7e7
[CRT] Use ASM aliases for CLang builds
2020-11-16 16:58:10 +01:00
Jérôme Gardou
15c9f63b65
[MSVCRTEX] Add some floating point functions for CLang build
...
Clang makes optimisations requiring functions not present in msvcrt
2020-11-16 16:58:10 +01:00
Timo Kreuzer
2c791cdde7
[CRT] Remove duplicated atexit/onexit code
...
This removes the broken wine version of atexit and onexit. It keeps only dllonexit, which is implemented properly. The previous __call_atexit is moved to where the mingw onexit/atexit code is and adjusts it to work with the existing code. A call to __call_atexit is added in __tmainCRTStartup after the main function was called.
2020-11-01 09:33:14 +01:00
Jérôme Gardou
23e04ae1ee
[CMAKE] Use an INTERFACE library to perform the msvcrt <-> msvcrtex binding
2020-10-22 18:07:27 +02:00
Jérôme Gardou
ab825334dd
Apply suggestions from code review
...
Beautification and clarity
Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
2020-10-20 21:44:54 +02:00