Commit graph

571 commits

Author SHA1 Message Date
Vitaly Lipatov
7377b53681 include: Add missing PCWCHAR to winnt.h. 2023-08-16 13:36:15 +02:00
Vitaly Lipatov
115403dc5b include: Update COMPRESSION_ defines and move it to ddk/ntifs.h. 2023-08-08 21:13:29 +09:00
Maxim Karasev
062cf6e2f1 include: Add UNICODE_NULL. 2023-07-12 21:54:49 +02:00
Alex Henrie
b87dcee5ea include: Add IsReparseTagNameSurrogate.
Based on a patch by Erich E. Hoover.
2023-07-06 21:04:45 +02:00
Jacek Caban
6892434b22 winedump: Add support for dumping IMPORT_OBJECT_NAME_EXPORTAS symbols.
This is used by ARM64EC importlibs.
2023-07-03 22:15:43 +02:00
Xin Xu
d291f40472 include: Fix spelling error in InterlockedDecrementSizeT(). 2023-06-28 18:56:28 +02:00
Alexandre Julliard
56cfbf6b86 include: Only enable the non-inline NtCurrentTeb() on the Unix side. 2023-05-31 12:32:11 +02:00
Martin Storsjö
0fac6bcfa4 include: Fix the use of __getReg for aarch64/msvc mode.
Clang requires the __getReg function to be declared in addition to
be declared as an intrinsic with the pragma.

This fixes the following error:

../wine/include/winnt.h:2412:27: error: call to undeclared library function '__getReg' with type 'unsigned long long (int)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    return (struct _TEB *)__getReg(18);
                          ^
../wine/include/winnt.h:2412:27: note: include the header <intrin.h> or explicitly provide a declaration for '__getReg'
1 error generated.

Signed-off-by: Martin Storsjö <martin@martin.st>
2023-05-31 10:08:02 +02:00
Paul Gofman
4806b1c226 kernelbase/tests: Add tests for MEM_PRESERVE_PLACEHOLDER with UnmapViewOfFile2(). 2023-05-30 12:12:09 +02:00
Alexandre Julliard
7f088b0b13 ntdll: Use x18 for the TEB on ARM64. 2023-05-30 12:12:09 +02:00
André Zwing
dfe94187c0 winedump: Recognize RISC-V PEs. 2023-05-24 18:39:47 +02:00
Brendan Shanks
820a9d0d6c include: Implement C_ASSERT() using the C11 _Static_assert() if available. 2023-05-09 14:52:06 +02:00
Alexandre Julliard
5b6e82f0f9 ntdll: Handle the extended memory attributes in NtAllocateVirtualMemoryEx(). 2023-05-09 14:28:04 +02:00
Alexandre Julliard
b7f6620c01 include: Add the ARM64EC context structure. 2023-04-19 14:31:00 +02:00
Alexandre Julliard
6e348640c5 include: Add some CHPE definitions. 2023-04-18 17:49:23 +02:00
Stefan Dösinger
64eed89a53 include: X86 msvc has _InterlockedExchangePointer and _InterlockedCompareExchangePointer.
I fixed this issue in ad05f33d67, but a40973f20 regressed this again. I
was carrying a patch for quite a while, feeling dejavu.

According to boost they are available since MSVC 2015. I don't have old
versions of msvc hanging around, and we don't put much value in keeping
old versions working, so just use them unconditionally.
2023-04-11 12:36:53 +02:00
Alex Henrie
44e1e9438c include: Allow multiple definitions on GCC with DECLSPEC_SELECTANY.
Needed to compile Tera Term.

