GCC Newspaper
JULY 29, 2026
Date
/
Architectures
Components
Topics
News & Policy
aarch64 Performance Win

aarch64: Add SVE2p3/SME2p3 dot product intrinsics

Adds SVE2p3 and SME2p3 dot product intrinsics for aarch64, enabling new vector and streaming SIMD operations.

This commit enhances the aarch64 backend with support for SVE2p3 and SME2p3 dot product intrinsics. These additions allow developers to utilize advanced vector processing and streaming capabilities for performing dot product operations, particularly on narrower data types with potential for higher throughput. The changes include updates to intrinsic definitions, machine description patterns, and target flags.

In Details

Introduces SVE2p3 and SME2p3 specific intrinsics to GCC for aarch64, focusing on dot product operations. This involves defining new types and functions in aarch64-acle-builtins.h and aarch64-sve-builtins-sve2.def, updating SVE machine description patterns in aarch64-sve2.md to handle new vector element combinations, and introducing new target flags like TARGET_SVE2p3 and TARGET_SME2p3.

For Context
SVE2p3
Scalable Vector Extension version 2, Priority 3. An advanced vector processing instruction set for ARM architectures that allows for variable vector lengths.
SME2p3
Streaming SIMD Extensions version 2, Priority 3. An advanced feature for ARM architectures that combines vector processing with streaming capabilities for high-throughput data operations.
dot product
A mathematical operation that takes two vectors of equal length and returns a single scalar value. In SIMD computing, this operation is often vectorized for efficiency.
intrinsics
Special functions that map directly to hardware instructions, allowing C/C++ code to leverage specific CPU capabilities like SIMD operations.
Filed Under: aarch64svesmesimdintrinsics