[Bug 27680] 64 bit Aion client crashes on load (violation of the Windows 64-bit ABI, stack pointer (RSP) must be 16-byte aligned when making a call to Win64 API)

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Apr 2 16:31:40 CDT 2012


Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
            Summary|64 bit Aion client crashes  |64 bit Aion client crashes
                   |on load                     |on load (violation of the
                   |                            |Windows 64-bit ABI, stack
                   |                            |pointer (RSP) must be
                   |                            |16-byte aligned when making
                   |                            |a call to Win64 API)

--- Comment #5 from Anastasius Focht <focht at gmx.net> 2012-04-02 16:31:40 CDT ---

Alexandre is right ... 

On Windows this app probably gets away because there are no MMX/SSE
instructions in native API code path which might cause alignment fault.
The native API will most likely end very quickly in syscall without any
additional validation/copying overhead.

I made some tests, manually fixing the API calls when required using per-API
suppression of MMX/SSE instruction generation (__attribute__ ((__target__
("no-mmx"))) __attribute__ ((__target__ ("no-sse")))) and for all called
sub-functions -> debug trace) and it seems the app calls more Win64 API with
misaligned stack pointer ... :|

Disabling generation of SIMD instructions won't help in some situations: any
page fault due to invalid parameters will blow the thing up too because the x64
exception handling also depends on 16-byte alignment constraint.

My guess: the obfuscator messed their code up, causing the misalignment.

If Alexandre has no objections we can use this bug as collector for apps that 
violate the ABI for Windows x64 (misaligned stack pointer) but mark it WONTFIX?


Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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