[Bug target/77728] [5/6/7/8 Regression] Miscompilation multiple vector iteration on ARM
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Apr 25 13:56:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728
--- Comment #37 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Tue Apr 25 13:56:10 2017
New Revision: 247241
URL: https://gcc.gnu.org/viewcvs?rev=247241&root=gcc&view=rev
Log:
PR target/77728
* config/aarch64/aarch64.c (struct aarch64_fn_arg_alignment): New
type.
(aarch64_function_arg_alignment): Return aarch64_fn_arg_alignment
struct. Ignore DECL_ALIGN of decls other than FIELD_DECL for
the alignment computation, but return their maximum in warn_alignment.
(aarch64_layout_arg): Adjust aarch64_function_arg_alignment caller.
Emit a -Wpsabi note if warn_alignment is 16 bytes, but alignment
is smaller.
(aarch64_function_arg_boundary): Likewise. Simplify using MIN/MAX.
(aarch64_gimplify_va_arg_expr): Adjust aarch64_function_arg_alignment
caller.
testsuite/
* g++.dg/abi/pr77728-2.C: New test.
Added:
branches/gcc-7-branch/gcc/testsuite/g++.dg/abi/pr77728-2.C
Modified:
branches/gcc-7-branch/gcc/ChangeLog
branches/gcc-7-branch/gcc/config/aarch64/aarch64.c
branches/gcc-7-branch/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list