[PATCH 0/2][GCC] arm: Define MVE types internally

Murray Steele Murray.Steele@arm.com
Tue Nov 16 10:14:46 GMT 2021


Hi all,

This patch series implements the arm MVE ACLE types currently found
under config/arm/arm_mve_types.h internally via a new pragma. Exposing
the MVE ACLE types internally allows for an MVE intrinsics
implementation similar to the current SVE implementation.

Any prefix of the patch series should build and pass regression tests.

Thanks,
Murray

---

Murray Steele (2):
  arm: Move arm_simd_info array declaration into header
  arm: Define MVE types internally via pragma

 gcc/config.gcc                                |   2 +-
 gcc/config/arm/arm-builtins.c                 |  87 +-------
 gcc/config/arm/arm-builtins.h                 |  87 ++++++++
 gcc/config/arm/arm-c.c                        |  21 ++
 gcc/config/arm/arm-mve-builtins.cc            | 192 ++++++++++++++++++
 gcc/config/arm/arm-mve-builtins.def           |  41 ++++
 gcc/config/arm/arm-mve-builtins.h             |  34 ++++
 gcc/config/arm/arm-protos.h                   |   5 +
 gcc/config/arm/arm_mve_types.h                |  30 +--
 gcc/config/arm/t-arm                          |  10 +
 .../arm/mve/general-c/type_redef_1.c          |   7 +
 .../arm/mve/general-c/type_redef_10.c         |   7 +
 .../arm/mve/general-c/type_redef_11.c         |   7 +
 .../arm/mve/general-c/type_redef_12.c         |   7 +
 .../arm/mve/general-c/type_redef_13.c         |   7 +
 .../arm/mve/general-c/type_redef_14.c         |   7 +
 .../arm/mve/general-c/type_redef_15.c         |   7 +
 .../arm/mve/general-c/type_redef_16.c         |   7 +
 .../arm/mve/general-c/type_redef_17.c         |   7 +
 .../arm/mve/general-c/type_redef_18.c         |   7 +
 .../arm/mve/general-c/type_redef_19.c         |   7 +
 .../arm/mve/general-c/type_redef_2.c          |   7 +
 .../arm/mve/general-c/type_redef_20.c         |   7 +
 .../arm/mve/general-c/type_redef_21.c         |   7 +
 .../arm/mve/general-c/type_redef_22.c         |   7 +
 .../arm/mve/general-c/type_redef_23.c         |   7 +
 .../arm/mve/general-c/type_redef_24.c         |   7 +
 .../arm/mve/general-c/type_redef_25.c         |   7 +
 .../arm/mve/general-c/type_redef_26.c         |   7 +
 .../arm/mve/general-c/type_redef_27.c         |   7 +
 .../arm/mve/general-c/type_redef_28.c         |   7 +
 .../arm/mve/general-c/type_redef_29.c         |   7 +
 .../arm/mve/general-c/type_redef_3.c          |   7 +
 .../arm/mve/general-c/type_redef_30.c         |   7 +
 .../arm/mve/general-c/type_redef_31.c         |   7 +
 .../arm/mve/general-c/type_redef_4.c          |   7 +
 .../arm/mve/general-c/type_redef_5.c          |   7 +
 .../arm/mve/general-c/type_redef_6.c          |   7 +
 .../arm/mve/general-c/type_redef_7.c          |   7 +
 .../arm/mve/general-c/type_redef_8.c          |   7 +
 .../arm/mve/general-c/type_redef_9.c          |   7 +
 .../arm/mve/general/double_pragmas_1.c        |   8 +
 .../gcc.target/arm/mve/general/nomve_1.c      |   3 +
 gcc/testsuite/gcc.target/arm/mve/mve.exp      |   6 +
 44 files changed, 627 insertions(+), 116 deletions(-)
 create mode 100644 gcc/config/arm/arm-mve-builtins.cc
 create mode 100644 gcc/config/arm/arm-mve-builtins.def
 create mode 100644 gcc/config/arm/arm-mve-builtins.h
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_1.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_10.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_11.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_12.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_13.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_14.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_15.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_16.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_17.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_18.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_19.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_2.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_20.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_21.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_22.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_23.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_24.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_25.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_26.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_27.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_28.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_29.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_3.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_30.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_31.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_4.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_5.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_6.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_7.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_8.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general-c/type_redef_9.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general/double_pragmas_1.c
 create mode 100644 gcc/testsuite/gcc.target/arm/mve/general/nomve_1.c


More information about the Gcc-patches mailing list