Re: [PATCH][GCC] arm: fix __arm_vld1q_z* and __arm_vst1q_p* intrinsics.

2021-12-22 Thread Murray Steele via Gcc-patches
Hi, On 22/12/2021 16:04, Richard Earnshaw wrote: > > Is there a PR in bugzilla for this? > > R. > No, not at this time. It's something I came across whilst making changes of my own. For completeness, the ACLE specification I am referencing has been added below [1]. [1]:

[PATCH][GCC] arm: fix __arm_vld1q_z* and __arm_vst1q_p* intrinsics.

2021-12-22 Thread Murray Steele via Gcc-patches
Hi All, This patch fixes the implementation of the existing __arm_vld1q_z* and __arm_vst1q_p* MVE intrinsic functions. The MVE ACLE allows for __ARM_MVE_PRESERVE_USER_NAMESPACE to be defined, which removes definitions for intrinsic functions without the __arm_ prefix. __arm_vld1q_z* and

Re: [PATCH v3 2/2][GCC] arm: Declare MVE types internally via pragma

2021-12-21 Thread Murray Steele via Gcc-patches
Hi, I'd like to ping this patch revision [1]. Thanks, Murray [1]: https://gcc.gnu.org/pipermail/gcc-patches/2021-December/586476.html --- On 09/12/2021 15:24, Murray Steele via Gcc-patches wrote: > Changes from original patch: > > 1. Make mentioned changes to changelog. > 2. A

[PATCH v3 2/2][GCC] arm: Declare MVE types internally via pragma

2021-12-09 Thread Murray Steele via Gcc-patches
Changes from original patch: 1. Make mentioned changes to changelog. 2. Add namespace-end comments. 3. Add #error for when arm-mve-builtins.def is included without defining DEF_MVE_TYPE. 4. Make placement of '#undef DEF_MVE_TYPE' consistent. --- This patch moves the implementation of MVE

Re: [PATCH 2/2][GCC] arm: Declare MVE types internally via pragma

2021-12-08 Thread Murray Steele via Gcc-patches
Hi, Thank you for the feedback, I'll make the noted changes to the changelog and add the missing end-of-namespace comments. On 08/12/2021 15:23, Richard Earnshaw wrote: > diff --git a/gcc/config/arm/arm-mve-builtins.def > b/gcc/config/arm/arm-mve-builtins.def > new file mode 100644 > index >

[PING][PATCH 2/2][GCC] arm: Declare MVE types internally via pragma

2021-12-08 Thread Murray Steele via Gcc-patches
Hi, I'd like to ping this patch revision [1]. Thanks, Murray [1]: https://gcc.gnu.org/pipermail/gcc-patches/2021-November/585400.html --- On 25/11/2021 09:42, Murray Steele wrote: > Changes from original patch: > > 1. Merged test_redef_* test files into one > 2. Encapsulated contents of

Re: [PATCH 2/2][GCC] arm: Declare MVE types internally via pragma

2021-11-25 Thread Murray Steele via Gcc-patches
Changes from original patch: 1. Merged test_redef_* test files into one 2. Encapsulated contents of arm-mve-builtins.h in namespace arm_mve (missed in initial patch). 3. Added extern declarations for scalar_types and acle_vector types to arm-mve-builtins.h (missed in initial patch). 4.

Re: [PATCH 1/2][GCC] arm: Move arm_simd_info array declaration into header

2021-11-24 Thread Murray Steele via Gcc-patches
On 18/11/2021 15:40, Richard Earnshaw wrote: > > > On 16/11/2021 10:14, Murray Steele via Gcc-patches wrote: >> Hi all, >> >> This patch moves the arm_simd_type and arm_type_qualifiers enums, and >> arm_simd_info struct from arm-builtins.c into arm-builtins.h h

Re: [PATCH 2/2][GCC] arm: Declare MVE types internally via pragma

2021-11-23 Thread Murray Steele via Gcc-patches
On 23/11/2021 14:16, Richard Earnshaw wrote: > > > On 23/11/2021 09:37, Murray Steele wrote: >> On 18/11/2021 15:45, Richard Earnshaw wrote: >> >>> >>> This is mostly OK, but can't we reduce the number of tests somewhat? For >>> example, I think you can merge type_redef_13.c and type_redef_14.c

Re: [PATCH 2/2][GCC] arm: Declare MVE types internally via pragma

2021-11-23 Thread Murray Steele via Gcc-patches
On 18/11/2021 15:45, Richard Earnshaw wrote: > > This is mostly OK, but can't we reduce the number of tests somewhat? For > example, I think you can merge type_redef_13.c and type_redef_14.c by writing > > /* { dg-do compile } */ > /* { dg-require-effective-target arm_v8_1m_mve_ok } */ > /* {

[PATCH 2/2][GCC] arm: Declare MVE types internally via pragma

2021-11-16 Thread Murray Steele via Gcc-patches
Hi all, This patch moves the implementation of MVE ACLE types from arm_mve_types.h to inside GCC via a new pragma, which replaces the prior type definitions. This allows for the types to be used internally for intrinsic function definitions. Bootstrapped and regression tested on

[PATCH 1/2][GCC] arm: Move arm_simd_info array declaration into header

2021-11-16 Thread Murray Steele via Gcc-patches
Hi all, This patch moves the arm_simd_type and arm_type_qualifiers enums, and arm_simd_info struct from arm-builtins.c into arm-builtins.h header. This is a first step towards internalising the type definitions for MVE predicate, vector, and tuple types. By moving arm_simd_types into a header,

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

2021-11-16 Thread Murray Steele via Gcc-patches
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