[Bug 38780] AArch64 platforms: register X18 (TEB) must remain reserved for Wine to run 64-bit ARM Windows applications ( Distro aarch64 toolchains need '-ffixed-x18' default, loader/libc/userland )

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Nov 12 16:22:11 CST 2018


https://bugs.winehq.org/show_bug.cgi?id=38780

--- Comment #21 from Martin Storsjö <martin at martin.st> ---
(In reply to Zebediah Figura from comment #20)
> (In reply to Martin Storsjö from comment #19)
> > Currently I'm running with this patch:
> > https://source.winehq.org/patches/data/137759
> > 
> > This pretty much gets the same effect as the suggested compiler handling for
> > prologues/epilogues, but without compiler support - but it doesn't fix
> > callbacks either. This (together with
> > https://source.winehq.org/patches/data/135165) has been a good enough
> > workaround for me so far though.
> 
> Sure, I'd just like to see this fixed in a generic way.
> 
> Is there any obvious infeasibility about my proposal #2? It's weird, but
> seems plausible, and maybe wouldn't even be that hard, if we can leverage
> the same sort of code that -fcall-used-reg uses [disclaimer: I am not a
> compiler enthusiast yet, either]. Plus it means we can use inline TEB access
> in Wine code :-)

Ah, with the reference to -fcall-used-reg, I understand what you mean. Hmm,
I'll have to think about it and poke around and see what's possible.

It turns out that clang doesn't support this flag at all so far, but I'll see
if it is possible to do something to the same effect in LLVM's calling
convention handling.

-- 
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