Hi gcc-patches mailing list,
ricbal02 via Sourceware Forge <[email protected]> 
has requested that the following forgejo pull request
be published on the mailing list.

Created on: 2026-05-31 11:26:06+00:00
Latest update: 2026-05-31 11:26:29+00:00
Changes: 11 changed files, 308 additions, 1 deletions
Head revision: ricbal02/gcc-TEST ref f16f32dot commit 
865aa2447fca7fdd6c78022ecbd1934d4c7d9ac2
Base revision: gcc/gcc-TEST ref trunk commit 
fd6d39208ba4edd9527171cc0f5426a48e63a6a2 r17-1049-gfd6d39208ba4ed
Merge base: fd6d39208ba4edd9527171cc0f5426a48e63a6a2
Full diff url: https://forge.sourceware.org/gcc/gcc-TEST/pulls/166.diff
Discussion:  https://forge.sourceware.org/gcc/gcc-TEST/pulls/166
Requested Reviewers:

This patch adds the following advsimd intrinsics:

        *vdot_f32_f16
        *vdotq_f32_f16
        *vdot_lane_f32_f16
        *vdot_laneq_f32_f16
        *vdotq_lane_f32_f16
        *vdotq_laneq_f32_f16

gcc/ChangeLog:

        * config/aarch64/aarch64-c.cc
        (aarch64_update_cpp_builtins): New target flag.
        * config/aarch64/aarch64-simd-builtins.def: New functions.
        * config/aarch64/aarch64-simd.md
        (aarch64_simdfdot<mode>): New pattern.
        (aarch64_simdfdot_lane<VF:isquadop><VDQSF:mode>): Likewise.
        * config/aarch64/aarch64.h
        (TARGET_F16F32DOT): New target flag.
        * config/aarch64/arm_neon.h
        (target): Add f16f32dot section
        (__attribute__): New builtin function calls.
        (vdot_f32_f16): Likewise.
        (vdotq_f32_f16): Likewise.
        (vdot_lane_f32_f16): Likewise.
        (vdot_laneq_f32_f16): Likewise.
        (vdotq_lane_f32_f16): Likewise.
        (vdotq_laneq_f32_f16): Likewise.
        * config/aarch64/iterators.md (q): New options for isquadop.
        * doc/invoke.texi: Add f16f32dot.

gcc/testsuite/ChangeLog:

        * lib/target-supports.exp: New check_effective_target.
        * gcc.target/aarch64/advsimd-intrinsics/fdot-1.c: New test.
        * gcc.target/aarch64/advsimd-intrinsics/fdot-2.c: New test.
        * gcc.target/aarch64/advsimd-intrinsics/fdot-3.c: New test.


Changed files:
- A: gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/fdot-1.c
- A: gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/fdot-2.c
- A: gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/fdot-3.c
- M: gcc/config/aarch64/aarch64-c.cc
- M: gcc/config/aarch64/aarch64-simd-builtins.def
- M: gcc/config/aarch64/aarch64-simd.md
- M: gcc/config/aarch64/aarch64.h
- M: gcc/config/aarch64/arm_neon.h
- M: gcc/config/aarch64/iterators.md
- M: gcc/doc/invoke.texi
- M: gcc/testsuite/lib/target-supports.exp


Richard Ball (1):
  aarch64: Add Support for F16F32DOT

 gcc/config/aarch64/aarch64-c.cc               |  1 +
 gcc/config/aarch64/aarch64-simd-builtins.def  |  5 ++
 gcc/config/aarch64/aarch64-simd.md            | 32 +++++++++
 gcc/config/aarch64/aarch64.h                  |  2 +
 gcc/config/aarch64/arm_neon.h                 | 50 +++++++++++++
 gcc/config/aarch64/iterators.md               |  6 +-
 gcc/doc/invoke.texi                           |  2 +
 .../aarch64/advsimd-intrinsics/fdot-1.c       | 68 ++++++++++++++++++
 .../aarch64/advsimd-intrinsics/fdot-2.c       | 70 +++++++++++++++++++
 .../aarch64/advsimd-intrinsics/fdot-3.c       | 32 +++++++++
 gcc/testsuite/lib/target-supports.exp         | 41 +++++++++++
 11 files changed, 308 insertions(+), 1 deletion(-)
 create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/fdot-1.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/fdot-2.c
 create mode 100644 gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/fdot-3.c

-- 
2.54.0

Reply via email to