[Patch][GCC][AArch64] - Lower store and load neon builtins to gimple
authorAndre Simoes Dias Vieira <andre.simoesdiasvieira@arm.com>
Wed, 20 Oct 2021 12:19:10 +0000 (13:19 +0100)
committerAndre Vieira <andre.simoesdiasvieira@arm.com>
Wed, 20 Oct 2021 12:22:27 +0000 (13:22 +0100)
commitad44c6a56c777bd1eddb214095fff36c8dba9246
tree2a2df53ba2c33f382cfeb88da41b8c1c473183a6
parent914045dff10fbd27de27b90a0ac78a0058b2c86e
[Patch][GCC][AArch64] - Lower store and load neon builtins to gimple

20-10-2021  Andre Vieira  <andre.simoesdiasvieira@arm.com>
    Jirui Wu  <jirui.wu@arm.com>
gcc/ChangeLog:

* config/aarch64/aarch64-builtins.c
(aarch64_general_gimple_fold_builtin):
lower vld1 and vst1 variants of the neon builtins
* config/aarch64/aarch64-protos.h:
(aarch64_general_gimple_fold_builtin): Add gsi parameter.
* config/aarch64/aarch64.c (aarch64_general_gimple_fold_builtin):
Likwise.

gcc/testsuite/ChangeLog:

* gcc.target/aarch64/fmla_intrinsic_1.c: prevent over optimization.
* gcc.target/aarch64/fmls_intrinsic_1.c: Likewise.
* gcc.target/aarch64/fmul_intrinsic_1.c: Likewise.
* gcc.target/aarch64/mla_intrinsic_1.c: Likewise.
* gcc.target/aarch64/mls_intrinsic_1.c: Likewise.
* gcc.target/aarch64/mul_intrinsic_1.c: Likewise.
* gcc.target/aarch64/simd/vmul_elem_1.c: Likewise.
* gcc.target/aarch64/vclz.c: Likewise.
* gcc.target/aarch64/vneg_s.c: Likewise.
12 files changed:
gcc/config/aarch64/aarch64-builtins.c
gcc/config/aarch64/aarch64-protos.h
gcc/config/aarch64/aarch64.c
gcc/testsuite/gcc.target/aarch64/fmla_intrinsic_1.c
gcc/testsuite/gcc.target/aarch64/fmls_intrinsic_1.c
gcc/testsuite/gcc.target/aarch64/fmul_intrinsic_1.c
gcc/testsuite/gcc.target/aarch64/mla_intrinsic_1.c
gcc/testsuite/gcc.target/aarch64/mls_intrinsic_1.c
gcc/testsuite/gcc.target/aarch64/mul_intrinsic_1.c
gcc/testsuite/gcc.target/aarch64/simd/vmul_elem_1.c
gcc/testsuite/gcc.target/aarch64/vclz.c
gcc/testsuite/gcc.target/aarch64/vneg_s.c