https://bugs.winehq.org/show_bug.cgi?id=56371
Bernhard Übelacker bernhardu@mailbox.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bernhardu@mailbox.org
--- Comment #1 from Bernhard Übelacker bernhardu@mailbox.org --- Created attachment 76443 --> https://bugs.winehq.org/attachment.cgi?id=76443 debug-workaround.diff
I received this message also with vanilla wine 9.8.
And I think I could follow it back to winuae trying to allocate 0xa0100000 bytes at address 0x80000000. As the end of this allocation exceeds the 32-bit addressable area, winuae tries another allocation without requesting a start address [1].
This second allocation returns an address also starting above the 32-bit boundary, and therefore triggers the visible message "JIT: 64-bit pointer".
This problematic size of 0xa0100000 seems to be calculated from the returned values of calls to GlobalMemoryStatus / GlobalMemoryStatusEx [3].
By returning in wine from GlobalMemoryStatusEx some smaller values than the real ones (attached diff), I got winuae to just reserve 0x10100000 bytes at address 0x80000000, which seems to work and produces no more error message.
Therefore it looks like this is related to the values returned by GlobalMemoryStatus(Ex).
[1] https://github.com/tonioni/WinUAE/blob/5200/vm.cpp#L308-L311 [2] https://github.com/tonioni/WinUAE/blob/5200/jit/compemu.h#L576-L577 [3] https://github.com/tonioni/WinUAE/blob/5200/od-win32/mman.cpp#L161-L215