[Bug target/78397] The stack is not 8 bytes aligned on ARM
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78397 Richard Earnshaw changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID --- Comment #6 from Richard Earnshaw --- Not a gcc bug.
[Bug target/78397] The stack is not 8 bytes aligned on ARM
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78397 --- Comment #5 from Richard Earnshaw --- (In reply to Alexandre Martins from comment #4) > Unfortunatly, it's not crashing into the __aeabi_read_tp function, but into > the dynamic linker of freebsd (rtld-elf). For info, this function is located > into the libc on freebsd. > > Must the dynamic linker assume the stack can be miss aligned and re-align it > if the function called is a 'public interface' ? The dynamic linker cannot assume ABI privileges in this respect. Ever. That really is a bug in your dynamic linker.
[Bug target/78397] The stack is not 8 bytes aligned on ARM
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78397 --- Comment #4 from Alexandre Martins --- Unfortunatly, it's not crashing into the __aeabi_read_tp function, but into the dynamic linker of freebsd (rtld-elf). For info, this function is located into the libc on freebsd. Must the dynamic linker assume the stack can be miss aligned and re-align it if the function called is a 'public interface' ?
[Bug target/78397] The stack is not 8 bytes aligned on ARM
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78397 --- Comment #3 from Richard Earnshaw --- The __aeabi_read_tp call is to a special helper function and not really considered to be a 'public interface'; the EABI only requires conformance to the stack alignment constraints at public interfaces. As such, I think that really this is a bug in the clang helper libraries and that they shouldn't be making such an assumption. The proposed patch is undesirable as it would extra stack activity in genuine leaf functions as well as in this case and that makes the code less efficient.
[Bug target/78397] The stack is not 8 bytes aligned on ARM
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78397 Alexandre Martins changed: What|Removed |Added CC||alexandre.martins@stormshie ||ld.eu --- Comment #2 from Alexandre Martins --- Created attachment 40069 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40069=edit proposed patch When trying to fix this bug, I made this patch. Hope it help ...
[Bug target/78397] The stack is not 8 bytes aligned on ARM
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78397 --- Comment #1 from Alexandre Martins --- Created attachment 40068 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40068=edit Demo generated assembly