Coverage Report

Created: 2025-06-13 07:07

/src/aom/aom_dsp/prob.h
Line
Count
Source (jump to first uncovered line)
1
/*
2
 * Copyright (c) 2016, Alliance for Open Media. All rights reserved.
3
 *
4
 * This source code is subject to the terms of the BSD 2 Clause License and
5
 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6
 * was not distributed with this source code in the LICENSE file, you can
7
 * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8
 * Media Patent License 1.0 was not distributed with this source code in the
9
 * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10
 */
11
12
#ifndef AOM_AOM_DSP_PROB_H_
13
#define AOM_AOM_DSP_PROB_H_
14
15
#include <assert.h>
16
#include <stdio.h>
17
18
#include "config/aom_config.h"
19
20
#include "aom_dsp/aom_dsp_common.h"
21
#include "aom_dsp/entcode.h"
22
#include "aom_ports/bitops.h"
23
#include "aom_ports/mem.h"
24
25
#ifdef __cplusplus
26
extern "C" {
27
#endif
28
29
typedef uint16_t aom_cdf_prob;
30
31
#define CDF_SIZE(x) ((x) + 1)
32
462M
#define CDF_PROB_BITS 15
33
462M
#define CDF_PROB_TOP (1 << CDF_PROB_BITS)
34
/*The value stored in an iCDF is CDF_PROB_TOP minus the actual cumulative
35
  probability (an "inverse" CDF).
36
  This function converts from one representation to the other (and is its own
37
  inverse).*/
38
644k
#define AOM_ICDF(x) (CDF_PROB_TOP - (x))
39
40
#define AOM_CDF2(a0) AOM_ICDF(a0), AOM_ICDF(CDF_PROB_TOP), 0
41
#define AOM_CDF3(a0, a1) AOM_ICDF(a0), AOM_ICDF(a1), AOM_ICDF(CDF_PROB_TOP), 0
42
#define AOM_CDF4(a0, a1, a2) \
43
  AOM_ICDF(a0), AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(CDF_PROB_TOP), 0
44
#define AOM_CDF5(a0, a1, a2, a3) \
45
  AOM_ICDF(a0)                   \
46
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(CDF_PROB_TOP), 0
47
#define AOM_CDF6(a0, a1, a2, a3, a4)                        \
48
  AOM_ICDF(a0)                                              \
49
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), \
50
      AOM_ICDF(CDF_PROB_TOP), 0
51
#define AOM_CDF7(a0, a1, a2, a3, a4, a5)                                  \
52
  AOM_ICDF(a0)                                                            \
53
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5), \
54
      AOM_ICDF(CDF_PROB_TOP), 0
55
#define AOM_CDF8(a0, a1, a2, a3, a4, a5, a6)                              \
56
  AOM_ICDF(a0)                                                            \
57
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5), \
58
      AOM_ICDF(a6), AOM_ICDF(CDF_PROB_TOP), 0
59
#define AOM_CDF9(a0, a1, a2, a3, a4, a5, a6, a7)                          \
60
  AOM_ICDF(a0)                                                            \
61
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5), \
62
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(CDF_PROB_TOP), 0
63
#define AOM_CDF10(a0, a1, a2, a3, a4, a5, a6, a7, a8)                     \
64
  AOM_ICDF(a0)                                                            \
65
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5), \
66
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(CDF_PROB_TOP), 0
67
#define AOM_CDF11(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9)                 \
68
  AOM_ICDF(a0)                                                            \
69
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5), \
70
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(a9),             \
71
      AOM_ICDF(CDF_PROB_TOP), 0
72
#define AOM_CDF12(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)               \
73
  AOM_ICDF(a0)                                                               \
74
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5),    \
75
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(a9), AOM_ICDF(a10), \
76
      AOM_ICDF(CDF_PROB_TOP), 0
77
#define AOM_CDF13(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11)          \
78
  AOM_ICDF(a0)                                                               \
