Compiler should use stackalign=16 on x86-32
Original Reporter info from Mantis: denial
-
Reporter name: Daniel Glöckner
Original Reporter info from Mantis: denial
- Reporter name: Daniel Glöckner
Description:
GCC on Linux x86-32 nowadays assumes the stack is aligned to 16 bytes. The alignment has been documented in a supplement to the ABI (Section 2.2.2 of https://www.uclibc.org/docs/psABI-i386.pdf).
Failing to align the stack will cause crashes when an external function is called that stores an SSE value in a stack variable.
Additional information:
Someone else also had this problem a few years ago:
http://forum.lazarus.freepascal.org/index.php?topic=29097.0
Mantis conversion info:
- Mantis ID: 32710
- OS: Linux
- Platform: i386
- Version: 3.1.1
- Monitored by: » Vincent (Vincent Snijders)