[PATCH 3/3] aarch64: Remove macros for vld4[q]_lane Neon intrinsics

Christophe Lyon christophe.lyon.oss@gmail.com
Wed Aug 18 10:09:13 GMT 2021


On Mon, Aug 16, 2021 at 6:38 PM Jonathan Wright via Gcc-patches <
gcc-patches@gcc.gnu.org> wrote:

> Hi,
>
> This patch removes macros for vld4[q]_lane Neon intrinsics. This is a
> preparatory step before adding new modes for structures of Advanced
> SIMD vectors.
>
> Regression tested and bootstrapped on aarch64-none-linux-gnu - no
> issues.
>
> Ok for master?
>
>
Hi Jonathan,

This patch is causing regressions, I'm not sure why you didn't notice them?
     g++:g++.dg/dg.exp=g++.dg/abi/mangle-neon-aarch64.C  -std=c++14 (test
for excess errors)
    g++:g++.dg/dg.exp=g++.dg/abi/mangle-neon-aarch64.C  -std=c++17 (test
for excess errors)
    g++:g++.dg/dg.exp=g++.dg/abi/mangle-neon-aarch64.C  -std=c++2a (test
for excess errors)
    g++:g++.dg/dg.exp=g++.dg/abi/mangle-neon-aarch64.C  -std=c++98 (test
for excess errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -O0  (test for excess errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -O1  (test for excess errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -O2  (test for excess errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -O2 -flto -fno-use-linker-plugin -flto-partition=none  (test for excess
errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  (test for excess
errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -O3 -g  (test for excess errors)

g++:g++.dg/torture/dg-torture.exp=c-c++-common/torture/aarch64-vect-lane-1.c
  -Os  (test for excess errors)
    g++:g++.target/aarch64/aarch64.exp=g++.target/aarch64/diag_aka_1.C
(test for excess errors)
    g++:g++.target/aarch64/aarch64.exp=g++.target/aarch64/pr95726.C (test
for excess errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -O0  (test for excess errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -O1  (test for excess errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -O2  (test for excess errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -O2 -flto -fno-use-linker-plugin -flto-partition=none  (test for excess
errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects  (test for excess
errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -O3 -g  (test for excess errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -Og -g  (test for excess errors)

g++:g++.target/aarch64/advsimd-intrinsics/advsimd-intrinsics.exp=g++.target/aarch64/advsimd-intrinsics/pr98852.C
  -Os  (test for excess errors)

libstdc++:libstdc++-dg/conformance.exp=experimental/simd/standard_abi_usable.cc
-O2 -Wno-psabi (test for excess errors)

libstdc++:libstdc++-dg/conformance.exp=experimental/simd/standard_abi_usable_2.cc
-O2 -Wno-psabi (test for excess errors)

Can you check?

Thanks,

Christophe






> Thanks,
> Jonathan
>
> ---
>
> gcc/ChangeLog:
>
> 2021-08-16  Jonathan Wright  <jonathan.wright@arm.com>
>
>         * config/aarch64/arm_neon.h (__LD4_LANE_FUNC): Delete.
>         (__LD4Q_LANE_FUNC): Likewise.
>         (vld4_lane_u8): Define without macro.
>         (vld4_lane_u16): Likewise.
>         (vld4_lane_u32): Likewise.
>         (vld4_lane_u64): Likewise.
>         (vld4_lane_s8): Likewise.
>         (vld4_lane_s16): Likewise.
>         (vld4_lane_s32): Likewise.
>         (vld4_lane_s64): Likewise.
>         (vld4_lane_f16): Likewise.
>         (vld4_lane_f32): Likewise.
>         (vld4_lane_f64): Likewise.
>         (vld4_lane_p8): Likewise.
>         (vld4_lane_p16): Likewise.
>         (vld4_lane_p64): Likewise.
>         (vld4q_lane_u8): Likewise.
>         (vld4q_lane_u16): Likewise.
>         (vld4q_lane_u32): Likewise.
>         (vld4q_lane_u64): Likewise.
>         (vld4q_lane_s8): Likewise.
>         (vld4q_lane_s16): Likewise.
>         (vld4q_lane_s32): Likewise.
>         (vld4q_lane_s64): Likewise.
>         (vld4q_lane_f16): Likewise.
>         (vld4q_lane_f32): Likewise.
>         (vld4q_lane_f64): Likewise.
>         (vld4q_lane_p8): Likewise.
>         (vld4q_lane_p16): Likewise.
>         (vld4q_lane_p64): Likewise.
>         (vld4_lane_bf16): Likewise.
>         (vld4q_lane_bf16): Likewise.
>


More information about the Gcc-patches mailing list