64-bit TEB on WoW64

Fabian Maurer dark.shadow4 at web.de
Mon May 20 13:12:07 CDT 2019


> 2. Similar to the aarch64 issue with x18, find a way to save and
> restore %gs at the boundary between PE modules and native modules.

IMHO #2 sounds like the best possible course. We already have something
similar for user32 wndprocs, although on a way less intrusive scale.

Here the x18 staging patch for reference: https://github.com/wine-staging/
wine-staging/blob/00b434ec7f1123c221dae2006b33339a808cb24b/patches/ntdll-
aarch-TEB/0002-ntdll-Always-restore-TEB-to-x18-on-aarch-64-on-retur.patch

Would something like this already work? Ideally we wouldn't want to use relay
for that, but it would be a start. If this covers the usecases of that game,
that is.

On a side-note, does anyone know how big the performance hit would be? Because
in my naive thinking, it shouldn't be too bad. But then again, I'm not
familiar with performance tuning.

Regards,
Fabian Maurer





More information about the wine-devel mailing list