Imported functions in ARM64EC have two `__imp_` symbols:
- The usual `__imp_` symbol, which is guaranteed to be directly callable from ARM64 code and is used when calling the function (this may be a thunk if the imported function is x86_64).
- The `__imp_aux_` symbol, which is the exact pointer as returned by `GetProcAddress` (it could point to an x86_64 function or the export thunk of an ARM64EC function).
When C code retrieves the address of a function, it uses `__imp_aux_` instead of `__imp_`. This is reflected in `__ASM_DEFINE_IMPORT` by defining `__imp_` to the mangled function name and `__imp_aux_` to the demangled one.
We currently don't depend on it in Wine itself, but it makes the whole thing more correct. Tested by adding `trace("%p\n", exp2);` to msvcrt tests.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/6487
Use the unicode interface by default and return the same value
as before this change.
There are a few locations, that called W->A. It will return the
same value as before for the Ansi version but the unicode one will
now report an error.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/6481
--
v3: winedmo: Introduce a winedmo_stream callback interface for I/O.
winedmo: Use the stream context as a buffer for larger reads.
winedmo: Use the stream context to track stream position.
winedmo: Allocate a client-side stream context with the demuxers.
winedmo: Implement FFmpeg seek and read with user callbacks.
https://gitlab.winehq.org/wine/wine/-/merge_requests/6480