https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91710
--- Comment #4 from jbeulich at suse dot com --- (In reply to Andrew Pinski from comment #3) > @@ -4908,7 +4908,8 @@ aarch64_function_arg_boundary (machine_mode mode, > const_tree type) > bool abi_break; > unsigned int alignment = aarch64_function_arg_alignment (mode, type, > &abi_break); > - if (abi_break & warn_psabi) > + > + if (alignment >= STACK_BOUNDARY && abi_break & warn_psabi) > inform (input_location, "parameter passing for argument of type " > "%qT changed in GCC 9.1", type); Wouldn't this then want to be > PARM_BOUNDARY instead of >= STACK_BOUNDARY? In #1 you also say "But if it is equal to STACK_BOUNDARY ...", so perhaps even > PARM_BOUNDARY && <= STACK_BOUNDARY? I also find it a little odd for the adjustment not be to aarch64_function_arg_alignment()'s setting of abi_break, but I guess doing so would be incompatible with some of the other uses of the function. (Also I guess the opportunity should be taken to convert the slightly suspicious pre-existing & to &&.)