On 10.01.2025 10:05, Martin Storsjö wrote:
On Fri, 10 Jan 2025, Martin Storsjö wrote:
On Thu, 9 Jan 2025, Jacek Caban wrote:
From: Billy Laws <blaw...@gmail.com>
Signed-off-by: Jacek Caban <ja...@codeweavers.com>
---
mingw-w64-headers/include/winnt.h | 3 +++
1 file changed, 3 insertions(+)
This looks ok. However - we have RtlIsEcCode available
unconditionally for all architectures in
mingw-w64-crt/lib-common/kernel32.def.in (since
d367cc9d75f3669961463c631d1ab65434e27517).
Since arm64ec operates in the x86_64 "namespace" when it comes to
DLLs, I presume this means that the function, technically, also is
available on plain regular x86_64. Does it exist in pure aarch64
kernel32.dll as well? (From looking at the hybrid arm64x kernel32.dll
on win11, the function does seem to be listed in the default printout
from "llvm-readobj --coff-exports", I guess that's the native aarch64
version of things?)
It's listed, but in the version that I have, it's only inside
HybridObject section. It means that it's exported only in ARM64EC
namespace. If it was exported in both, it would be additionally listed
before that section.
It does seem to be missing from the arm32 version of kernel32.dll
though.
Not sure if we strictly need to add ifdefs to the .def.in to make
sure it's not included in the import library there - but I think the
header ifdef here could be wider, to allow it to be called elsewhere
too? Although as WinSDK only exposes the function in arm64ec mode,
perhaps it's best to just match that.
It could be `#ifdef __x86_64__`. Thinking some more about it, I can see
valid use cases for calling it from code built as x86_64 (not EC) and
Wine already does that. I will change it.
Another aspect I noted here; this function is also listed in
api-ms-win-core-rtlsupport-l1-2-2.dll according to the MS docs, but we
don't have an apiset import library for that one. (I guess that we
should do a bigger update of the apisets in order to pick it up there.)
There is also rtlsupportapi.h, which partially duplicates winnt.h. I
guess we could just import it from Wine.
Thanks,
Jacek
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public