On Mon, 6 Jan 2025, Jacek Caban wrote:


This is necessary to accommodate ARM64EC, under which CONTEXT refers to the
X86_64 context structure but the regular ARM64 context structure is still
exposed as ARM64_NT_CONTEXT.

Based on patch by Billy Laws.

Signed-off-by: Jacek Caban <ja...@codeweavers.com>
---
mingw-w64-headers/include/winnt.h | 98 +++++++++++++++++++++----------
1 file changed, 68 insertions(+), 30 deletions(-)


In addititon to exposing the existing things, this also adds a few new things:

+#define CONTEXT_ARM64_X18             (CONTEXT_ARM64 | 0x00000010)
+#define CONTEXT_ARM64_UNWOUND_TO_CALL 0x20000000
+#define CONTEXT_UNWOUND_TO_CALL CONTEXT_ARM64_UNWOUND_TO_CALL

+#define CONTEXT_EXCEPTION_ACTIVE    0x08000000
+#define CONTEXT_SERVICE_ACTIVE      0x10000000
+#define CONTEXT_EXCEPTION_REQUEST   0x40000000
+#define CONTEXT_EXCEPTION_REPORTING 0x80000000

These obviously are fine, but it would be nice to call it out in the commit message.


And it seems like it removes duplicate definitions of EXCEPTION_READ_FAULT/EXCEPTION_WRITE_FAULT/EXCEPTION_EXECUTE_FAULT (can you verify that this is the case)?


At the end of the diff, I see this:


-#define OUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK_EXPORT_NAME 
"OutOfProcessFunctionTableCallback"
-
-#endif /* _ARM64_ */
+#ifdef _ARM64_
+  typedef KNONVOLATILE_CONTEXT_POINTERS_ARM64 KNONVOLATILE_CONTEXT_POINTERS, 
*PKNONVOLATILE_CONTEXT_POINTERS;
+#endif // _ARM64_

+#define OUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK_EXPORT_NAME 
"OutOfProcessFunctionTableCallback"

Is there some stray whitespace change here, or I wonder why git didn't keep the OUT_OF_PROCESS_FUNCTION_TABLE_CALLBACK_EXPORT_NAME line untouched in the diff output? Or is it just that lines are moved around, and the diff algorithm needs to add/remove some lines somewhere, and picked this one?

Other than that, this looks ok.

// Martin



_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to