[PATCH v2 1/2] Cygwin: cache IsWow64Process2 host arch in wincap.
Corinna Vinschen
corinna-cygwin@cygwin.com
Tue Nov 26 13:33:45 GMT 2024
Btw...
On Nov 25 11:21, Jeremy Drake via Cygwin-patches wrote:
> @@ -4617,14 +4617,12 @@ find_fast_cwd_pointer ()
> static fcwd_access_t **
> find_fast_cwd ()
> {
> - USHORT emulated, hosted;
> fcwd_access_t **f_cwd_ptr;
>
> - /* First check if we're running in WOW64 on ARM64 emulating AMD64. Skip
> + /* First check if we're running on an ARM64 system. Skip
> fetching FAST_CWD pointer as long as there's no solution for finding
> it on that system. */
> - if (IsWow64Process2 (GetCurrentProcess (), &emulated, &hosted)
> - && hosted == IMAGE_FILE_MACHINE_ARM64)
> + if (wincap.host_machine () == IMAGE_FILE_MACHINE_ARM64)
> return NULL;
We're doing this because nobody being able to debug ARM64 assembler came
up with a piece of code checking the ntdll assembler code to find the
address of the fast_cwd_pointer on ARM64.
You seem to have the knowledge and the means to do that, Jeremy.
Any fun tracking this down?
Thanks,
Corinna
More information about the Cygwin-patches
mailing list