79
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5),    \
80
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(a9), AOM_ICDF(a10), \
81
      AOM_ICDF(a11), AOM_ICDF(CDF_PROB_TOP), 0
82
#define AOM_CDF14(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12)     \
83
  AOM_ICDF(a0)                                                               \
84
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5),    \
85
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(a9), AOM_ICDF(a10), \
86
      AOM_ICDF(a11), AOM_ICDF(a12), AOM_ICDF(CDF_PROB_TOP), 0
87
#define AOM_CDF15(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13) \
88
  AOM_ICDF(a0)                                                                \
89
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5),     \
90
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(a9), AOM_ICDF(a10),  \
91
      AOM_ICDF(a11), AOM_ICDF(a12), AOM_ICDF(a13), AOM_ICDF(CDF_PROB_TOP), 0
92
#define AOM_CDF16(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, \
93
                  a14)                                                        \
94
  AOM_ICDF(a0)                                                                \
95
  , AOM_ICDF(a1), AOM_ICDF(a2), AOM_ICDF(a3), AOM_ICDF(a4), AOM_ICDF(a5),     \
96
      AOM_ICDF(a6), AOM_ICDF(a7), AOM_ICDF(a8), AOM_ICDF(a9), AOM_ICDF(a10),  \
97
      AOM_ICDF(a11), AOM_ICDF(a12), AOM_ICDF(a13), AOM_ICDF(a14),             \
98
      AOM_ICDF(CDF_PROB_TOP), 0
