Summary: | x86_linux asm _start functions do not keep 16-byte aligned stack pointer | ||
---|---|---|---|
Product: | [Developer tools] valgrind | Reporter: | chh |
Component: | memcheck | Assignee: | Julian Seward <jseward> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | dimitry, mark |
Priority: | NOR | ||
Version: | 3.11.0 | ||
Target Milestone: | --- | ||
Platform: | Android | ||
OS: | Other | ||
Latest Commit: | Version Fixed In: |
Description
chh
2016-09-01 20:02:04 UTC
Note that this is also true for gcc x86[-32] now. The abi used to say, and older gcc only guaranteed/relied upon, the stack being 4 byte aligned. But a couple of years ago the abi and gcc got changed to align the stack at a 16 byte boundary. See e.g. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=40838 With gcc generated code it only seems an issue if the called function uses any sse instructions. Committed, r16075. Thanks for the patch. |