On Sun, Nov 5, 2023 at 7:33 PM Richard Sandiford
<richard.sandif...@arm.com> wrote:
>
> align_dynamic_address would output alignment operations even
> for a required alignment of 1 byte.
>
> Tested on aarch64-linux-gnu & x86_64-linux-gnu.  OK to install?

OK

> Richard
>
>
> gcc/
>         * explow.cc (align_dynamic_address): Do nothing if the required
>         alignment is a byte.
> ---
>  gcc/explow.cc | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/gcc/explow.cc b/gcc/explow.cc
> index aa64d5e906c..0be6d2629c9 100644
> --- a/gcc/explow.cc
> +++ b/gcc/explow.cc
> @@ -1201,6 +1201,9 @@ record_new_stack_level (void)
>  rtx
>  align_dynamic_address (rtx target, unsigned required_align)
>  {
> +  if (required_align == BITS_PER_UNIT)
> +    return target;
> +
>    /* CEIL_DIV_EXPR needs to worry about the addition overflowing,
>       but we know it can't.  So add ourselves and then do
>       TRUNC_DIV_EXPR.  */
> --
> 2.25.1
>

Reply via email to