Commit graph

593 commits

Author SHA1 Message Date
Paul Gofman 7ae488a2bb ntdll: Don't hardcode xstate size in syscall frame. 2024-02-16 23:32:06 +01:00
Alexandre Julliard b9a985a677 include: Add some public exception handling structures. 2024-02-13 17:59:38 +01:00
Paul Gofman 0b441c4c8f kernel32/tests: Add tests for critical section debug info presence. 2024-02-13 15:46:24 +01:00
Alexandre Julliard de492f9a34 ntdll: Implement RtlLookupFunctionTable. 2024-02-12 22:53:21 +01:00
Eric Pouech d68a0e650a kernel32/tests: Test DUPLICATE_SAME_ATTRIBUTES flag in DuplicateHandle().
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-02-06 11:39:58 +01:00
Jacek Caban 3c19b29ce6 include: Add RtlRestoreContext declaration. 2024-02-05 21:50:12 +01:00
Louis Lenders a24039ad09 ntdll: Add stub for RtlGetDeviceFamilyInfoEnum.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56259
2024-01-31 11:04:29 +01:00
Eric Pouech 46ab4f0ce7 include: Avoid redefining _InterlockedCompareExchange128 as inline.
Note the _InterlockedCompareExchange128 for a x86_64 machine is only
defined as intrinsic when -mcx16 option is enabled.
But we use always use the intrinsic definition on x86_64 so that
compilation done without the -mcx16 could be detected (on C++ only).
And the intrinsic has been added recently to aarch64 machine for clang.

Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-01-22 14:16:07 +01:00
Eric Pouech 72c4adc036 include: Avoid defining intrinsic functions as inline.
Now clang provides intrinsic variant of Interlocked*64 family on i386
machine.

Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-01-22 14:15:43 +01:00
Nikolay Sivov 26f11bdfe5 ntdll: Use public type for SystemSupportedProcessorArchitectures returned data.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2023-12-06 10:20:50 +01:00
Alexandre Julliard c14de4c85e include: Remove DECLSPEC_HIDDEN definition. 2023-11-29 23:16:39 +01:00
Jacek Caban dc4bad6d85 include: Don't use dllexport attribute for Wine PE modules. 2023-11-15 23:03:52 +01:00
Yuxuan Shui 74a3b133fa include: Add InterlockedExchangeAdd16. 2023-11-10 00:03:44 +01:00
Alexandre Julliard 4502eb56ba configure: Use hidden visibility also when building Unix libraries. 2023-11-08 10:27:21 +01:00
Alexandre Julliard 1f769067a3 include: Use NTSYSAPI for all ntdll exports. 2023-11-03 18:05:01 +01:00
Alexandre Julliard 3bb752736c include: Stop pretending to support big-endian. 2023-10-10 11:11:26 +02:00
Jacek Caban cdb9b60162 include: Support ARM64EC target in winnt.h. 2023-09-29 17:23:52 +02:00
Jacek Caban 71ebc22d63 include: Move __getReg intrinsic to intrin.h. 2023-09-29 17:23:51 +02:00
Alexandre Julliard db3af1b238 ntdll: Consistently use the IMAGE_FIRST_SECTION helper macro. 2023-09-25 13:02:09 +02:00
Alex Henrie 38a7e68af1 include: Move RTL functions that belong in winnt.h from winternl.h to winnt.h. 2023-09-19 14:27:17 +02:00
Alexandre Julliard d08723fbf7 include: Add DECLSPEC_NOINLINE macro. 2023-09-13 22:05:46 +02:00
Paul Gofman 9cf5505632 include: Define up to date exception flags. 2023-09-05 11:36:40 +02:00
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