Line | Count | Source |
1 | | /* |
2 | | * Copyright (c) 2021, Alliance for Open Media. All rights reserved |
3 | | * |
4 | | * This source code is subject to the terms of the BSD 3-Clause Clear License |
5 | | * and the Alliance for Open Media Patent License 1.0. If the BSD 3-Clause Clear |
6 | | * License was not distributed with this source code in the LICENSE file, you |
7 | | * can obtain it at aomedia.org/license/software-license/bsd-3-c-c/. If the |
8 | | * Alliance for Open Media Patent License 1.0 was not distributed with this |
9 | | * source code in the PATENTS file, you can obtain it at |
10 | | * aomedia.org/license/patent-license/. |
11 | | */ |
12 | | |
13 | | #ifndef AVM_AVM_DSP_PROB_H_ |
14 | | #define AVM_AVM_DSP_PROB_H_ |
15 | | |
16 | | #include <assert.h> |
17 | | #include <stdio.h> |
18 | | |
19 | | #include "config/avm_config.h" |
20 | | |
21 | | #include "avm_dsp/avm_dsp_common.h" |
22 | | #include "avm_dsp/entcode.h" |
23 | | #include "avm_ports/bitops.h" |
24 | | #include "avm_ports/mem.h" |
25 | | |
26 | | typedef uint16_t avm_cdf_prob; |
27 | | |
28 | 57.7M | #define EC_PROB_SHIFT 7 |
29 | | #define EC_MIN_PROB 4 // must be <= (1<<EC_PROB_SHIFT)/16 |
30 | | |
31 | | #define CDF_SIZE(x) ((x) + 4) |
32 | | |
33 | | // AVM_PARAn(a, b, c): emit 3 pre-computed rate offsets for time intervals 0, |
34 | | // 1, 2. a, b, c are raw PARA triplet values from training (range {-2..+1}). |
35 | | #define AVM_PARA2(a, b, c) ((a) + 2), ((b) + 3), ((c) + 4) |
36 | | #define AVM_PARA3(a, b, c) ((a) + 2), ((b) + 3), ((c) + 4) |
37 | | #define AVM_PARA4(a, b, c) ((a) + 3), ((b) + 4), ((c) + 5) |
38 | | #define AVM_PARA5(a, b, c) ((a) + 3), ((b) + 4), ((c) + 5) |
39 | | #define AVM_PARA6(a, b, c) ((a) + 3), ((b) + 4), ((c) + 5) |
40 | | #define AVM_PARA7(a, b, c) ((a) + 3), ((b) + 4), ((c) + 5) |
41 | | #define AVM_PARA8(a, b, c) ((a) + 3), ((b) + 4), ((c) + 5) |
42 | 18.2M | #define CDF_PROB_BITS 15 |
43 | 18.2M | #define CDF_PROB_TOP (1 << CDF_PROB_BITS) |
44 | | #define CDF_INIT_TOP 32768 |
45 | 0 | #define CDF_SHIFT (15 - CDF_PROB_BITS) |
46 | | /*The value stored in an iCDF is CDF_PROB_TOP minus the actual cumulative |
47 | | probability (an "inverse" CDF). |
48 | | This function converts from one representation to the other (and is its own |
49 | | inverse).*/ |
50 | 18.2M | #define AVM_ICDF(x) (CDF_PROB_TOP - (x)) |
51 | | |
52 | | #if CDF_SHIFT == 0 |
53 | | |
54 | | #define AVM_CDF2(a0) AVM_ICDF(a0), AVM_ICDF(CDF_PROB_TOP), 0 |
55 | | #define AVM_CDF3(a0, a1) AVM_ICDF(a0), AVM_ICDF(a1), AVM_ICDF(CDF_PROB_TOP), 0 |
56 | | #define AVM_CDF4(a0, a1, a2) \ |
57 | | AVM_ICDF(a0), AVM_ICDF(a1), AVM_ICDF(a2), AVM_ICDF(CDF_PROB_TOP), 0 |
58 | | #define AVM_CDF5(a0, a1, a2, a3) \ |
59 | | AVM_ICDF(a0) \ |
60 | | , AVM_ICDF(a1), AVM_ICDF(a2), AVM_ICDF(a3), AVM_ICDF(CDF_PROB_TOP), 0 |
61 | | #define AVM_CDF6(a0, a1, a2, a3, a4) \ |
62 | | AVM_ICDF(a0) \ |
63 | | , AVM_ICDF(a1), AVM_ICDF(a2), AVM_ICDF(a3), AVM_ICDF(a4), \ |
64 | | AVM_ICDF(CDF_PROB_TOP), 0 |
65 | | #define AVM_CDF7(a0, a1, a2, a3, a4, a5) \ |
66 | | AVM_ICDF(a0) \ |
67 | | , AVM_ICDF(a1), AVM_ICDF(a2), AVM_ICDF(a3), AVM_ICDF(a4), AVM_ICDF(a5), \ |
68 | | AVM_ICDF(CDF_PROB_TOP), 0 |
69 | | #define AVM_CDF8(a0, a1, a2, a3, a4, a5, a6) \ |
70 | | AVM_ICDF(a0) \ |
71 | | , AVM_ICDF(a1), AVM_ICDF(a2), AVM_ICDF(a3), AVM_ICDF(a4), AVM_ICDF(a5), \ |
72 | | AVM_ICDF(a6), AVM_ICDF(CDF_PROB_TOP), 0 |
73 | | #else |
74 | | #define AVM_CDF2(a0) \ |
75 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 2) + \ |
76 | | ((CDF_INIT_TOP - 2) >> 1)) / \ |
77 | | ((CDF_INIT_TOP - 2)) + \ |
78 | | 1) \ |
79 | | , AVM_ICDF(CDF_PROB_TOP), 0 |
80 | | #define AVM_CDF3(a0, a1) \ |
81 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 3) + \ |
82 | | ((CDF_INIT_TOP - 3) >> 1)) / \ |
83 | | ((CDF_INIT_TOP - 3)) + \ |
84 | | 1) \ |
85 | | , \ |
86 | | AVM_ICDF((((a1) - 2) * ((CDF_INIT_TOP >> CDF_SHIFT) - 3) + \ |
87 | | ((CDF_INIT_TOP - 3) >> 1)) / \ |
88 | | ((CDF_INIT_TOP - 3)) + \ |
89 | | 2), \ |
90 | | AVM_ICDF(CDF_PROB_TOP), 0 |
91 | | #define AVM_CDF4(a0, a1, a2) \ |
92 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 4) + \ |
93 | | ((CDF_INIT_TOP - 4) >> 1)) / \ |
94 | | ((CDF_INIT_TOP - 4)) + \ |
95 | | 1) \ |
96 | | , \ |
97 | | AVM_ICDF((((a1) - 2) * ((CDF_INIT_TOP >> CDF_SHIFT) - 4) + \ |
98 | | ((CDF_INIT_TOP - 4) >> 1)) / \ |
99 | | ((CDF_INIT_TOP - 4)) + \ |
100 | | 2), \ |
101 | | AVM_ICDF((((a2) - 3) * ((CDF_INIT_TOP >> CDF_SHIFT) - 4) + \ |
102 | | ((CDF_INIT_TOP - 4) >> 1)) / \ |
103 | | ((CDF_INIT_TOP - 4)) + \ |
104 | | 3), \ |
105 | | AVM_ICDF(CDF_PROB_TOP), 0 |
106 | | #define AVM_CDF5(a0, a1, a2, a3) \ |
107 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 5) + \ |
108 | | ((CDF_INIT_TOP - 5) >> 1)) / \ |
109 | | ((CDF_INIT_TOP - 5)) + \ |
110 | | 1) \ |
111 | | , \ |
112 | | AVM_ICDF((((a1) - 2) * ((CDF_INIT_TOP >> CDF_SHIFT) - 5) + \ |
113 | | ((CDF_INIT_TOP - 5) >> 1)) / \ |
114 | | ((CDF_INIT_TOP - 5)) + \ |
115 | | 2), \ |
116 | | AVM_ICDF((((a2) - 3) * ((CDF_INIT_TOP >> CDF_SHIFT) - 5) + \ |
117 | | ((CDF_INIT_TOP - 5) >> 1)) / \ |
118 | | ((CDF_INIT_TOP - 5)) + \ |
119 | | 3), \ |
120 | | AVM_ICDF((((a3) - 4) * ((CDF_INIT_TOP >> CDF_SHIFT) - 5) + \ |
121 | | ((CDF_INIT_TOP - 5) >> 1)) / \ |
122 | | ((CDF_INIT_TOP - 5)) + \ |
123 | | 4), \ |
124 | | AVM_ICDF(CDF_PROB_TOP), 0 |
125 | | #define AVM_CDF6(a0, a1, a2, a3, a4) \ |
126 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 6) + \ |
127 | | ((CDF_INIT_TOP - 6) >> 1)) / \ |
128 | | ((CDF_INIT_TOP - 6)) + \ |
129 | | 1) \ |
130 | | , \ |
131 | | AVM_ICDF((((a1) - 2) * ((CDF_INIT_TOP >> CDF_SHIFT) - 6) + \ |
132 | | ((CDF_INIT_TOP - 6) >> 1)) / \ |
133 | | ((CDF_INIT_TOP - 6)) + \ |
134 | | 2), \ |
135 | | AVM_ICDF((((a2) - 3) * ((CDF_INIT_TOP >> CDF_SHIFT) - 6) + \ |
136 | | ((CDF_INIT_TOP - 6) >> 1)) / \ |
137 | | ((CDF_INIT_TOP - 6)) + \ |
138 | | 3), \ |
139 | | AVM_ICDF((((a3) - 4) * ((CDF_INIT_TOP >> CDF_SHIFT) - 6) + \ |
140 | | ((CDF_INIT_TOP - 6) >> 1)) / \ |
141 | | ((CDF_INIT_TOP - 6)) + \ |
142 | | 4), \ |
143 | | AVM_ICDF((((a4) - 5) * ((CDF_INIT_TOP >> CDF_SHIFT) - 6) + \ |
144 | | ((CDF_INIT_TOP - 6) >> 1)) / \ |
145 | | ((CDF_INIT_TOP - 6)) + \ |
146 | | 5), \ |
147 | | AVM_ICDF(CDF_PROB_TOP), 0 |
148 | | #define AVM_CDF7(a0, a1, a2, a3, a4, a5) \ |
149 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 7) + \ |
150 | | ((CDF_INIT_TOP - 7) >> 1)) / \ |
151 | | ((CDF_INIT_TOP - 7)) + \ |
152 | | 1) \ |
153 | | , \ |
154 | | AVM_ICDF((((a1) - 2) * ((CDF_INIT_TOP >> CDF_SHIFT) - 7) + \ |
155 | | ((CDF_INIT_TOP - 7) >> 1)) / \ |
156 | | ((CDF_INIT_TOP - 7)) + \ |
157 | | 2), \ |
158 | | AVM_ICDF((((a2) - 3) * ((CDF_INIT_TOP >> CDF_SHIFT) - 7) + \ |
159 | | ((CDF_INIT_TOP - 7) >> 1)) / \ |
160 | | ((CDF_INIT_TOP - 7)) + \ |
161 | | 3), \ |
162 | | AVM_ICDF((((a3) - 4) * ((CDF_INIT_TOP >> CDF_SHIFT) - 7) + \ |
163 | | ((CDF_INIT_TOP - 7) >> 1)) / \ |
164 | | ((CDF_INIT_TOP - 7)) + \ |
165 | | 4), \ |
166 | | AVM_ICDF((((a4) - 5) * ((CDF_INIT_TOP >> CDF_SHIFT) - 7) + \ |
167 | | ((CDF_INIT_TOP - 7) >> 1)) / \ |
168 | | ((CDF_INIT_TOP - 7)) + \ |
169 | | 5), \ |
170 | | AVM_ICDF((((a5) - 6) * ((CDF_INIT_TOP >> CDF_SHIFT) - 7) + \ |
171 | | ((CDF_INIT_TOP - 7) >> 1)) / \ |
172 | | ((CDF_INIT_TOP - 7)) + \ |
173 | | 6), \ |
174 | | AVM_ICDF(CDF_PROB_TOP), 0 |
175 | | #define AVM_CDF8(a0, a1, a2, a3, a4, a5, a6) \ |
176 | | AVM_ICDF((((a0) - 1) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
177 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
178 | | ((CDF_INIT_TOP - 8)) + \ |
179 | | 1) \ |
180 | | , \ |
181 | | AVM_ICDF((((a1) - 2) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
182 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
183 | | ((CDF_INIT_TOP - 8)) + \ |
184 | | 2), \ |
185 | | AVM_ICDF((((a2) - 3) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
186 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
187 | | ((CDF_INIT_TOP - 8)) + \ |
188 | | 3), \ |
189 | | AVM_ICDF((((a3) - 4) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
190 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
191 | | ((CDF_INIT_TOP - 8)) + \ |
192 | | 4), \ |
193 | | AVM_ICDF((((a4) - 5) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
194 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
195 | | ((CDF_INIT_TOP - 8)) + \ |
196 | | 5), \ |
197 | | AVM_ICDF((((a5) - 6) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
198 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
199 | | ((CDF_INIT_TOP - 8)) + \ |
200 | | 6), \ |
201 | | AVM_ICDF((((a6) - 7) * ((CDF_INIT_TOP >> CDF_SHIFT) - 8) + \ |
202 | | ((CDF_INIT_TOP - 8) >> 1)) / \ |
203 | | ((CDF_INIT_TOP - 8)) + \ |
204 | | 7), \ |
205 | | AVM_ICDF(CDF_PROB_TOP), 0 |
206 | | #endif |
207 | | |
208 | 0 | static INLINE uint8_t get_prob(unsigned int num, unsigned int den) { |
209 | 0 | assert(den != 0); |
210 | 0 | { |
211 | 0 | const int p = (int)(((uint64_t)num * 256 + (den >> 1)) / den); |
212 | 0 | // (p > 255) ? 255 : (p < 1) ? 1 : p; |
213 | 0 | const int clipped_prob = p | ((255 - p) >> 23) | (p == 0); |
214 | 0 | return (uint8_t)clipped_prob; |
215 | 0 | } |
216 | 0 | } Unexecuted instantiation: av2_dx_iface.c:get_prob Unexecuted instantiation: annexF.c:get_prob Unexecuted instantiation: decodeframe.c:get_prob Unexecuted instantiation: decodemv.c:get_prob Unexecuted instantiation: decoder.c:get_prob Unexecuted instantiation: decodetxb.c:get_prob Unexecuted instantiation: detokenize.c:get_prob Unexecuted instantiation: obu_fgm.c:get_prob Unexecuted instantiation: obu.c:get_prob Unexecuted instantiation: obu_ci.c:get_prob Unexecuted instantiation: obu_atlas.c:get_prob Unexecuted instantiation: obu_lcr.c:get_prob Unexecuted instantiation: obu_ops.c:get_prob Unexecuted instantiation: obu_buf.c:get_prob Unexecuted instantiation: avm_dsp_rtcd.c:get_prob Unexecuted instantiation: av2_rtcd.c:get_prob Unexecuted instantiation: blend_a64_hmask.c:get_prob Unexecuted instantiation: blend_a64_mask.c:get_prob Unexecuted instantiation: blend_a64_vmask.c:get_prob Unexecuted instantiation: loopfilter.c:get_prob Unexecuted instantiation: binary_codes_reader.c:get_prob Unexecuted instantiation: bitreader.c:get_prob Unexecuted instantiation: entdec.c:get_prob Unexecuted instantiation: avm_convolve_copy_sse2.c:get_prob Unexecuted instantiation: avm_asm_stubs.c:get_prob Unexecuted instantiation: highbd_convolve_sse2.c:get_prob Unexecuted instantiation: highbd_convolve_ssse3.c:get_prob Unexecuted instantiation: blend_a64_hmask_sse4.c:get_prob Unexecuted instantiation: blend_a64_mask_sse4.c:get_prob Unexecuted instantiation: blend_a64_vmask_sse4.c:get_prob Unexecuted instantiation: loopfilter_sse4.c:get_prob Unexecuted instantiation: avm_convolve_copy_avx2.c:get_prob Unexecuted instantiation: highbd_convolve_avx2.c:get_prob Unexecuted instantiation: intrapred_avx2.c:get_prob Unexecuted instantiation: blend_a64_mask_avx2.c:get_prob Unexecuted instantiation: entdec_avx2.c:get_prob Unexecuted instantiation: annexA.c:get_prob Unexecuted instantiation: alloccommon.c:get_prob Unexecuted instantiation: av2_loopfilter.c:get_prob Unexecuted instantiation: av2_txfm.c:get_prob Unexecuted instantiation: blockd.c:get_prob Unexecuted instantiation: cdef.c:get_prob Unexecuted instantiation: gdf.c:get_prob Unexecuted instantiation: gdf_block.c:get_prob Unexecuted instantiation: cdef_block.c:get_prob Unexecuted instantiation: cfl.c:get_prob Unexecuted instantiation: convolve.c:get_prob Unexecuted instantiation: entropy.c:get_prob Unexecuted instantiation: entropymode.c:get_prob Unexecuted instantiation: entropymv.c:get_prob Unexecuted instantiation: idct.c:get_prob Unexecuted instantiation: level.c:get_prob Unexecuted instantiation: mvref_common.c:get_prob Unexecuted instantiation: predefined_qm.c:get_prob Unexecuted instantiation: pred_common.c:get_prob Unexecuted instantiation: quant_common.c:get_prob Unexecuted instantiation: reconinter.c:get_prob Unexecuted instantiation: reconintra.c:get_prob Unexecuted instantiation: restoration.c:get_prob Unexecuted instantiation: scale.c:get_prob Unexecuted instantiation: scan.c:get_prob Unexecuted instantiation: seg_common.c:get_prob Unexecuted instantiation: thread_common.c:get_prob Unexecuted instantiation: tile_common.c:get_prob Unexecuted instantiation: timing.c:get_prob Unexecuted instantiation: tip.c:get_prob Unexecuted instantiation: txb_common.c:get_prob Unexecuted instantiation: warped_motion.c:get_prob Unexecuted instantiation: hr_coding.c:get_prob Unexecuted instantiation: intra_matrix.c:get_prob Unexecuted instantiation: intra_dip.cc:get_prob(unsigned int, unsigned int) Unexecuted instantiation: ccso.c:get_prob Unexecuted instantiation: bru.c:get_prob Unexecuted instantiation: obu_qm.c:get_prob Unexecuted instantiation: cdef_block_sse2.c:get_prob Unexecuted instantiation: cfl_sse2.c:get_prob Unexecuted instantiation: cdef_block_ssse3.c:get_prob Unexecuted instantiation: cfl_ssse3.c:get_prob Unexecuted instantiation: highbd_convolve_2d_ssse3.c:get_prob Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:get_prob Unexecuted instantiation: reconinter_ssse3.c:get_prob Unexecuted instantiation: cdef_block_sse4.c:get_prob Unexecuted instantiation: av2_convolve_horiz_rs_sse4.c:get_prob Unexecuted instantiation: av2_convolve_scale_sse4.c:get_prob Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_prob Unexecuted instantiation: highbd_inv_txfm_sse4.c:get_prob Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_prob Unexecuted instantiation: highbd_warp_plane_sse4.c:get_prob Unexecuted instantiation: intra_edge_sse4.c:get_prob Unexecuted instantiation: optflow_refine_sse4.c:get_prob Unexecuted instantiation: reconinter_sse4.c:get_prob Unexecuted instantiation: cdef_block_avx2.c:get_prob Unexecuted instantiation: affine_optflow_refine_avx2.c:get_prob Unexecuted instantiation: bawp_avx2.c:get_prob Unexecuted instantiation: cfl_avx2.c:get_prob Unexecuted instantiation: highbd_ccso_avx2.c:get_prob Unexecuted instantiation: highbd_convolve_2d_avx2.c:get_prob Unexecuted instantiation: highbd_inv_txfm_avx2.c:get_prob Unexecuted instantiation: highbd_jnt_convolve_avx2.c:get_prob Unexecuted instantiation: highbd_wiener_convolve_avx2.c:get_prob Unexecuted instantiation: highbd_warp_affine_avx2.c:get_prob Unexecuted instantiation: reconinter_avx2.c:get_prob Unexecuted instantiation: gdf_block_avx2.c:get_prob Unexecuted instantiation: avm_convolve.c:get_prob Unexecuted instantiation: intrapred.c:get_prob Unexecuted instantiation: sad.c:get_prob Unexecuted instantiation: highbd_intrapred_sse2.c:get_prob Unexecuted instantiation: av2_inv_txfm2d.c:get_prob |
217 | | |
218 | 18.2M | static INLINE void update_cdf(avm_cdf_prob *cdf, int8_t val, int nsymbs) { |
219 | 18.2M | int i, tmp; |
220 | 18.2M | assert(nsymbs < 17); |
221 | 18.2M | const int time_interval = cdf[nsymbs] > 31 ? 2 : cdf[nsymbs] > 15 ? 1 : 0; |
222 | 18.2M | const int rate = 2 + cdf[nsymbs + 1 + time_interval]; |
223 | 18.2M | tmp = AVM_ICDF(0); |
224 | | |
225 | | // Single loop (faster) |
226 | 68.0M | for (i = 0; i < nsymbs - 1; ++i) { |
227 | 49.7M | tmp = (i == val) ? 0 : tmp; |
228 | 49.7M | if (tmp < cdf[i]) { |
229 | 35.8M | cdf[i] -= ((cdf[i] - tmp) >> rate); |
230 | 35.8M | } else { |
231 | 13.9M | cdf[i] += ((tmp - cdf[i]) >> rate); |
232 | 13.9M | } |
233 | 49.7M | } |
234 | 18.2M | cdf[nsymbs] += (cdf[nsymbs] < 32); |
235 | 18.2M | } Unexecuted instantiation: av2_dx_iface.c:update_cdf Unexecuted instantiation: annexF.c:update_cdf Line | Count | Source | 218 | 897k | static INLINE void update_cdf(avm_cdf_prob *cdf, int8_t val, int nsymbs) { | 219 | 897k | int i, tmp; | 220 | 897k | assert(nsymbs < 17); | 221 | 897k | const int time_interval = cdf[nsymbs] > 31 ? 2 : cdf[nsymbs] > 15 ? 1 : 0; | 222 | 897k | const int rate = 2 + cdf[nsymbs + 1 + time_interval]; | 223 | 897k | tmp = AVM_ICDF(0); | 224 | | | 225 | | // Single loop (faster) | 226 | 1.85M | for (i = 0; i < nsymbs - 1; ++i) { | 227 | 956k | tmp = (i == val) ? 0 : tmp; | 228 | 956k | if (tmp < cdf[i]) { | 229 | 591k | cdf[i] -= ((cdf[i] - tmp) >> rate); | 230 | 591k | } else { | 231 | 364k | cdf[i] += ((tmp - cdf[i]) >> rate); | 232 | 364k | } | 233 | 956k | } | 234 | 897k | cdf[nsymbs] += (cdf[nsymbs] < 32); | 235 | 897k | } |
Line | Count | Source | 218 | 2.34M | static INLINE void update_cdf(avm_cdf_prob *cdf, int8_t val, int nsymbs) { | 219 | 2.34M | int i, tmp; | 220 | 2.34M | assert(nsymbs < 17); | 221 | 2.34M | const int time_interval = cdf[nsymbs] > 31 ? 2 : cdf[nsymbs] > 15 ? 1 : 0; | 222 | 2.34M | const int rate = 2 + cdf[nsymbs + 1 + time_interval]; | 223 | 2.34M | tmp = AVM_ICDF(0); | 224 | | | 225 | | // Single loop (faster) | 226 | 9.63M | for (i = 0; i < nsymbs - 1; ++i) { | 227 | 7.28M | tmp = (i == val) ? 0 : tmp; | 228 | 7.28M | if (tmp < cdf[i]) { | 229 | 5.50M | cdf[i] -= ((cdf[i] - tmp) >> rate); | 230 | 5.50M | } else { | 231 | 1.78M | cdf[i] += ((tmp - cdf[i]) >> rate); | 232 | 1.78M | } | 233 | 7.28M | } | 234 | 2.34M | cdf[nsymbs] += (cdf[nsymbs] < 32); | 235 | 2.34M | } |
Unexecuted instantiation: decoder.c:update_cdf Line | Count | Source | 218 | 13.8M | static INLINE void update_cdf(avm_cdf_prob *cdf, int8_t val, int nsymbs) { | 219 | 13.8M | int i, tmp; | 220 | 13.8M | assert(nsymbs < 17); | 221 | 13.8M | const int time_interval = cdf[nsymbs] > 31 ? 2 : cdf[nsymbs] > 15 ? 1 : 0; | 222 | 13.8M | const int rate = 2 + cdf[nsymbs + 1 + time_interval]; | 223 | 13.8M | tmp = AVM_ICDF(0); | 224 | | | 225 | | // Single loop (faster) | 226 | 51.9M | for (i = 0; i < nsymbs - 1; ++i) { | 227 | 38.1M | tmp = (i == val) ? 0 : tmp; | 228 | 38.1M | if (tmp < cdf[i]) { | 229 | 27.1M | cdf[i] -= ((cdf[i] - tmp) >> rate); | 230 | 27.1M | } else { | 231 | 11.0M | cdf[i] += ((tmp - cdf[i]) >> rate); | 232 | 11.0M | } | 233 | 38.1M | } | 234 | 13.8M | cdf[nsymbs] += (cdf[nsymbs] < 32); | 235 | 13.8M | } |
Line | Count | Source | 218 | 1.15M | static INLINE void update_cdf(avm_cdf_prob *cdf, int8_t val, int nsymbs) { | 219 | 1.15M | int i, tmp; | 220 | 1.15M | assert(nsymbs < 17); | 221 | 1.15M | const int time_interval = cdf[nsymbs] > 31 ? 2 : cdf[nsymbs] > 15 ? 1 : 0; | 222 | 1.15M | const int rate = 2 + cdf[nsymbs + 1 + time_interval]; | 223 | 1.15M | tmp = AVM_ICDF(0); | 224 | | | 225 | | // Single loop (faster) | 226 | 4.56M | for (i = 0; i < nsymbs - 1; ++i) { | 227 | 3.40M | tmp = (i == val) ? 0 : tmp; | 228 | 3.40M | if (tmp < cdf[i]) { | 229 | 2.60M | cdf[i] -= ((cdf[i] - tmp) >> rate); | 230 | 2.60M | } else { | 231 | 798k | cdf[i] += ((tmp - cdf[i]) >> rate); | 232 | 798k | } | 233 | 3.40M | } | 234 | 1.15M | cdf[nsymbs] += (cdf[nsymbs] < 32); | 235 | 1.15M | } |
Unexecuted instantiation: obu_fgm.c:update_cdf Unexecuted instantiation: obu.c:update_cdf Unexecuted instantiation: obu_ci.c:update_cdf Unexecuted instantiation: obu_atlas.c:update_cdf Unexecuted instantiation: obu_lcr.c:update_cdf Unexecuted instantiation: obu_ops.c:update_cdf Unexecuted instantiation: obu_buf.c:update_cdf Unexecuted instantiation: avm_dsp_rtcd.c:update_cdf Unexecuted instantiation: av2_rtcd.c:update_cdf Unexecuted instantiation: blend_a64_hmask.c:update_cdf Unexecuted instantiation: blend_a64_mask.c:update_cdf Unexecuted instantiation: blend_a64_vmask.c:update_cdf Unexecuted instantiation: loopfilter.c:update_cdf Unexecuted instantiation: binary_codes_reader.c:update_cdf Unexecuted instantiation: bitreader.c:update_cdf Unexecuted instantiation: entdec.c:update_cdf Unexecuted instantiation: avm_convolve_copy_sse2.c:update_cdf Unexecuted instantiation: avm_asm_stubs.c:update_cdf Unexecuted instantiation: highbd_convolve_sse2.c:update_cdf Unexecuted instantiation: highbd_convolve_ssse3.c:update_cdf Unexecuted instantiation: blend_a64_hmask_sse4.c:update_cdf Unexecuted instantiation: blend_a64_mask_sse4.c:update_cdf Unexecuted instantiation: blend_a64_vmask_sse4.c:update_cdf Unexecuted instantiation: loopfilter_sse4.c:update_cdf Unexecuted instantiation: avm_convolve_copy_avx2.c:update_cdf Unexecuted instantiation: highbd_convolve_avx2.c:update_cdf Unexecuted instantiation: intrapred_avx2.c:update_cdf Unexecuted instantiation: blend_a64_mask_avx2.c:update_cdf Unexecuted instantiation: entdec_avx2.c:update_cdf Unexecuted instantiation: annexA.c:update_cdf Unexecuted instantiation: alloccommon.c:update_cdf Unexecuted instantiation: av2_loopfilter.c:update_cdf Unexecuted instantiation: av2_txfm.c:update_cdf Unexecuted instantiation: blockd.c:update_cdf Unexecuted instantiation: cdef.c:update_cdf Unexecuted instantiation: gdf.c:update_cdf Unexecuted instantiation: gdf_block.c:update_cdf Unexecuted instantiation: cdef_block.c:update_cdf Unexecuted instantiation: cfl.c:update_cdf Unexecuted instantiation: convolve.c:update_cdf Unexecuted instantiation: entropy.c:update_cdf Unexecuted instantiation: entropymode.c:update_cdf Unexecuted instantiation: entropymv.c:update_cdf Unexecuted instantiation: idct.c:update_cdf Unexecuted instantiation: level.c:update_cdf Unexecuted instantiation: mvref_common.c:update_cdf Unexecuted instantiation: predefined_qm.c:update_cdf Unexecuted instantiation: pred_common.c:update_cdf Unexecuted instantiation: quant_common.c:update_cdf Unexecuted instantiation: reconinter.c:update_cdf Unexecuted instantiation: reconintra.c:update_cdf Unexecuted instantiation: restoration.c:update_cdf Unexecuted instantiation: scale.c:update_cdf Unexecuted instantiation: scan.c:update_cdf Unexecuted instantiation: seg_common.c:update_cdf Unexecuted instantiation: thread_common.c:update_cdf Unexecuted instantiation: tile_common.c:update_cdf Unexecuted instantiation: timing.c:update_cdf Unexecuted instantiation: tip.c:update_cdf Unexecuted instantiation: txb_common.c:update_cdf Unexecuted instantiation: warped_motion.c:update_cdf Unexecuted instantiation: hr_coding.c:update_cdf Unexecuted instantiation: intra_matrix.c:update_cdf Unexecuted instantiation: intra_dip.cc:update_cdf(unsigned short*, signed char, int) Unexecuted instantiation: ccso.c:update_cdf Unexecuted instantiation: bru.c:update_cdf Unexecuted instantiation: obu_qm.c:update_cdf Unexecuted instantiation: cdef_block_sse2.c:update_cdf Unexecuted instantiation: cfl_sse2.c:update_cdf Unexecuted instantiation: cdef_block_ssse3.c:update_cdf Unexecuted instantiation: cfl_ssse3.c:update_cdf Unexecuted instantiation: highbd_convolve_2d_ssse3.c:update_cdf Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:update_cdf Unexecuted instantiation: reconinter_ssse3.c:update_cdf Unexecuted instantiation: cdef_block_sse4.c:update_cdf Unexecuted instantiation: av2_convolve_horiz_rs_sse4.c:update_cdf Unexecuted instantiation: av2_convolve_scale_sse4.c:update_cdf Unexecuted instantiation: highbd_convolve_2d_sse4.c:update_cdf Unexecuted instantiation: highbd_inv_txfm_sse4.c:update_cdf Unexecuted instantiation: highbd_jnt_convolve_sse4.c:update_cdf Unexecuted instantiation: highbd_warp_plane_sse4.c:update_cdf Unexecuted instantiation: intra_edge_sse4.c:update_cdf Unexecuted instantiation: optflow_refine_sse4.c:update_cdf Unexecuted instantiation: reconinter_sse4.c:update_cdf Unexecuted instantiation: cdef_block_avx2.c:update_cdf Unexecuted instantiation: affine_optflow_refine_avx2.c:update_cdf Unexecuted instantiation: bawp_avx2.c:update_cdf Unexecuted instantiation: cfl_avx2.c:update_cdf Unexecuted instantiation: highbd_ccso_avx2.c:update_cdf Unexecuted instantiation: highbd_convolve_2d_avx2.c:update_cdf Unexecuted instantiation: highbd_inv_txfm_avx2.c:update_cdf Unexecuted instantiation: highbd_jnt_convolve_avx2.c:update_cdf Unexecuted instantiation: highbd_wiener_convolve_avx2.c:update_cdf Unexecuted instantiation: highbd_warp_affine_avx2.c:update_cdf Unexecuted instantiation: reconinter_avx2.c:update_cdf Unexecuted instantiation: gdf_block_avx2.c:update_cdf Unexecuted instantiation: avm_convolve.c:update_cdf Unexecuted instantiation: intrapred.c:update_cdf Unexecuted instantiation: sad.c:update_cdf Unexecuted instantiation: highbd_intrapred_sse2.c:update_cdf Unexecuted instantiation: av2_inv_txfm2d.c:update_cdf |
236 | | |
237 | | // Scale the CDF to match the range value stored in the entropy decoder. |
238 | | static INLINE unsigned od_ec_prob_scale(uint16_t p, unsigned r, int n, |
239 | 0 | int nsym) { |
240 | 0 | int rr = r >> 8; |
241 | 0 | int pp = p >> EC_PROB_SHIFT; |
242 | 0 | pp <<= 4; |
243 | 0 | pp += av2_prob_inc_tbl[nsym - 2][n]; |
244 | 0 | return ((rr * pp >> (7 - EC_PROB_SHIFT - CDF_SHIFT + 1 + 6)) << 3); |
245 | 0 | } Unexecuted instantiation: av2_dx_iface.c:od_ec_prob_scale Unexecuted instantiation: annexF.c:od_ec_prob_scale Unexecuted instantiation: decodeframe.c:od_ec_prob_scale Unexecuted instantiation: decodemv.c:od_ec_prob_scale Unexecuted instantiation: decoder.c:od_ec_prob_scale Unexecuted instantiation: decodetxb.c:od_ec_prob_scale Unexecuted instantiation: detokenize.c:od_ec_prob_scale Unexecuted instantiation: obu_fgm.c:od_ec_prob_scale Unexecuted instantiation: obu.c:od_ec_prob_scale Unexecuted instantiation: obu_ci.c:od_ec_prob_scale Unexecuted instantiation: obu_atlas.c:od_ec_prob_scale Unexecuted instantiation: obu_lcr.c:od_ec_prob_scale Unexecuted instantiation: obu_ops.c:od_ec_prob_scale Unexecuted instantiation: obu_buf.c:od_ec_prob_scale Unexecuted instantiation: avm_dsp_rtcd.c:od_ec_prob_scale Unexecuted instantiation: av2_rtcd.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_hmask.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_mask.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_vmask.c:od_ec_prob_scale Unexecuted instantiation: loopfilter.c:od_ec_prob_scale Unexecuted instantiation: binary_codes_reader.c:od_ec_prob_scale Unexecuted instantiation: bitreader.c:od_ec_prob_scale Unexecuted instantiation: entdec.c:od_ec_prob_scale Unexecuted instantiation: avm_convolve_copy_sse2.c:od_ec_prob_scale Unexecuted instantiation: avm_asm_stubs.c:od_ec_prob_scale Unexecuted instantiation: highbd_convolve_sse2.c:od_ec_prob_scale Unexecuted instantiation: highbd_convolve_ssse3.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_hmask_sse4.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_mask_sse4.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_vmask_sse4.c:od_ec_prob_scale Unexecuted instantiation: loopfilter_sse4.c:od_ec_prob_scale Unexecuted instantiation: avm_convolve_copy_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_convolve_avx2.c:od_ec_prob_scale Unexecuted instantiation: intrapred_avx2.c:od_ec_prob_scale Unexecuted instantiation: blend_a64_mask_avx2.c:od_ec_prob_scale Unexecuted instantiation: entdec_avx2.c:od_ec_prob_scale Unexecuted instantiation: annexA.c:od_ec_prob_scale Unexecuted instantiation: alloccommon.c:od_ec_prob_scale Unexecuted instantiation: av2_loopfilter.c:od_ec_prob_scale Unexecuted instantiation: av2_txfm.c:od_ec_prob_scale Unexecuted instantiation: blockd.c:od_ec_prob_scale Unexecuted instantiation: cdef.c:od_ec_prob_scale Unexecuted instantiation: gdf.c:od_ec_prob_scale Unexecuted instantiation: gdf_block.c:od_ec_prob_scale Unexecuted instantiation: cdef_block.c:od_ec_prob_scale Unexecuted instantiation: cfl.c:od_ec_prob_scale Unexecuted instantiation: convolve.c:od_ec_prob_scale Unexecuted instantiation: entropy.c:od_ec_prob_scale Unexecuted instantiation: entropymode.c:od_ec_prob_scale Unexecuted instantiation: entropymv.c:od_ec_prob_scale Unexecuted instantiation: idct.c:od_ec_prob_scale Unexecuted instantiation: level.c:od_ec_prob_scale Unexecuted instantiation: mvref_common.c:od_ec_prob_scale Unexecuted instantiation: predefined_qm.c:od_ec_prob_scale Unexecuted instantiation: pred_common.c:od_ec_prob_scale Unexecuted instantiation: quant_common.c:od_ec_prob_scale Unexecuted instantiation: reconinter.c:od_ec_prob_scale Unexecuted instantiation: reconintra.c:od_ec_prob_scale Unexecuted instantiation: restoration.c:od_ec_prob_scale Unexecuted instantiation: scale.c:od_ec_prob_scale Unexecuted instantiation: scan.c:od_ec_prob_scale Unexecuted instantiation: seg_common.c:od_ec_prob_scale Unexecuted instantiation: thread_common.c:od_ec_prob_scale Unexecuted instantiation: tile_common.c:od_ec_prob_scale Unexecuted instantiation: timing.c:od_ec_prob_scale Unexecuted instantiation: tip.c:od_ec_prob_scale Unexecuted instantiation: txb_common.c:od_ec_prob_scale Unexecuted instantiation: warped_motion.c:od_ec_prob_scale Unexecuted instantiation: hr_coding.c:od_ec_prob_scale Unexecuted instantiation: intra_matrix.c:od_ec_prob_scale Unexecuted instantiation: intra_dip.cc:od_ec_prob_scale(unsigned short, unsigned int, int, int) Unexecuted instantiation: ccso.c:od_ec_prob_scale Unexecuted instantiation: bru.c:od_ec_prob_scale Unexecuted instantiation: obu_qm.c:od_ec_prob_scale Unexecuted instantiation: cdef_block_sse2.c:od_ec_prob_scale Unexecuted instantiation: cfl_sse2.c:od_ec_prob_scale Unexecuted instantiation: cdef_block_ssse3.c:od_ec_prob_scale Unexecuted instantiation: cfl_ssse3.c:od_ec_prob_scale Unexecuted instantiation: highbd_convolve_2d_ssse3.c:od_ec_prob_scale Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:od_ec_prob_scale Unexecuted instantiation: reconinter_ssse3.c:od_ec_prob_scale Unexecuted instantiation: cdef_block_sse4.c:od_ec_prob_scale Unexecuted instantiation: av2_convolve_horiz_rs_sse4.c:od_ec_prob_scale Unexecuted instantiation: av2_convolve_scale_sse4.c:od_ec_prob_scale Unexecuted instantiation: highbd_convolve_2d_sse4.c:od_ec_prob_scale Unexecuted instantiation: highbd_inv_txfm_sse4.c:od_ec_prob_scale Unexecuted instantiation: highbd_jnt_convolve_sse4.c:od_ec_prob_scale Unexecuted instantiation: highbd_warp_plane_sse4.c:od_ec_prob_scale Unexecuted instantiation: intra_edge_sse4.c:od_ec_prob_scale Unexecuted instantiation: optflow_refine_sse4.c:od_ec_prob_scale Unexecuted instantiation: reconinter_sse4.c:od_ec_prob_scale Unexecuted instantiation: cdef_block_avx2.c:od_ec_prob_scale Unexecuted instantiation: affine_optflow_refine_avx2.c:od_ec_prob_scale Unexecuted instantiation: bawp_avx2.c:od_ec_prob_scale Unexecuted instantiation: cfl_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_ccso_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_convolve_2d_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_inv_txfm_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_jnt_convolve_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_wiener_convolve_avx2.c:od_ec_prob_scale Unexecuted instantiation: highbd_warp_affine_avx2.c:od_ec_prob_scale Unexecuted instantiation: reconinter_avx2.c:od_ec_prob_scale Unexecuted instantiation: gdf_block_avx2.c:od_ec_prob_scale Unexecuted instantiation: avm_convolve.c:od_ec_prob_scale Unexecuted instantiation: intrapred.c:od_ec_prob_scale Unexecuted instantiation: sad.c:od_ec_prob_scale Unexecuted instantiation: highbd_intrapred_sse2.c:od_ec_prob_scale Unexecuted instantiation: av2_inv_txfm2d.c:od_ec_prob_scale |
246 | | |
247 | | // Adjust probability to more closely match the scaled prob used in |
248 | | // od_ec_prob_scale() |
249 | 0 | static INLINE unsigned get_adjusted_prob(uint16_t p, int n, int nsym) { |
250 | 0 | int adj_prob = (p >> EC_PROB_SHIFT) << EC_PROB_SHIFT; |
251 | 0 | int inc = av2_prob_inc_tbl[nsym - 2][n]; |
252 | 0 | adj_prob += inc << (EC_PROB_SHIFT - 4); |
253 | 0 | return adj_prob; |
254 | 0 | } Unexecuted instantiation: av2_dx_iface.c:get_adjusted_prob Unexecuted instantiation: annexF.c:get_adjusted_prob Unexecuted instantiation: decodeframe.c:get_adjusted_prob Unexecuted instantiation: decodemv.c:get_adjusted_prob Unexecuted instantiation: decoder.c:get_adjusted_prob Unexecuted instantiation: decodetxb.c:get_adjusted_prob Unexecuted instantiation: detokenize.c:get_adjusted_prob Unexecuted instantiation: obu_fgm.c:get_adjusted_prob Unexecuted instantiation: obu.c:get_adjusted_prob Unexecuted instantiation: obu_ci.c:get_adjusted_prob Unexecuted instantiation: obu_atlas.c:get_adjusted_prob Unexecuted instantiation: obu_lcr.c:get_adjusted_prob Unexecuted instantiation: obu_ops.c:get_adjusted_prob Unexecuted instantiation: obu_buf.c:get_adjusted_prob Unexecuted instantiation: avm_dsp_rtcd.c:get_adjusted_prob Unexecuted instantiation: av2_rtcd.c:get_adjusted_prob Unexecuted instantiation: blend_a64_hmask.c:get_adjusted_prob Unexecuted instantiation: blend_a64_mask.c:get_adjusted_prob Unexecuted instantiation: blend_a64_vmask.c:get_adjusted_prob Unexecuted instantiation: loopfilter.c:get_adjusted_prob Unexecuted instantiation: binary_codes_reader.c:get_adjusted_prob Unexecuted instantiation: bitreader.c:get_adjusted_prob Unexecuted instantiation: entdec.c:get_adjusted_prob Unexecuted instantiation: avm_convolve_copy_sse2.c:get_adjusted_prob Unexecuted instantiation: avm_asm_stubs.c:get_adjusted_prob Unexecuted instantiation: highbd_convolve_sse2.c:get_adjusted_prob Unexecuted instantiation: highbd_convolve_ssse3.c:get_adjusted_prob Unexecuted instantiation: blend_a64_hmask_sse4.c:get_adjusted_prob Unexecuted instantiation: blend_a64_mask_sse4.c:get_adjusted_prob Unexecuted instantiation: blend_a64_vmask_sse4.c:get_adjusted_prob Unexecuted instantiation: loopfilter_sse4.c:get_adjusted_prob Unexecuted instantiation: avm_convolve_copy_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_convolve_avx2.c:get_adjusted_prob Unexecuted instantiation: intrapred_avx2.c:get_adjusted_prob Unexecuted instantiation: blend_a64_mask_avx2.c:get_adjusted_prob Unexecuted instantiation: entdec_avx2.c:get_adjusted_prob Unexecuted instantiation: annexA.c:get_adjusted_prob Unexecuted instantiation: alloccommon.c:get_adjusted_prob Unexecuted instantiation: av2_loopfilter.c:get_adjusted_prob Unexecuted instantiation: av2_txfm.c:get_adjusted_prob Unexecuted instantiation: blockd.c:get_adjusted_prob Unexecuted instantiation: cdef.c:get_adjusted_prob Unexecuted instantiation: gdf.c:get_adjusted_prob Unexecuted instantiation: gdf_block.c:get_adjusted_prob Unexecuted instantiation: cdef_block.c:get_adjusted_prob Unexecuted instantiation: cfl.c:get_adjusted_prob Unexecuted instantiation: convolve.c:get_adjusted_prob Unexecuted instantiation: entropy.c:get_adjusted_prob Unexecuted instantiation: entropymode.c:get_adjusted_prob Unexecuted instantiation: entropymv.c:get_adjusted_prob Unexecuted instantiation: idct.c:get_adjusted_prob Unexecuted instantiation: level.c:get_adjusted_prob Unexecuted instantiation: mvref_common.c:get_adjusted_prob Unexecuted instantiation: predefined_qm.c:get_adjusted_prob Unexecuted instantiation: pred_common.c:get_adjusted_prob Unexecuted instantiation: quant_common.c:get_adjusted_prob Unexecuted instantiation: reconinter.c:get_adjusted_prob Unexecuted instantiation: reconintra.c:get_adjusted_prob Unexecuted instantiation: restoration.c:get_adjusted_prob Unexecuted instantiation: scale.c:get_adjusted_prob Unexecuted instantiation: scan.c:get_adjusted_prob Unexecuted instantiation: seg_common.c:get_adjusted_prob Unexecuted instantiation: thread_common.c:get_adjusted_prob Unexecuted instantiation: tile_common.c:get_adjusted_prob Unexecuted instantiation: timing.c:get_adjusted_prob Unexecuted instantiation: tip.c:get_adjusted_prob Unexecuted instantiation: txb_common.c:get_adjusted_prob Unexecuted instantiation: warped_motion.c:get_adjusted_prob Unexecuted instantiation: hr_coding.c:get_adjusted_prob Unexecuted instantiation: intra_matrix.c:get_adjusted_prob Unexecuted instantiation: intra_dip.cc:get_adjusted_prob(unsigned short, int, int) Unexecuted instantiation: ccso.c:get_adjusted_prob Unexecuted instantiation: bru.c:get_adjusted_prob Unexecuted instantiation: obu_qm.c:get_adjusted_prob Unexecuted instantiation: cdef_block_sse2.c:get_adjusted_prob Unexecuted instantiation: cfl_sse2.c:get_adjusted_prob Unexecuted instantiation: cdef_block_ssse3.c:get_adjusted_prob Unexecuted instantiation: cfl_ssse3.c:get_adjusted_prob Unexecuted instantiation: highbd_convolve_2d_ssse3.c:get_adjusted_prob Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:get_adjusted_prob Unexecuted instantiation: reconinter_ssse3.c:get_adjusted_prob Unexecuted instantiation: cdef_block_sse4.c:get_adjusted_prob Unexecuted instantiation: av2_convolve_horiz_rs_sse4.c:get_adjusted_prob Unexecuted instantiation: av2_convolve_scale_sse4.c:get_adjusted_prob Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_adjusted_prob Unexecuted instantiation: highbd_inv_txfm_sse4.c:get_adjusted_prob Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_adjusted_prob Unexecuted instantiation: highbd_warp_plane_sse4.c:get_adjusted_prob Unexecuted instantiation: intra_edge_sse4.c:get_adjusted_prob Unexecuted instantiation: optflow_refine_sse4.c:get_adjusted_prob Unexecuted instantiation: reconinter_sse4.c:get_adjusted_prob Unexecuted instantiation: cdef_block_avx2.c:get_adjusted_prob Unexecuted instantiation: affine_optflow_refine_avx2.c:get_adjusted_prob Unexecuted instantiation: bawp_avx2.c:get_adjusted_prob Unexecuted instantiation: cfl_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_ccso_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_convolve_2d_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_inv_txfm_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_jnt_convolve_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_wiener_convolve_avx2.c:get_adjusted_prob Unexecuted instantiation: highbd_warp_affine_avx2.c:get_adjusted_prob Unexecuted instantiation: reconinter_avx2.c:get_adjusted_prob Unexecuted instantiation: gdf_block_avx2.c:get_adjusted_prob Unexecuted instantiation: avm_convolve.c:get_adjusted_prob Unexecuted instantiation: intrapred.c:get_adjusted_prob Unexecuted instantiation: sad.c:get_adjusted_prob Unexecuted instantiation: highbd_intrapred_sse2.c:get_adjusted_prob Unexecuted instantiation: av2_inv_txfm2d.c:get_adjusted_prob |
255 | | |
256 | | #endif // AVM_AVM_DSP_PROB_H_ |