[Bug target/78397] The stack is not 8 bytes aligned on ARM

2017-01-20 Thread rearnsha at gcc dot gnu.org
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

2017-01-13 Thread rearnsha at gcc dot gnu.org
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

2017-01-13 Thread alexandre.martins at stormshield dot eu
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

2017-01-11 Thread rearnsha at gcc dot gnu.org
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

2016-11-17 Thread alexandre.martins at stormshield dot eu
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

2016-11-17 Thread alexandre.martins at stormshield dot eu
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