[Bug target/91710] [9/10 Regression] unexpected ABI change note
jbeulich at suse dot com
gcc-bugzilla@gcc.gnu.org
Mon Nov 11 16:56:00 GMT 2019
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 &&.)
More information about the Gcc-bugs
mailing list