[0/3] aarch64: ls64 builtin fixes [PR110100,PR110132]

Message ID ZICNVVJIbXMgHgED@arm.com
Headers
Series aarch64: ls64 builtin fixes [PR110100,PR110132] |

Message

Alex Coplan June 7, 2023, 1:59 p.m. UTC
  Hi,

This patch series fixes various defects with the FEAT_LS64 ACLE
implementation in the AArch64 backend.

The series is organised as follows:

 - Patch 1/3 fixes whitespace errors in the existing code.
 - Patch 2/3 fixes PR110100 where we generate wrong code for the st64b
   builtin.
 - Patch 3/3 fixes PR110132, allowing the compiler to define the ACLE builtins
   directly, and also makes the builtins work under LTO.

Bootstrapped/regtested as a series on aarch64-linux-gnu. OK for trunk
and backports back to GCC 12?

Thanks,
Alex

Alex Coplan (3):
  aarch64: Fix whitespace in ls64 builtin implementation [PR110100]
  aarch64: Fix wrong code with st64b builtin [PR110100]
  aarch64: Allow compiler to define ls64 builtins [PR110132]

 gcc/config/aarch64/aarch64-builtins.cc        | 88 +++++++++++--------
 gcc/config/aarch64/aarch64.md                 | 24 ++---
 gcc/config/aarch64/arm_acle.h                 | 33 -------
 .../g++.target/aarch64/acle/acle.exp          | 35 ++++++++
 gcc/testsuite/g++.target/aarch64/acle/ls64.C  | 10 +++
 .../g++.target/aarch64/acle/ls64_lto.C        | 10 +++
 .../gcc.target/aarch64/acle/ls64_lto.c        | 10 +++
 .../gcc.target/aarch64/acle/pr110100.c        |  7 ++
 .../gcc.target/aarch64/acle/pr110132.c        | 15 ++++
 gcc/testsuite/lib/target-supports.exp         |  2 +-
 10 files changed, 151 insertions(+), 83 deletions(-)
 create mode 100644 gcc/testsuite/g++.target/aarch64/acle/acle.exp
 create mode 100644 gcc/testsuite/g++.target/aarch64/acle/ls64.C
 create mode 100644 gcc/testsuite/g++.target/aarch64/acle/ls64_lto.C
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/ls64_lto.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/pr110100.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/acle/pr110132.c
  

Comments

Richard Sandiford June 7, 2023, 3:51 p.m. UTC | #1
Alex Coplan <alex.coplan@arm.com> writes:
> Hi,
>
> This patch series fixes various defects with the FEAT_LS64 ACLE
> implementation in the AArch64 backend.
>
> The series is organised as follows:
>
>  - Patch 1/3 fixes whitespace errors in the existing code.
>  - Patch 2/3 fixes PR110100 where we generate wrong code for the st64b
>    builtin.
>  - Patch 3/3 fixes PR110132, allowing the compiler to define the ACLE builtins
>    directly, and also makes the builtins work under LTO.
>
> Bootstrapped/regtested as a series on aarch64-linux-gnu. OK for trunk
> and backports back to GCC 12?

Yeah, OK for trunk and branches.  Thanks for fixing this.

Richard