https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108910
Christophe Lyon <clyon at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rsandifo at gcc dot gnu.org --- Comment #6 from Christophe Lyon <clyon at gcc dot gnu.org> --- I can see that aarch64_function_arg_alignment has: if (!AGGREGATE_TYPE_P (type)) return TYPE_ALIGN (TYPE_MAIN_VARIANT (type)); which returns 512 with the testcase from comment #0 type is (TYPE_MAIN_VARIANT(type) is the same): <pointer_type 0x7ffff74f7bd0 type <real_type 0x7ffff76222a0 float SF size <integer_cst 0x7ffff761e060 constant 32> unit-size <integer_cst 0x7ffff761e078 constant 4> align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff76222a0 precision:32 pointer_to_this <pointer_type 0x7ffff7622888>> sizes-gimplified public unsigned DI size <integer_cst 0x7ffff7602e10 type <integer_type 0x7ffff761a0a8 bitsizetype> constant 64> unit-size <integer_cst 0x7ffff7602e28 type <integer_type 0x7ffff761a000 sizetype> constant 8> user align:512 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type 0x7ffff7622888 attributes <tree_list 0x7ffff74fb280 purpose <identifier_node 0x7ffff74fc8c0 aligned> value <tree_list 0x7ffff74fb208 value <integer_cst 0x7ffff7769b58 constant 64>>>>