As far as I can tell, GCC has always supported __attribute__((weak)).
2023-03-22 20:03:52 +01:00
Alexandre Julliard
5a1d431b4b ntdll: Implement NtWow64IsProcessorFeaturePresent(). 2023-03-15 11:48:57 +01:00
Brendan Shanks
ac031bff9e kernel32: Implement GetFirmwareType(). 2023-03-06 11:09:03 +01:00
Alexandre Julliard
d5468b9cac ntdll: Implement RtlAddProcessTrustLabelAce(). 2023-03-01 21:39:30 +01:00
Alexandre Julliard
cd7e86599e winedump: Initial support for dumping PE dynamic relocations. 2023-02-08 12:10:13 +01:00
Alexandre Julliard
51adaa33e3 winedump: Print more information from the PE Load Config directory. 2023-02-07 18:37:00 +01:00
Hans Leidekker
1318f8aa0a ntdll: Fix a test failure on Windows 11. 2023-01-12 16:24:31 +01:00
Paul Gofman
7e8bb68f95 ntdll: Support HighestEndingAddress in NtAllocateVirtualMemoryEx(). 2022-11-10 22:00:35 +01:00
Alexandre Julliard
988d9ddbf5 ntdll: Don't inline NtCurrentTeb() in Unix libraries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-11-09 21:10:29 +01:00
Santino Mazza
8230742016 include: Define REG_APP_HIVE and REG_PROCESS_PRIVATE. 2022-09-22 17:58:12 +02:00
Jinoh Kang
d5f5834735 include: Define atomic read/write helpers for 32-bit integers.
Based on the corresponding functions from Windows SDK header files.

Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-09-15 13:47:45 +02:00
Jinoh Kang
67e4807ba5 include: Move WIN32_MEMORY_RANGE_ENTRY from winnt.h to winbase.h.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-07-13 16:10:04 +02:00
Dmitry Timoshkov
82c30480c9 include: Fix a typo in _InterlockedXor64() intrinsic declaration.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-07-07 19:10:02 +02:00
Alexandre Julliard
a40973f204 include: Add a number of 64-bit interlocked functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-23 10:55:06 +02:00
Jinoh Kang
253a2e2edb include: Define fast fail codes and the __fastfail() intrinsic.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-05-31 11:43:28 +02:00
Nikolay Sivov
30f1777e87 kernelbase/tests: Add some VirtualAlloc2() tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-20 11:37:24 +02:00
Brendan Shanks
eb55f64d52 include: Add __WINE_DEALLOC attribute and use it for allocation functions.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 18:36:10 +02:00
Brendan Shanks
fd1b9afc1d include: Add __WINE_MALLOC attribute and use it for allocation functions.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 18:36:10 +02:00
Brendan Shanks
1c4131ba78 include: Add WINE_ALLOC_SIZE attribute to heap_calloc().
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 22:10:55 +02:00
Martin Storsjö
55177136cc include: Add a declaration of _InterlockedExchangeAdd64 for MSVC mode for aarch64.
This matches the corresponding declaration for x86_64.

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-25 11:37:56 +02:00
Rémi Bernon
e37740c62c include: Add ACTIVATION_CONTEXT_SECTION_WINRT_ACTIVATABLE_CLASSES declaration.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-06 23:07:20 +02:00
Alexandre Julliard
09e233790e include: Update __MSABI_LONG definition for WINE_NO_LONG_TYPES support.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-25 19:02:18 +01:00
Stefan Dösinger
2f7c665999 include: Remove an incorrect InterlockedCompareExchange128 function.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:33 +01:00
Stefan Dösinger
20c2e5ba28 include: InterlockedExchangeAdd64 msvc intrinsic does not exist in x86.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:33 +01:00
Alexandre Julliard
f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Zebediah Figura
c5bdd938d2 include: Define InterlockedExchangeAdd64() and InterlockedExchangeAddSizeT().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 11:08:14 +01:00
Alexandre Julliard
4c2b6af10f include: Define a few more intrinsic functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:06 +01:00
Mohamad Al-Jaf
e214b99ae6 include: Add namespaceapi.h file.
Required by IE11.

Signed-off-by: Mohamad Al-Jaf <mohamadaljaf@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 16:19:48 +01:00
Paul Gofman
bf8b185b91 kernelbase: Add stub for PrefetchVirtualMemory().
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 15:37:24 +01:00
Stefan Dösinger
ad05f33d67 include: _InterlockedExchangePointer is an intrinsic on x86 in newer MSVC versions.
msvc 2019 complains that _InterlockedCompareExchangePointer and
_InterlockedExchangePointer are intrinsics and cannot be defined
even when building for x86. If I read Microsoft's header right
that started with msvc 2016.

Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-08 20:40:09 +01:00
Alexandre Julliard
19d5734e20 include: Always add defines for the Interlocked* functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-14 15:28:56 +02:00
Alexandre Julliard
d4259ac8e9 include: Import specstrings.h and related headers from Mingw.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:39:20 +02:00
Alexandre Julliard
5d18d4df84 include: Define DECLSPEC_HIDDEN in guiddef.h if necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-13 13:05:24 +02:00
Jacek Caban
a7ecf08040 include: Don't use DECLSPEC_HIDDEN for NTSYSAPI in Unix libs.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 20:09:20 +02:00