[Bug 37540] Multiple games and applications wrapped with Enigma v4 and GG DRM schemes crash on startup (incompatible with use of position independent code (PIC) in Wine dlls)
wine-bugs at winehq.org
wine-bugs at winehq.org
Mon Nov 26 11:11:01 CST 2018
https://bugs.winehq.org/show_bug.cgi?id=37540
Zebediah Figura <z.figura12 at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |z.figura12 at gmail.com
--- Comment #23 from Zebediah Figura <z.figura12 at gmail.com> ---
Hello Anastasius, a couple questions:
(1) How does Enigma copy functions? Is getting rid of the GOT pointer really
enough to make it work? Trying to copy an entire function is a very tenuous
process, and it seems like it could easily break (if not now, then in the
future) on things like assuming that the function is contiguous, or relative
jmp/call, or TCO...
(2) Along the lines of comment 22, while x86-32 PIC is arguably not even
worthwhile, x86-64 PIC is all but built in, and definitely more performant.
AFAIU it won't be broken by hot-patching in the same way that x86 PIC is, but
it could certainly be broken by function copying (unless, of course, the copier
is smart enough to understand RIP-relative addressing). Is this a concern? Are
you aware of schemes that might need -fno-PIC on x86-64? Though, if Gabriel is
correct that Windows uses PIC there, I guess this is unlikely.
(2b) Similarly, what about ARM? (What does PIC even look like on ARM?)
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
More information about the wine-bugs
mailing list