Jérôme Gardou
1b08836338
[RTL] Properly implement RtlUnicodeToOemN
...
CORE-17571
2021-05-19 22:50:29 +02:00
Jérôme Gardou
0f723105c6
[CMAKE] Allow compiling amd64 port with GCC on Windows
...
Dedicated to Daniel
2021-05-19 14:13:51 +02:00
Mark Jansen
264aaa9e05
[RTL] Implement RtlGetLengthWithoutLastFullDorOrNtPathElement
...
CORE-17248
2021-05-08 19:24:23 +02:00
Mark Jansen
3e7e4ee360
[RTL] Implement RtlpApplyLengthFunction
...
CORE-17248
2021-05-08 19:24:23 +02:00
Jérôme Gardou
d312ef234b
[PSEH] Fix use of dummy implementation in C++
2021-05-03 22:00:57 +02:00
Jérôme Gardou
07dcec0325
[PSEH] Use dummy PSEH for clang(-cl) amd64 build
2021-05-03 22:00:57 +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
ba74a05a17
[PSEH] Add implementation for GCC amd64
...
Also, put include directory next to the library and use
target_include_directories(.. INTERFACE ..) to get this right.
This is because :
- Having includes & implementation in two different places buggers me
- This makes sure that there is no "if it compiles everything is fine" behaviour from anyone
because now even static libraries need it for GCC amd64 build
Also add __USE_PSEH2__ define for the non SEH-aware compilers out there and use it in a few headers
where we define macros involving __try
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
Jérôme Gardou
8abcd18742
[RTL] Use addressing relative to rip
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
a19ca409ae
[PSEH] Each amd64 compiler that we use support SEH
2021-04-09 12:36:04 +02:00
Victor Perevertkin
74ec94e12c
[CMAKE] Some options are only supported by GCC, don't use them for clang
...
These are (so far):
-Wno-format-overflow
-Wno-nonnull-compare
-Wno-old-style-declaration
-Wno-unused-but-set-variable
2021-04-09 03:58:19 +03: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
Serge Gautherie
49639c7759
[ATL] CWindowImplBaseT::WindowProc(): Narrow 2 ATLASSERT() down ( #3529 )
...
Addendum to e076e05
. CORE-17505
2021-03-25 19:51:29 +09:00
Jérôme Gardou
162f51e6b8
[OLDNAMES] Add missing isascii
2021-03-17 18:52:58 +01:00
Jérôme Gardou
7e5c1872ee
[RTL] Improve performance by introducing a hint array for free entries
...
The array is there for the entries smaller than the decommit threshold, the rationale
being that entries which are larger will likely be split for honoring other allocations
or be coalesced and eventually decommitted.
This with the previous commits make a huge perf boost to memory-intensive applications like cmake
CORE-15793
2021-03-16 13:23:21 +01:00
Jérôme Gardou
325737f855
[SDK:RTL] Track the end of uncommitted ranges thanks to a "Guard" entry that we put at the end of each committed page
...
This avoids busy loop to get the last valid entry of the previous committed range when committing a new one.
CORE-15793
2021-03-16 13:23:21 +01:00
Katayama Hirofumi MZ
e076e0576f
[ATL] Add NULL-check in CWindowImplBaseT::WindowProc assertions
...
CORE-17505
2021-03-11 21:20:40 +09:00
Katayama Hirofumi MZ
9259ded8ae
[ATL][SHELL32][EXPLORER] Disable ATLASSERT ( #3527 )
...
We are not ready for enabling ATLASSERT. Enabling ATL assertions takes time to realize. CORE-17505
- Disable ATLASSERT by undefining _DEBUG.
- Revert currently non-fixable codes.
2021-03-11 20:26:45 +09:00
Katayama Hirofumi MZ
4f83032a12
[ATL] Split CWindowImplBaseT::WindowProc asserion
...
CORE-9281
2021-03-11 17:18:43 +09:00
Serge Gautherie
0975c5ef40
[ATL] CMakeLists.txt: Use a bare endif() ( #3523 )
...
Addendum to 98203ce
.
2021-03-11 08:38:04 +09:00
Victor Perevertkin
df35c8d05e
[SDK:KMDF] Populate OsVersionInfo in our static linking hack
2021-03-10 18:41:46 +03:00
Victor Perevertkin
6d1ca3553e
[SDK:KMDF] Fix calling convention for the kernel function pointers
2021-03-10 18:41:03 +03:00
Katayama Hirofumi MZ
98203cea23
[CMAKE] Define _DEBUG for better ATL debugging (Retry) ( #3519 )
...
CORE-17505
2021-03-10 22:59:13 +09:00
Victor Perevertkin
0a26c7c5d2
[SDK:DDK] Implement the Auxiliary Kernel-Mode Library
...
And uncomment the code in KMDF which uses it
2021-03-10 16:43:59 +03: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
65b6af58f9
[SDK:RTL] Statically initialize RtlCriticalSectionList
...
This might be used before RtlpInitDeferedCriticalSection gets called
2021-03-03 14:10:47 +01:00
Jérôme Gardou
2306c83e5c
[CMAKE] Explicitly declare libcntpr as a static lib
2021-03-03 08:34:32 +01:00
Serge Gautherie
55b93aecdc
[CMAKE] target_compile_definitions() calls: Remove (now) useless '-D' ( #3490 )
...
Documented as automatically removed, since CMake 3.12.4 at least.
https://cmake.org/cmake/help/v3.12/command/target_compile_definitions.html
2021-03-03 04:16:02 +01:00
Serge Gautherie
e898c9e0df
[RTL_VISTA] CMakeLists.txt: Fix 'rtl' copypasta ( #3489 )
...
Addendum to 6119239
.
2021-03-02 19:06:17 +01:00
Katayama Hirofumi MZ
e24d3cc952
[SDK][ATL] Fix CWindow::GetWindowText method of BSTR ( #3498 )
...
- Fix generic text mapping for GetWindowText and GetWindowTextLength functions.
- Fix the position.
- Fix the length.
- Fail elegantly if necessary.
CORE-9281
2021-03-02 17:50:00 +09:00
Katayama Hirofumi MZ
ef3e7a3717
[SDK][ATL] Implement UnsubclassWindow methods ( #3492 )
...
I want UnsubclassWindow methods.
- Implement CWindowImpl::UnsubclassWindow method.
- Implement CContainedWindowT::UnsubclassWindow method.
- Add SubclassWindow testcase to atl_apitest test program.
- Fix generic text mapping of <atlwin.h>.
CORE-9281
2021-02-28 12:45:16 +09: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
349e0ddde8
[PSEH] Fix test on non-existent variable, so GCC x64 now always uses native SEH instead of PSEH
2021-02-01 19:57:12 +01:00
Jérôme Gardou
d712c895fd
[RTL] Fix a typo & remove useless cast
2021-02-01 09:09:19 +01:00
Jérôme Gardou
6a4c6ea5d0
[RTL] Implement RtlTryAcquireSRWLockExclusive & RtlTryAcquireSRWLockShared
2021-01-29 18:42:54 +01:00
Jérôme Gardou
2486558ae1
[RTL] Do not mess with critical section lock when there is no reason to.
...
- When process is shutting down.
- When the caller is so drunk that they leave twice the pub altough they entered it only once.
2021-01-29 18:18:09 +01:00
Jérôme Gardou
6d697561f0
[RTL] Fix heap usage flags
...
- Use Heap->ForceFlags where needed
- Use passed-in flags instead of the heap flags in some places
- Do not recursively acquire the heap lock
2021-01-29 09:42:13 +01:00
Hervé Poussineau
457b83f76a
[PSEH] When using GCC x64, use native SEH support instead of PSEH
2021-01-28 20:44:21 +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