99
100
0
static inline uint8_t get_prob(unsigned int num, unsigned int den) {
101
0
  assert(den != 0);
102
0
  {
103
0
    const int p = (int)(((uint64_t)num * 256 + (den >> 1)) / den);
104
0
    // (p > 255) ? 255 : (p < 1) ? 1 : p;
105
0
    const int clipped_prob = p | ((255 - p) >> 23) | (p == 0);
106
0
    return (uint8_t)clipped_prob;
107
0
  }
108
0
}
Unexecuted instantiation: av1_dx_iface.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.c:get_prob
Unexecuted instantiation: aom_dsp_rtcd.c:get_prob
Unexecuted instantiation: av1_rtcd.c:get_prob
Unexecuted instantiation: aom_convolve.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: intrapred.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: aom_convolve_copy_sse2.c:get_prob
Unexecuted instantiation: intrapred_sse2.c:get_prob
Unexecuted instantiation: loopfilter_sse2.c:get_prob
Unexecuted instantiation: highbd_convolve_sse2.c:get_prob
Unexecuted instantiation: highbd_loopfilter_sse2.c:get_prob
Unexecuted instantiation: aom_subpixel_8t_intrin_ssse3.c:get_prob
Unexecuted instantiation: intrapred_ssse3.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: intrapred_sse4.c:get_prob
Unexecuted instantiation: aom_convolve_copy_avx2.c:get_prob
Unexecuted instantiation: aom_subpixel_8t_intrin_avx2.c:get_prob
Unexecuted instantiation: intrapred_avx2.c:get_prob
Unexecuted instantiation: loopfilter_avx2.c:get_prob
Unexecuted instantiation: blend_a64_mask_avx2.c:get_prob
Unexecuted instantiation: highbd_convolve_avx2.c:get_prob
Unexecuted instantiation: highbd_loopfilter_avx2.c:get_prob
Unexecuted instantiation: alloccommon.c:get_prob
Unexecuted instantiation: av1_inv_txfm2d.c:get_prob
Unexecuted instantiation: av1_loopfilter.c:get_prob
Unexecuted instantiation: av1_txfm.c:get_prob
Unexecuted instantiation: blockd.c:get_prob
Unexecuted instantiation: cdef.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: mvref_common.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: resize.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: txb_common.c:get_prob
Unexecuted instantiation: warped_motion.c:get_prob
Unexecuted instantiation: cfl_sse2.c:get_prob
Unexecuted instantiation: convolve_2d_sse2.c:get_prob
Unexecuted instantiation: convolve_sse2.c:get_prob
Unexecuted instantiation: jnt_convolve_sse2.c:get_prob
Unexecuted instantiation: resize_sse2.c:get_prob
Unexecuted instantiation: wiener_convolve_sse2.c:get_prob
Unexecuted instantiation: av1_inv_txfm_ssse3.c:get_prob
Unexecuted instantiation: cfl_ssse3.c:get_prob
Unexecuted instantiation: jnt_convolve_ssse3.c:get_prob
Unexecuted instantiation: resize_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: av1_convolve_horiz_rs_sse4.c:get_prob
Unexecuted instantiation: av1_convolve_scale_sse4.c:get_prob
Unexecuted instantiation: av1_txfm_sse4.c:get_prob
Unexecuted instantiation: cdef_block_sse4.c:get_prob
Unexecuted instantiation: filterintra_sse4.c:get_prob
Unexecuted instantiation: highbd_inv_txfm_sse4.c:get_prob
Unexecuted instantiation: intra_edge_sse4.c:get_prob
Unexecuted instantiation: reconinter_sse4.c:get_prob
Unexecuted instantiation: selfguided_sse4.c:get_prob
Unexecuted instantiation: warp_plane_sse4.c:get_prob
Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_prob
Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_prob
Unexecuted instantiation: highbd_warp_plane_sse4.c:get_prob
Unexecuted instantiation: av1_inv_txfm_avx2.c:get_prob
Unexecuted instantiation: cdef_block_avx2.c:get_prob
Unexecuted instantiation: cfl_avx2.c:get_prob
Unexecuted instantiation: convolve_2d_avx2.c:get_prob
Unexecuted instantiation: convolve_avx2.c:get_prob
Unexecuted instantiation: highbd_inv_txfm_avx2.c:get_prob
Unexecuted instantiation: jnt_convolve_avx2.c:get_prob
Unexecuted instantiation: reconinter_avx2.c:get_prob
Unexecuted instantiation: resize_avx2.c:get_prob
Unexecuted instantiation: selfguided_avx2.c:get_prob
Unexecuted instantiation: warp_plane_avx2.c:get_prob
Unexecuted instantiation: wiener_convolve_avx2.c:get_prob
Unexecuted instantiation: highbd_convolve_2d_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: entcode.c:get_prob
Unexecuted instantiation: highbd_intrapred_sse2.c:get_prob
Unexecuted instantiation: av1_inv_txfm1d.c:get_prob
109
110
504M
static inline void update_cdf(aom_cdf_prob *cdf, int8_t val, int nsymbs) {
111
504M
  assert(nsymbs < 17);
112
504M
  const int count = cdf[nsymbs];
113
114
  // rate is computed in the spec as:
115
  //  3 + ( cdf[N] > 15 ) + ( cdf[N] > 31 ) + Min(FloorLog2(N), 2)
116
  // In this case cdf[N] is |count|.
117
  // Min(FloorLog2(N), 2) is 1 for nsymbs == {2, 3} and 2 for all
118
  // nsymbs > 3. So the equation becomes:
119
  //  4 + (count > 15) + (count > 31) + (nsymbs > 3).
120
  // Note that the largest value for count is 32 (it is not incremented beyond
121
  // 32). So using that information:
122
  //  count >> 4 is 0 for count from 0 to 15.
123
  //  count >> 4 is 1 for count from 16 to 31.
124
  //  count >> 4 is 2 for count == 31.
125
  // Now, the equation becomes:
126
  //  4 + (count >> 4) + (nsymbs > 3).
127
504M
  const int rate = 4 + (count >> 4) + (nsymbs > 3);
128
129
504M
  int i = 0;
130
1.69G
  do {
131
1.69G
    if (i < val) {
132
461M
      cdf[i] += (CDF_PROB_TOP - cdf[i]) >> rate;
133
1.23G
    } else {
134
1.23G
      cdf[i] -= cdf[i] >> rate;
135
1.23G
    }
136
1.69G
  } while (++i < nsymbs - 1);
137
504M
  cdf[nsymbs] += (count < 32);
138
504M
}
Unexecuted instantiation: av1_dx_iface.c:update_cdf
decodeframe.c:update_cdf
Line
Count
Source
110
12.9M
static inline void update_cdf(aom_cdf_prob *cdf, int8_t val, int nsymbs) {
111
12.9M
  assert(nsymbs < 17);
112
12.9M
  const int count = cdf[nsymbs];
113
114
  // rate is computed in the spec as:
115
  //  3 + ( cdf[N] > 15 ) + ( cdf[N] > 31 ) + Min(FloorLog2(N), 2)
116
  // In this case cdf[N] is |count|.
117
  // Min(FloorLog2(N), 2) is 1 for nsymbs == {2, 3} and 2 for all
118
  // nsymbs > 3. So the equation becomes:
119
  //  4 + (count > 15) + (count > 31) + (nsymbs > 3).
120
  // Note that the largest value for count is 32 (it is not incremented beyond
121
  // 32). So using that information:
122
  //  count >> 4 is 0 for count from 0 to 15.
123
  //  count >> 4 is 1 for count from 16 to 31.
124
  //  count >> 4 is 2 for count == 31.
125
  // Now, the equation becomes:
126
  //  4 + (count >> 4) + (nsymbs > 3).
127
12.9M
  const int rate = 4 + (count >> 4) + (nsymbs > 3);
128
129
12.9M
  int i = 0;
130
79.8M
  do {
131
79.8M
    if (i < val) {
132
24.7M
      cdf[i] += (CDF_PROB_TOP - cdf[i]) >> rate;
133
55.1M
    } else {
134
55.1M
      cdf[i] -= cdf[i] >> rate;
135
55.1M
    }
136
79.8M
  } while (++i < nsymbs - 1);
137
12.9M
  cdf[nsymbs] += (count < 32);
138
12.9M
}
decodemv.c:update_cdf
Line
Count
Source
110
106M
static inline void update_cdf(aom_cdf_prob *cdf, int8_t val, int nsymbs) {
111
106M
  assert(nsymbs < 17);
112
106M
  const int count = cdf[nsymbs];
113
114
  // rate is computed in the spec as:
115
  //  3 + ( cdf[N] > 15 ) + ( cdf[N] > 31 ) + Min(FloorLog2(N), 2)
116
  // In this case cdf[N] is |count|.
117
  // Min(FloorLog2(N), 2) is 1 for nsymbs == {2, 3} and 2 for all
118
  // nsymbs > 3. So the equation becomes:
119
  //  4 + (count > 15) + (count > 31) + (nsymbs > 3).
120
  // Note that the largest value for count is 32 (it is not incremented beyond
121
  // 32). So using that information:
122
  //  count >> 4 is 0 for count from 0 to 15.
123
  //  count >> 4 is 1 for count from 16 to 31.
124
  //  count >> 4 is 2 for count == 31.
125
  // Now, the equation becomes:
126
  //  4 + (count >> 4) + (nsymbs > 3).
127
106M
  const int rate = 4 + (count >> 4) + (nsymbs > 3);
128
129
106M
  int i = 0;
130
518M
  do {
131
518M
    if (i < val) {
132
194M
      cdf[i] += (CDF_PROB_TOP - cdf[i]) >> rate;
133
324M
    } else {
134
324M
      cdf[i] -= cdf[i] >> rate;
135
324M
    }
136
518M
  } while (++i < nsymbs - 1);
137
106M
  cdf[nsymbs] += (count < 32);
138
106M
}
Unexecuted instantiation: decoder.c:update_cdf
decodetxb.c:update_cdf
Line
Count
Source
110
360M
static inline void update_cdf(aom_cdf_prob *cdf, int8_t val, int nsymbs) {
111
360M
  assert(nsymbs < 17);
112
360M
  const int count = cdf[nsymbs];
113
114
  // rate is computed in the spec as:
115
  //  3 + ( cdf[N] > 15 ) + ( cdf[N] > 31 ) + Min(FloorLog2(N), 2)
116
  // In this case cdf[N] is |count|.
117
  // Min(FloorLog2(N), 2) is 1 for nsymbs == {2, 3} and 2 for all
118
  // nsymbs > 3. So the equation becomes:
119
  //  4 + (count > 15) + (count > 31) + (nsymbs > 3).
120
  // Note that the largest value for count is 32 (it is not incremented beyond
121
  // 32). So using that information:
122
  //  count >> 4 is 0 for count from 0 to 15.
123
  //  count >> 4 is 1 for count from 16 to 31.
124
  //  count >> 4 is 2 for count == 31.
125
  // Now, the equation becomes:
126
  //  4 + (count >> 4) + (nsymbs > 3).
127
360M
  const int rate = 4 + (count >> 4) + (nsymbs > 3);
128
129
360M
  int i = 0;
130
1.01G
  do {
131
1.01G
    if (i < val) {
132
227M
      cdf[i] += (CDF_PROB_TOP - cdf[i]) >> rate;
133
783M
    } else {
134
783M
      cdf[i] -= cdf[i] >> rate;
135
783M
    }
136
1.01G
  } while (++i < nsymbs - 1);
137
360M
  cdf[nsymbs] += (count < 32);
138
360M
}
detokenize.c:update_cdf
Line
Count
Source
110
24.4M
static inline void update_cdf(aom_cdf_prob *cdf, int8_t val, int nsymbs) {
111
24.4M
  assert(nsymbs < 17);
112
24.4M
  const int count = cdf[nsymbs];
113
114
  // rate is computed in the spec as:
115
  //  3 + ( cdf[N] > 15 ) + ( cdf[N] > 31 ) + Min(FloorLog2(N), 2)
116
  // In this case cdf[N] is |count|.
117
  // Min(FloorLog2(N), 2) is 1 for nsymbs == {2, 3} and 2 for all
118
  // nsymbs > 3. So the equation becomes:
119
  //  4 + (count > 15) + (count > 31) + (nsymbs > 3).
120
  // Note that the largest value for count is 32 (it is not incremented beyond
121
  // 32). So using that information:
122
  //  count >> 4 is 0 for count from 0 to 15.
123
  //  count >> 4 is 1 for count from 16 to 31.
124
  //  count >> 4 is 2 for count == 31.
125
  // Now, the equation becomes:
126
  //  4 + (count >> 4) + (nsymbs > 3).
127
24.4M
  const int rate = 4 + (count >> 4) + (nsymbs > 3);
128
129
24.4M
  int i = 0;
130
83.1M
  do {
131
83.1M
    if (i < val) {
132
14.9M
      cdf[i] += (CDF_PROB_TOP - cdf[i]) >> rate;
133
68.2M
    } else {
134
68.2M
      cdf[i] -= cdf[i] >> rate;
135
68.2M
    }
136
83.1M
  } while (++i < nsymbs - 1);
137
24.4M
  cdf[nsymbs] += (count < 32);
138
24.4M
}
Unexecuted instantiation: obu.c:update_cdf
Unexecuted instantiation: aom_dsp_rtcd.c:update_cdf
Unexecuted instantiation: av1_rtcd.c:update_cdf
Unexecuted instantiation: aom_convolve.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: intrapred.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: aom_convolve_copy_sse2.c:update_cdf
Unexecuted instantiation: intrapred_sse2.c:update_cdf
Unexecuted instantiation: loopfilter_sse2.c:update_cdf
Unexecuted instantiation: highbd_convolve_sse2.c:update_cdf
Unexecuted instantiation: highbd_loopfilter_sse2.c:update_cdf
Unexecuted instantiation: aom_subpixel_8t_intrin_ssse3.c:update_cdf
Unexecuted instantiation: intrapred_ssse3.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: intrapred_sse4.c:update_cdf
Unexecuted instantiation: aom_convolve_copy_avx2.c:update_cdf
Unexecuted instantiation: aom_subpixel_8t_intrin_avx2.c:update_cdf
Unexecuted instantiation: intrapred_avx2.c:update_cdf
Unexecuted instantiation: loopfilter_avx2.c:update_cdf
Unexecuted instantiation: blend_a64_mask_avx2.c:update_cdf
Unexecuted instantiation: highbd_convolve_avx2.c:update_cdf
Unexecuted instantiation: highbd_loopfilter_avx2.c:update_cdf
Unexecuted instantiation: alloccommon.c:update_cdf
Unexecuted instantiation: av1_inv_txfm2d.c:update_cdf
Unexecuted instantiation: av1_loopfilter.c:update_cdf
Unexecuted instantiation: av1_txfm.c:update_cdf
Unexecuted instantiation: blockd.c:update_cdf
Unexecuted instantiation: cdef.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: mvref_common.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: resize.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: txb_common.c:update_cdf
Unexecuted instantiation: warped_motion.c:update_cdf
Unexecuted instantiation: cfl_sse2.c:update_cdf
Unexecuted instantiation: convolve_2d_sse2.c:update_cdf
Unexecuted instantiation: convolve_sse2.c:update_cdf
Unexecuted instantiation: jnt_convolve_sse2.c:update_cdf
Unexecuted instantiation: resize_sse2.c:update_cdf
Unexecuted instantiation: wiener_convolve_sse2.c:update_cdf
Unexecuted instantiation: av1_inv_txfm_ssse3.c:update_cdf
Unexecuted instantiation: cfl_ssse3.c:update_cdf
Unexecuted instantiation: jnt_convolve_ssse3.c:update_cdf
Unexecuted instantiation: resize_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: av1_convolve_horiz_rs_sse4.c:update_cdf
Unexecuted instantiation: av1_convolve_scale_sse4.c:update_cdf
Unexecuted instantiation: av1_txfm_sse4.c:update_cdf
Unexecuted instantiation: cdef_block_sse4.c:update_cdf
Unexecuted instantiation: filterintra_sse4.c:update_cdf
Unexecuted instantiation: highbd_inv_txfm_sse4.c:update_cdf
Unexecuted instantiation: intra_edge_sse4.c:update_cdf
Unexecuted instantiation: reconinter_sse4.c:update_cdf
Unexecuted instantiation: selfguided_sse4.c:update_cdf
Unexecuted instantiation: warp_plane_sse4.c:update_cdf
Unexecuted instantiation: highbd_convolve_2d_sse4.c:update_cdf
Unexecuted instantiation: highbd_jnt_convolve_sse4.c:update_cdf
Unexecuted instantiation: highbd_warp_plane_sse4.c:update_cdf
Unexecuted instantiation: av1_inv_txfm_avx2.c:update_cdf
Unexecuted instantiation: cdef_block_avx2.c:update_cdf
Unexecuted instantiation: cfl_avx2.c:update_cdf
Unexecuted instantiation: convolve_2d_avx2.c:update_cdf
Unexecuted instantiation: convolve_avx2.c:update_cdf
Unexecuted instantiation: highbd_inv_txfm_avx2.c:update_cdf
Unexecuted instantiation: jnt_convolve_avx2.c:update_cdf
Unexecuted instantiation: reconinter_avx2.c:update_cdf
Unexecuted instantiation: resize_avx2.c:update_cdf
Unexecuted instantiation: selfguided_avx2.c:update_cdf
Unexecuted instantiation: warp_plane_avx2.c:update_cdf
Unexecuted instantiation: wiener_convolve_avx2.c:update_cdf
Unexecuted instantiation: highbd_convolve_2d_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: entcode.c:update_cdf
Unexecuted instantiation: highbd_intrapred_sse2.c:update_cdf
Unexecuted instantiation: av1_inv_txfm1d.c:update_cdf
139
140
#ifdef __cplusplus
141
}  // extern "C"
142
#endif
143
144
#endif  // AOM_AOM_DSP_PROB_H_