https://bugs.winehq.org/show_bug.cgi?id=47125
--- Comment #4 from jeffersoncarpenter2@gmail.com --- (In reply to Austin English from comment #3)
(In reply to jeffersoncarpenter2 from comment #2)
Expected behavior for what reason? I don't know if this is a problem (valgrind fails to recognize an instruction later and kills the program, then there's an invalid write reported from the SIGILL handler), but if it were expected and correct behavior, then why print a warning?
From loader/preloader.c:
To do this, we implement our own shared object loader that reserves memory
that is important to Wine, and then loads the main binary and its ELF
interpreter.
We will try to set up the stack and memory area so that the program that
loads after us (eg. the wine binary) never knows we were here, except that
areas of memory it needs are already magically reserved.
The following memory areas are important to Wine:
0x00000000 - 0x00110000 the DOS area
0x80000000 - 0x81000000 the shared heap
??? - ??? the PE binary load address (usually starting at
0x00400000)
Nonetheless, there's a reason why the region(s) can't be mapped under Valgrind, and I'd like to know what that is.