https://gcc.gnu.org/g:ac3a21360a1e8985acd83a1cd60362995f9e52d0
commit r17-3036-gac3a21360a1e8985acd83a1cd60362995f9e52d0 Author: Karl Meakin <[email protected]> Date: Wed Aug 5 16:02:04 2026 +0000 aarch64: delete vaddd_s64 and vaddd_u64 from arm_neon.h [PR126652] Now that `vaddd_s64` and `vaddd_u64` are implemented in the compiler, the definitions in arm_neon.h are unnecessary. Fix by deleting them. This fixes PR126652: a compiler error was triggered when `#include <arm_neon.h>` is wrapped in an `extern "C" {}` block in C++-mode. PR target/126652 gcc/ChangeLog: * config/aarch64/arm_neon.h (vaddd_s64, vaddd_u64): Delete function definitions. Diff: --- gcc/config/aarch64/arm_neon.h | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/gcc/config/aarch64/arm_neon.h b/gcc/config/aarch64/arm_neon.h index 101a6e521068..873a1195d3ed 100644 --- a/gcc/config/aarch64/arm_neon.h +++ b/gcc/config/aarch64/arm_neon.h @@ -5279,22 +5279,6 @@ vabsd_s64 (int64_t __a) return __a < 0 ? - (uint64_t) __a : __a; } -/* vadd */ - -__extension__ extern __inline int64_t -__attribute__ ((__always_inline__, __gnu_inline__, __artificial__)) -vaddd_s64 (int64_t __a, int64_t __b) -{ - return __a + __b; -} - -__extension__ extern __inline uint64_t -__attribute__ ((__always_inline__, __gnu_inline__, __artificial__)) -vaddd_u64 (uint64_t __a, uint64_t __b) -{ - return __a + __b; -} - /* vaddv */ __extension__ extern __inline int8_t
