[PATCH] tree-optimization/103345: Improved load merging

Richard Biener richard.guenther@gmail.com
Mon Nov 22 12:28:58 GMT 2021


On Mon, Nov 22, 2021 at 9:40 AM Roger Sayle <roger@nextmovesoftware.com> wrote:
>
>
> This patch implements PR tree-optimization/103345 to merge adjacent
> loads when combined with addition or bitwise xor.  The current code
> in gimple-ssa-store-merging.c's find_bswap_or_nop alreay handles ior,
> so that all that's required is to treat PLUS_EXPR and BIT_XOR_EXPR in
> the same way at BIT_IOR_EXPR.  Many thanks to Andrew Pinski for
> pointing out that this also resolves PR target/98953.
>
> This patch has been tested on x86_64-pc-linux-gnu with make bootstrap
> and make -k check with no new failures.  The new testcases should also
> pass (but haven't been tested) on other endian targets.
>
> Ok for mainline?

OK.

Thanks,
Richard.

>
> 2021-11-22  Roger Sayle  <roger@nextmovesoftware.com>
>
> gcc/ChangeLog
>         PR tree-optimization/98953
>         PR tree-optimization/103345
>         * gimple-ssa-store-merging.c (find_bswap_or_nop_1): Handle
>         BIT_XOR_EXPR and PLUS_EXPR the same as BIT_IOR_EXPR.
>         (pass_optimize_bswap::execute): Likewise.
>
> gcc/testsuite/ChangeLog
>         PR tree-optimization/98953
>         PR tree-optimization/103345
>         * gcc.dg/tree-ssa/pr98953.c: New test case.
>         * gcc.dg/tree-ssa/pr103345.c: New test case.
>
>
> Thanks in advance,
> Roger
> --
>


More information about the Gcc-patches mailing list