KleidiCV Coverage Report


Directory: ./
File: kleidicv/src/arithmetics/add_sve2.cpp
Date: 2025-09-25 14:13:34
Exec Total Coverage
Lines: 3 3 100.0%
Functions: 8 8 100.0%
Branches: 0 0 -%

Line Branch Exec Source
1 // SPDX-FileCopyrightText: 2023 - 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
2 //
3 // SPDX-License-Identifier: Apache-2.0
4
5 #include "add_sc.h"
6
7 namespace kleidicv::sve2 {
8
9 template <typename T>
10 642 KLEIDICV_TARGET_FN_ATTRS kleidicv_error_t saturating_add(
11 const T *src_a, size_t src_a_stride, const T *src_b, size_t src_b_stride,
12 T *dst, size_t dst_stride, size_t width, size_t height) {
13 1284 return saturating_add_sc<T>(src_a, src_a_stride, src_b, src_b_stride, dst,
14 642 dst_stride, width, height);
15 }
16
17 #define KLEIDICV_INSTANTIATE_TEMPLATE(type) \
18 template KLEIDICV_TARGET_FN_ATTRS kleidicv_error_t saturating_add<type>( \
19 const type *src_a, size_t src_a_stride, const type *src_b, \
20 size_t src_b_stride, type *dst, size_t dst_stride, size_t width, \
21 size_t height)
22
23 KLEIDICV_INSTANTIATE_TEMPLATE(int8_t);
24 KLEIDICV_INSTANTIATE_TEMPLATE(uint8_t);
25 KLEIDICV_INSTANTIATE_TEMPLATE(int16_t);
26 KLEIDICV_INSTANTIATE_TEMPLATE(uint16_t);
27 KLEIDICV_INSTANTIATE_TEMPLATE(int32_t);
28 KLEIDICV_INSTANTIATE_TEMPLATE(uint32_t);
29 KLEIDICV_INSTANTIATE_TEMPLATE(int64_t);
30 KLEIDICV_INSTANTIATE_TEMPLATE(uint64_t);
31
32 } // namespace kleidicv::sve2
33