Coverage Report

Created: 2026-03-31 06:56

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/libde265/libde265/fallback.cc
Line
Count
Source
1
/*
2
 * H.265 video codec.
3
 * Copyright (c) 2013-2014 struktur AG, Dirk Farin <farin@struktur.de>
4
 *
5
 * This file is part of libde265.
6
 *
7
 * libde265 is free software: you can redistribute it and/or modify
8
 * it under the terms of the GNU Lesser General Public License as
9
 * published by the Free Software Foundation, either version 3 of
10
 * the License, or (at your option) any later version.
11
 *
12
 * libde265 is distributed in the hope that it will be useful,
13
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
 * GNU Lesser General Public License for more details.
16
 *
17
 * You should have received a copy of the GNU Lesser General Public License
18
 * along with libde265.  If not, see <http://www.gnu.org/licenses/>.
19
 */
20
21
#include "fallback.h"
22
#include "fallback-motion.h"
23
#include "fallback-dct.h"
24
25
26
void init_acceleration_functions_fallback(struct acceleration_functions* accel)
27
7.99k
{
28
7.99k
  accel->put_weighted_pred_avg_8 = put_weighted_pred_avg_8_fallback;
29
7.99k
  accel->put_unweighted_pred_8   = put_unweighted_pred_8_fallback;
30
7.99k
  accel->put_weighted_pred_8 = put_weighted_pred_8_fallback;
31
7.99k
  accel->put_weighted_bipred_8 = put_weighted_bipred_8_fallback;
32
33
7.99k
  accel->put_weighted_pred_avg_16 = put_weighted_pred_avg_16_fallback;
34
7.99k
  accel->put_unweighted_pred_16   = put_unweighted_pred_16_fallback;
35
7.99k
  accel->put_weighted_pred_16 = put_weighted_pred_16_fallback;
36
7.99k
  accel->put_weighted_bipred_16 = put_weighted_bipred_16_fallback;
37
38
39
7.99k
  accel->put_hevc_epel_8    = put_epel_8_fallback;
40
7.99k
  accel->put_hevc_epel_h_8  = put_epel_hv_fallback<uint8_t>;
41
7.99k
  accel->put_hevc_epel_v_8  = put_epel_hv_fallback<uint8_t>;
42
7.99k
  accel->put_hevc_epel_hv_8 = put_epel_hv_fallback<uint8_t>;
43
44
7.99k
  accel->put_hevc_qpel_8[0][0] = put_qpel_0_0_fallback;
45
7.99k
  accel->put_hevc_qpel_8[0][1] = put_qpel_0_1_fallback;
46
7.99k
  accel->put_hevc_qpel_8[0][2] = put_qpel_0_2_fallback;
47
7.99k
  accel->put_hevc_qpel_8[0][3] = put_qpel_0_3_fallback;
48
7.99k
  accel->put_hevc_qpel_8[1][0] = put_qpel_1_0_fallback;
49
7.99k
  accel->put_hevc_qpel_8[1][1] = put_qpel_1_1_fallback;
50
7.99k
  accel->put_hevc_qpel_8[1][2] = put_qpel_1_2_fallback;
51
7.99k
  accel->put_hevc_qpel_8[1][3] = put_qpel_1_3_fallback;
52
7.99k
  accel->put_hevc_qpel_8[2][0] = put_qpel_2_0_fallback;
53
7.99k
  accel->put_hevc_qpel_8[2][1] = put_qpel_2_1_fallback;
54
7.99k
  accel->put_hevc_qpel_8[2][2] = put_qpel_2_2_fallback;
55
7.99k
  accel->put_hevc_qpel_8[2][3] = put_qpel_2_3_fallback;
56
7.99k
  accel->put_hevc_qpel_8[3][0] = put_qpel_3_0_fallback;
57
7.99k
  accel->put_hevc_qpel_8[3][1] = put_qpel_3_1_fallback;
58
7.99k
  accel->put_hevc_qpel_8[3][2] = put_qpel_3_2_fallback;
59
7.99k
  accel->put_hevc_qpel_8[3][3] = put_qpel_3_3_fallback;
60
61
7.99k
  accel->put_hevc_epel_16    = put_epel_16_fallback;
62
7.99k
  accel->put_hevc_epel_h_16  = put_epel_hv_fallback<uint16_t>;
63
7.99k
  accel->put_hevc_epel_v_16  = put_epel_hv_fallback<uint16_t>;
64
7.99k
  accel->put_hevc_epel_hv_16 = put_epel_hv_fallback<uint16_t>;
65
66
7.99k
  accel->put_hevc_qpel_16[0][0] = put_qpel_0_0_fallback_16;
67
7.99k
  accel->put_hevc_qpel_16[0][1] = put_qpel_0_1_fallback_16;
68
7.99k
  accel->put_hevc_qpel_16[0][2] = put_qpel_0_2_fallback_16;
69
7.99k
  accel->put_hevc_qpel_16[0][3] = put_qpel_0_3_fallback_16;
70
7.99k
  accel->put_hevc_qpel_16[1][0] = put_qpel_1_0_fallback_16;
71
7.99k
  accel->put_hevc_qpel_16[1][1] = put_qpel_1_1_fallback_16;
72
7.99k
  accel->put_hevc_qpel_16[1][2] = put_qpel_1_2_fallback_16;
73
7.99k
  accel->put_hevc_qpel_16[1][3] = put_qpel_1_3_fallback_16;
74
7.99k
  accel->put_hevc_qpel_16[2][0] = put_qpel_2_0_fallback_16;
75
7.99k
  accel->put_hevc_qpel_16[2][1] = put_qpel_2_1_fallback_16;
76
7.99k
  accel->put_hevc_qpel_16[2][2] = put_qpel_2_2_fallback_16;
77
7.99k
  accel->put_hevc_qpel_16[2][3] = put_qpel_2_3_fallback_16;
78
7.99k
  accel->put_hevc_qpel_16[3][0] = put_qpel_3_0_fallback_16;
79
7.99k
  accel->put_hevc_qpel_16[3][1] = put_qpel_3_1_fallback_16;
80
7.99k
  accel->put_hevc_qpel_16[3][2] = put_qpel_3_2_fallback_16;
81
7.99k
  accel->put_hevc_qpel_16[3][3] = put_qpel_3_3_fallback_16;
82
83
84
85
7.99k
  accel->transform_skip_8 = transform_skip_8_fallback;
86
7.99k
  accel->transform_skip_rdpcm_h_8 = transform_skip_rdpcm_h_8_fallback;
87
7.99k
  accel->transform_skip_rdpcm_v_8 = transform_skip_rdpcm_v_8_fallback;
88
7.99k
  accel->transform_bypass = transform_bypass_fallback;
89
7.99k
  accel->transform_bypass_rdpcm_h = transform_bypass_rdpcm_h_fallback;
90
7.99k
  accel->transform_bypass_rdpcm_v = transform_bypass_rdpcm_v_fallback;
91
7.99k
  accel->transform_4x4_dst_add_8 = transform_4x4_luma_add_8_fallback;
92
7.99k
  accel->transform_add_8[0] = transform_4x4_add_8_fallback;
93
7.99k
  accel->transform_add_8[1] = transform_8x8_add_8_fallback;
94
7.99k
  accel->transform_add_8[2] = transform_16x16_add_8_fallback;
95
7.99k
  accel->transform_add_8[3] = transform_32x32_add_8_fallback;
96
97
7.99k
  accel->transform_skip_16 = transform_skip_16_fallback;
98
7.99k
  accel->transform_4x4_dst_add_16 = transform_4x4_luma_add_16_fallback;
99
7.99k
  accel->transform_add_16[0] = transform_4x4_add_16_fallback;
100
7.99k
  accel->transform_add_16[1] = transform_8x8_add_16_fallback;
101
7.99k
  accel->transform_add_16[2] = transform_16x16_add_16_fallback;
102
7.99k
  accel->transform_add_16[3] = transform_32x32_add_16_fallback;
103
104
7.99k
  accel->rotate_coefficients = rotate_coefficients_fallback;
105
7.99k
  accel->add_residual_8  = add_residual_fallback<uint8_t>;
106
7.99k
  accel->add_residual_16 = add_residual_fallback<uint16_t>;
107
7.99k
  accel->rdpcm_h = rdpcm_h_fallback;
108
7.99k
  accel->rdpcm_v = rdpcm_v_fallback;
109
7.99k
  accel->transform_skip_residual = transform_skip_residual_fallback;
110
111
7.99k
  accel->transform_idst_4x4   = transform_idst_4x4_fallback;
112
7.99k
  accel->transform_idct_4x4   = transform_idct_4x4_fallback;
113
7.99k
  accel->transform_idct_8x8   = transform_idct_8x8_fallback;
114
7.99k
  accel->transform_idct_16x16 = transform_idct_16x16_fallback;
115
7.99k
  accel->transform_idct_32x32 = transform_idct_32x32_fallback;
116
117
7.99k
  accel->fwd_transform_4x4_dst_8 = fdst_4x4_8_fallback;
118
7.99k
  accel->fwd_transform_8[0] = fdct_4x4_8_fallback;
119
7.99k
  accel->fwd_transform_8[1] = fdct_8x8_8_fallback;
120
7.99k
  accel->fwd_transform_8[2] = fdct_16x16_8_fallback;
121
7.99k
  accel->fwd_transform_8[3] = fdct_32x32_8_fallback;
122
123
7.99k
  accel->hadamard_transform_8[0] = hadamard_4x4_8_fallback;
124
7.99k
  accel->hadamard_transform_8[1] = hadamard_8x8_8_fallback;
125
7.99k
  accel->hadamard_transform_8[2] = hadamard_16x16_8_fallback;
126
7.99k
  accel->hadamard_transform_8[3] = hadamard_32x32_8_fallback;
127
7.99k
}