Coverage Report

Created: 2026-06-14 06:57

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/aom/av1/common/txb_common.h
Line
Count
Source
1
/*
2
 * Copyright (c) 2017, 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_AV1_COMMON_TXB_COMMON_H_
13
#define AOM_AV1_COMMON_TXB_COMMON_H_
14
15
#include "av1/common/av1_common_int.h"
16
17
extern const int16_t av1_eob_group_start[12];
18
extern const int16_t av1_eob_offset_bits[12];
19
20
extern const int8_t *av1_nz_map_ctx_offset[TX_SIZES_ALL];
21
22
typedef struct txb_ctx {
23
  int txb_skip_ctx;
24
  int dc_sign_ctx;
25
} TXB_CTX;
26
27
static const int base_level_count_to_index[13] = {
28
  0, 0, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,
29
};
30
31
static const TX_CLASS tx_type_to_class[TX_TYPES] = {
32
  TX_CLASS_2D,     // DCT_DCT
33
  TX_CLASS_2D,     // ADST_DCT
34
  TX_CLASS_2D,     // DCT_ADST
35
  TX_CLASS_2D,     // ADST_ADST
36
  TX_CLASS_2D,     // FLIPADST_DCT
37
  TX_CLASS_2D,     // DCT_FLIPADST
38
  TX_CLASS_2D,     // FLIPADST_FLIPADST
39
  TX_CLASS_2D,     // ADST_FLIPADST
40
  TX_CLASS_2D,     // FLIPADST_ADST
41
  TX_CLASS_2D,     // IDTX
42
  TX_CLASS_VERT,   // V_DCT
43
  TX_CLASS_HORIZ,  // H_DCT
44
  TX_CLASS_VERT,   // V_ADST
45
  TX_CLASS_HORIZ,  // H_ADST
46
  TX_CLASS_VERT,   // V_FLIPADST
47
  TX_CLASS_HORIZ,  // H_FLIPADST
48
};
49
50
13.0M
static inline int get_txb_bhl(TX_SIZE tx_size) {
51
13.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
52
13.0M
  return tx_size_high_log2[tx_size];
53
13.0M
}
decodetxb.c:get_txb_bhl
Line
Count
Source
50
13.0M
static inline int get_txb_bhl(TX_SIZE tx_size) {
51
13.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
52
13.0M
  return tx_size_high_log2[tx_size];
53
13.0M
}
Unexecuted instantiation: av1_cx_iface.c:get_txb_bhl
Unexecuted instantiation: allintra_vis.c:get_txb_bhl
Unexecuted instantiation: av1_quantize.c:get_txb_bhl
Unexecuted instantiation: bitstream.c:get_txb_bhl
Unexecuted instantiation: context_tree.c:get_txb_bhl
Unexecuted instantiation: encodeframe.c:get_txb_bhl
Unexecuted instantiation: encodeframe_utils.c:get_txb_bhl
Unexecuted instantiation: encodemb.c:get_txb_bhl
Unexecuted instantiation: encodemv.c:get_txb_bhl
Unexecuted instantiation: encoder.c:get_txb_bhl
Unexecuted instantiation: encoder_utils.c:get_txb_bhl
Unexecuted instantiation: encodetxb.c:get_txb_bhl
Unexecuted instantiation: ethread.c:get_txb_bhl
Unexecuted instantiation: firstpass.c:get_txb_bhl
Unexecuted instantiation: global_motion_facade.c:get_txb_bhl
Unexecuted instantiation: level.c:get_txb_bhl
Unexecuted instantiation: lookahead.c:get_txb_bhl
Unexecuted instantiation: mcomp.c:get_txb_bhl
Unexecuted instantiation: mv_prec.c:get_txb_bhl
Unexecuted instantiation: palette.c:get_txb_bhl
Unexecuted instantiation: partition_search.c:get_txb_bhl
Unexecuted instantiation: partition_strategy.c:get_txb_bhl
Unexecuted instantiation: pass2_strategy.c:get_txb_bhl
Unexecuted instantiation: pickcdef.c:get_txb_bhl
Unexecuted instantiation: picklpf.c:get_txb_bhl
Unexecuted instantiation: pickrst.c:get_txb_bhl
Unexecuted instantiation: ratectrl.c:get_txb_bhl
Unexecuted instantiation: rd.c:get_txb_bhl
Unexecuted instantiation: rdopt.c:get_txb_bhl
Unexecuted instantiation: nonrd_pickmode.c:get_txb_bhl
Unexecuted instantiation: nonrd_opt.c:get_txb_bhl
Unexecuted instantiation: segmentation.c:get_txb_bhl
Unexecuted instantiation: speed_features.c:get_txb_bhl
Unexecuted instantiation: superres_scale.c:get_txb_bhl
Unexecuted instantiation: svc_layercontext.c:get_txb_bhl
Unexecuted instantiation: temporal_filter.c:get_txb_bhl
Unexecuted instantiation: tokenize.c:get_txb_bhl
Unexecuted instantiation: tpl_model.c:get_txb_bhl
Unexecuted instantiation: tx_search.c:get_txb_bhl
Unexecuted instantiation: txb_rdopt.c:get_txb_bhl
Unexecuted instantiation: intra_mode_search.c:get_txb_bhl
Unexecuted instantiation: var_based_part.c:get_txb_bhl
Unexecuted instantiation: av1_noise_estimate.c:get_txb_bhl
Unexecuted instantiation: entropy.c:get_txb_bhl
Unexecuted instantiation: entropymode.c:get_txb_bhl
Unexecuted instantiation: txb_common.c:get_txb_bhl
Unexecuted instantiation: aq_complexity.c:get_txb_bhl
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_bhl
Unexecuted instantiation: aq_variance.c:get_txb_bhl
Unexecuted instantiation: compound_type.c:get_txb_bhl
Unexecuted instantiation: encode_strategy.c:get_txb_bhl
Unexecuted instantiation: global_motion.c:get_txb_bhl
Unexecuted instantiation: gop_structure.c:get_txb_bhl
Unexecuted instantiation: interp_search.c:get_txb_bhl
Unexecuted instantiation: motion_search_facade.c:get_txb_bhl
54
55
13.0M
static inline int get_txb_wide(TX_SIZE tx_size) {
56
13.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
57
13.0M
  return tx_size_wide[tx_size];
58
13.0M
}
decodetxb.c:get_txb_wide
Line
Count
Source
55
13.0M
static inline int get_txb_wide(TX_SIZE tx_size) {
56
13.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
57
13.0M
  return tx_size_wide[tx_size];
58
13.0M
}
Unexecuted instantiation: av1_cx_iface.c:get_txb_wide
Unexecuted instantiation: allintra_vis.c:get_txb_wide
Unexecuted instantiation: av1_quantize.c:get_txb_wide
Unexecuted instantiation: bitstream.c:get_txb_wide
Unexecuted instantiation: context_tree.c:get_txb_wide
Unexecuted instantiation: encodeframe.c:get_txb_wide
Unexecuted instantiation: encodeframe_utils.c:get_txb_wide
Unexecuted instantiation: encodemb.c:get_txb_wide
Unexecuted instantiation: encodemv.c:get_txb_wide
Unexecuted instantiation: encoder.c:get_txb_wide
Unexecuted instantiation: encoder_utils.c:get_txb_wide
Unexecuted instantiation: encodetxb.c:get_txb_wide
Unexecuted instantiation: ethread.c:get_txb_wide
Unexecuted instantiation: firstpass.c:get_txb_wide
Unexecuted instantiation: global_motion_facade.c:get_txb_wide
Unexecuted instantiation: level.c:get_txb_wide
Unexecuted instantiation: lookahead.c:get_txb_wide
Unexecuted instantiation: mcomp.c:get_txb_wide
Unexecuted instantiation: mv_prec.c:get_txb_wide
Unexecuted instantiation: palette.c:get_txb_wide
Unexecuted instantiation: partition_search.c:get_txb_wide
Unexecuted instantiation: partition_strategy.c:get_txb_wide
Unexecuted instantiation: pass2_strategy.c:get_txb_wide
Unexecuted instantiation: pickcdef.c:get_txb_wide
Unexecuted instantiation: picklpf.c:get_txb_wide
Unexecuted instantiation: pickrst.c:get_txb_wide
Unexecuted instantiation: ratectrl.c:get_txb_wide
Unexecuted instantiation: rd.c:get_txb_wide
Unexecuted instantiation: rdopt.c:get_txb_wide
Unexecuted instantiation: nonrd_pickmode.c:get_txb_wide
Unexecuted instantiation: nonrd_opt.c:get_txb_wide
Unexecuted instantiation: segmentation.c:get_txb_wide
Unexecuted instantiation: speed_features.c:get_txb_wide
Unexecuted instantiation: superres_scale.c:get_txb_wide
Unexecuted instantiation: svc_layercontext.c:get_txb_wide
Unexecuted instantiation: temporal_filter.c:get_txb_wide
Unexecuted instantiation: tokenize.c:get_txb_wide
Unexecuted instantiation: tpl_model.c:get_txb_wide
Unexecuted instantiation: tx_search.c:get_txb_wide
Unexecuted instantiation: txb_rdopt.c:get_txb_wide
Unexecuted instantiation: intra_mode_search.c:get_txb_wide
Unexecuted instantiation: var_based_part.c:get_txb_wide
Unexecuted instantiation: av1_noise_estimate.c:get_txb_wide
Unexecuted instantiation: entropy.c:get_txb_wide
Unexecuted instantiation: entropymode.c:get_txb_wide
Unexecuted instantiation: txb_common.c:get_txb_wide
Unexecuted instantiation: aq_complexity.c:get_txb_wide
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_wide
Unexecuted instantiation: aq_variance.c:get_txb_wide
Unexecuted instantiation: compound_type.c:get_txb_wide
Unexecuted instantiation: encode_strategy.c:get_txb_wide
Unexecuted instantiation: global_motion.c:get_txb_wide
Unexecuted instantiation: gop_structure.c:get_txb_wide
Unexecuted instantiation: interp_search.c:get_txb_wide
Unexecuted instantiation: motion_search_facade.c:get_txb_wide
59
60
13.0M
static inline int get_txb_high(TX_SIZE tx_size) {
61
13.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
62
13.0M
  return tx_size_high[tx_size];
63
13.0M
}
decodetxb.c:get_txb_high
Line
Count
Source
60
13.0M
static inline int get_txb_high(TX_SIZE tx_size) {
61
13.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
62
13.0M
  return tx_size_high[tx_size];
63
13.0M
}
Unexecuted instantiation: av1_cx_iface.c:get_txb_high
Unexecuted instantiation: allintra_vis.c:get_txb_high
Unexecuted instantiation: av1_quantize.c:get_txb_high
Unexecuted instantiation: bitstream.c:get_txb_high
Unexecuted instantiation: context_tree.c:get_txb_high
Unexecuted instantiation: encodeframe.c:get_txb_high
Unexecuted instantiation: encodeframe_utils.c:get_txb_high
Unexecuted instantiation: encodemb.c:get_txb_high
Unexecuted instantiation: encodemv.c:get_txb_high
Unexecuted instantiation: encoder.c:get_txb_high
Unexecuted instantiation: encoder_utils.c:get_txb_high
Unexecuted instantiation: encodetxb.c:get_txb_high
Unexecuted instantiation: ethread.c:get_txb_high
Unexecuted instantiation: firstpass.c:get_txb_high
Unexecuted instantiation: global_motion_facade.c:get_txb_high
Unexecuted instantiation: level.c:get_txb_high
Unexecuted instantiation: lookahead.c:get_txb_high
Unexecuted instantiation: mcomp.c:get_txb_high
Unexecuted instantiation: mv_prec.c:get_txb_high
Unexecuted instantiation: palette.c:get_txb_high
Unexecuted instantiation: partition_search.c:get_txb_high
Unexecuted instantiation: partition_strategy.c:get_txb_high
Unexecuted instantiation: pass2_strategy.c:get_txb_high
Unexecuted instantiation: pickcdef.c:get_txb_high
Unexecuted instantiation: picklpf.c:get_txb_high
Unexecuted instantiation: pickrst.c:get_txb_high
Unexecuted instantiation: ratectrl.c:get_txb_high
Unexecuted instantiation: rd.c:get_txb_high
Unexecuted instantiation: rdopt.c:get_txb_high
Unexecuted instantiation: nonrd_pickmode.c:get_txb_high
Unexecuted instantiation: nonrd_opt.c:get_txb_high
Unexecuted instantiation: segmentation.c:get_txb_high
Unexecuted instantiation: speed_features.c:get_txb_high
Unexecuted instantiation: superres_scale.c:get_txb_high
Unexecuted instantiation: svc_layercontext.c:get_txb_high
Unexecuted instantiation: temporal_filter.c:get_txb_high
Unexecuted instantiation: tokenize.c:get_txb_high
Unexecuted instantiation: tpl_model.c:get_txb_high
Unexecuted instantiation: tx_search.c:get_txb_high
Unexecuted instantiation: txb_rdopt.c:get_txb_high
Unexecuted instantiation: intra_mode_search.c:get_txb_high
Unexecuted instantiation: var_based_part.c:get_txb_high
Unexecuted instantiation: av1_noise_estimate.c:get_txb_high
Unexecuted instantiation: entropy.c:get_txb_high
Unexecuted instantiation: entropymode.c:get_txb_high
Unexecuted instantiation: txb_common.c:get_txb_high
Unexecuted instantiation: aq_complexity.c:get_txb_high
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_high
Unexecuted instantiation: aq_variance.c:get_txb_high
Unexecuted instantiation: compound_type.c:get_txb_high
Unexecuted instantiation: encode_strategy.c:get_txb_high
Unexecuted instantiation: global_motion.c:get_txb_high
Unexecuted instantiation: gop_structure.c:get_txb_high
Unexecuted instantiation: interp_search.c:get_txb_high
Unexecuted instantiation: motion_search_facade.c:get_txb_high
64
65
13.0M
static inline uint8_t *set_levels(uint8_t *const levels_buf, const int height) {
66
13.0M
  return levels_buf + TX_PAD_TOP * (height + TX_PAD_HOR);
67
13.0M
}
decodetxb.c:set_levels
Line
Count
Source
65
13.0M
static inline uint8_t *set_levels(uint8_t *const levels_buf, const int height) {
66
13.0M
  return levels_buf + TX_PAD_TOP * (height + TX_PAD_HOR);
67
13.0M
}
Unexecuted instantiation: av1_cx_iface.c:set_levels
Unexecuted instantiation: allintra_vis.c:set_levels
Unexecuted instantiation: av1_quantize.c:set_levels
Unexecuted instantiation: bitstream.c:set_levels
Unexecuted instantiation: context_tree.c:set_levels
Unexecuted instantiation: encodeframe.c:set_levels
Unexecuted instantiation: encodeframe_utils.c:set_levels
Unexecuted instantiation: encodemb.c:set_levels
Unexecuted instantiation: encodemv.c:set_levels
Unexecuted instantiation: encoder.c:set_levels
Unexecuted instantiation: encoder_utils.c:set_levels
Unexecuted instantiation: encodetxb.c:set_levels
Unexecuted instantiation: ethread.c:set_levels
Unexecuted instantiation: firstpass.c:set_levels
Unexecuted instantiation: global_motion_facade.c:set_levels
Unexecuted instantiation: level.c:set_levels
Unexecuted instantiation: lookahead.c:set_levels
Unexecuted instantiation: mcomp.c:set_levels
Unexecuted instantiation: mv_prec.c:set_levels
Unexecuted instantiation: palette.c:set_levels
Unexecuted instantiation: partition_search.c:set_levels
Unexecuted instantiation: partition_strategy.c:set_levels
Unexecuted instantiation: pass2_strategy.c:set_levels
Unexecuted instantiation: pickcdef.c:set_levels
Unexecuted instantiation: picklpf.c:set_levels
Unexecuted instantiation: pickrst.c:set_levels
Unexecuted instantiation: ratectrl.c:set_levels
Unexecuted instantiation: rd.c:set_levels
Unexecuted instantiation: rdopt.c:set_levels
Unexecuted instantiation: nonrd_pickmode.c:set_levels
Unexecuted instantiation: nonrd_opt.c:set_levels
Unexecuted instantiation: segmentation.c:set_levels
Unexecuted instantiation: speed_features.c:set_levels
Unexecuted instantiation: superres_scale.c:set_levels
Unexecuted instantiation: svc_layercontext.c:set_levels
Unexecuted instantiation: temporal_filter.c:set_levels
Unexecuted instantiation: tokenize.c:set_levels
Unexecuted instantiation: tpl_model.c:set_levels
Unexecuted instantiation: tx_search.c:set_levels
Unexecuted instantiation: txb_rdopt.c:set_levels
Unexecuted instantiation: intra_mode_search.c:set_levels
Unexecuted instantiation: var_based_part.c:set_levels
Unexecuted instantiation: av1_noise_estimate.c:set_levels
Unexecuted instantiation: entropy.c:set_levels
Unexecuted instantiation: entropymode.c:set_levels
Unexecuted instantiation: txb_common.c:set_levels
Unexecuted instantiation: aq_complexity.c:set_levels
Unexecuted instantiation: aq_cyclicrefresh.c:set_levels
Unexecuted instantiation: aq_variance.c:set_levels
Unexecuted instantiation: compound_type.c:set_levels
Unexecuted instantiation: encode_strategy.c:set_levels
Unexecuted instantiation: global_motion.c:set_levels
Unexecuted instantiation: gop_structure.c:set_levels
Unexecuted instantiation: interp_search.c:set_levels
Unexecuted instantiation: motion_search_facade.c:set_levels
68
69
233M
static inline int get_padded_idx(const int idx, const int bhl) {
70
233M
  return idx + ((idx >> bhl) << TX_PAD_HOR_LOG2);
71
233M
}
decodetxb.c:get_padded_idx
Line
Count
Source
69
233M
static inline int get_padded_idx(const int idx, const int bhl) {
70
233M
  return idx + ((idx >> bhl) << TX_PAD_HOR_LOG2);
71
233M
}
Unexecuted instantiation: av1_cx_iface.c:get_padded_idx
Unexecuted instantiation: allintra_vis.c:get_padded_idx
Unexecuted instantiation: av1_quantize.c:get_padded_idx
Unexecuted instantiation: bitstream.c:get_padded_idx
Unexecuted instantiation: context_tree.c:get_padded_idx
Unexecuted instantiation: encodeframe.c:get_padded_idx
Unexecuted instantiation: encodeframe_utils.c:get_padded_idx
Unexecuted instantiation: encodemb.c:get_padded_idx
Unexecuted instantiation: encodemv.c:get_padded_idx
Unexecuted instantiation: encoder.c:get_padded_idx
Unexecuted instantiation: encoder_utils.c:get_padded_idx
Unexecuted instantiation: encodetxb.c:get_padded_idx
Unexecuted instantiation: ethread.c:get_padded_idx
Unexecuted instantiation: firstpass.c:get_padded_idx
Unexecuted instantiation: global_motion_facade.c:get_padded_idx
Unexecuted instantiation: level.c:get_padded_idx
Unexecuted instantiation: lookahead.c:get_padded_idx
Unexecuted instantiation: mcomp.c:get_padded_idx
Unexecuted instantiation: mv_prec.c:get_padded_idx
Unexecuted instantiation: palette.c:get_padded_idx
Unexecuted instantiation: partition_search.c:get_padded_idx
Unexecuted instantiation: partition_strategy.c:get_padded_idx
Unexecuted instantiation: pass2_strategy.c:get_padded_idx
Unexecuted instantiation: pickcdef.c:get_padded_idx
Unexecuted instantiation: picklpf.c:get_padded_idx
Unexecuted instantiation: pickrst.c:get_padded_idx
Unexecuted instantiation: ratectrl.c:get_padded_idx
Unexecuted instantiation: rd.c:get_padded_idx
Unexecuted instantiation: rdopt.c:get_padded_idx
Unexecuted instantiation: nonrd_pickmode.c:get_padded_idx
Unexecuted instantiation: nonrd_opt.c:get_padded_idx
Unexecuted instantiation: segmentation.c:get_padded_idx
Unexecuted instantiation: speed_features.c:get_padded_idx
Unexecuted instantiation: superres_scale.c:get_padded_idx
Unexecuted instantiation: svc_layercontext.c:get_padded_idx
Unexecuted instantiation: temporal_filter.c:get_padded_idx
Unexecuted instantiation: tokenize.c:get_padded_idx
Unexecuted instantiation: tpl_model.c:get_padded_idx
Unexecuted instantiation: tx_search.c:get_padded_idx
Unexecuted instantiation: txb_rdopt.c:get_padded_idx
Unexecuted instantiation: intra_mode_search.c:get_padded_idx
Unexecuted instantiation: var_based_part.c:get_padded_idx
Unexecuted instantiation: av1_noise_estimate.c:get_padded_idx
Unexecuted instantiation: entropy.c:get_padded_idx
Unexecuted instantiation: entropymode.c:get_padded_idx
Unexecuted instantiation: txb_common.c:get_padded_idx
Unexecuted instantiation: aq_complexity.c:get_padded_idx
Unexecuted instantiation: aq_cyclicrefresh.c:get_padded_idx
Unexecuted instantiation: aq_variance.c:get_padded_idx
Unexecuted instantiation: compound_type.c:get_padded_idx
Unexecuted instantiation: encode_strategy.c:get_padded_idx
Unexecuted instantiation: global_motion.c:get_padded_idx
Unexecuted instantiation: gop_structure.c:get_padded_idx
Unexecuted instantiation: interp_search.c:get_padded_idx
Unexecuted instantiation: motion_search_facade.c:get_padded_idx
72
73
static inline int get_br_ctx_2d(const uint8_t *const levels,
74
                                const int c,  // raster order
75
10.0M
                                const int bhl) {
76
10.0M
  assert(c > 0);
77
10.0M
  const int col = c >> bhl;
78
10.0M
  const int row = c - (col << bhl);
79
10.0M
  const int stride = (1 << bhl) + TX_PAD_HOR;
80
10.0M
  const int pos = col * stride + row;
81
10.0M
  int mag = AOMMIN(levels[pos + 1], MAX_BASE_BR_RANGE) +
82
10.0M
            AOMMIN(levels[pos + stride], MAX_BASE_BR_RANGE) +
83
10.0M
            AOMMIN(levels[pos + 1 + stride], MAX_BASE_BR_RANGE);
84
10.0M
  mag = AOMMIN((mag + 1) >> 1, 6);
85
  //((row | col) < 2) is equivalent to ((row < 2) && (col < 2))
86
10.0M
  if ((row | col) < 2) return mag + 7;
87
8.22M
  return mag + 14;
88
10.0M
}
decodetxb.c:get_br_ctx_2d
Line
Count
Source
75
10.0M
                                const int bhl) {
76
10.0M
  assert(c > 0);
77
10.0M
  const int col = c >> bhl;
78
10.0M
  const int row = c - (col << bhl);
79
10.0M
  const int stride = (1 << bhl) + TX_PAD_HOR;
80
10.0M
  const int pos = col * stride + row;
81
10.0M
  int mag = AOMMIN(levels[pos + 1], MAX_BASE_BR_RANGE) +
82
10.0M
            AOMMIN(levels[pos + stride], MAX_BASE_BR_RANGE) +
83
10.0M
            AOMMIN(levels[pos + 1 + stride], MAX_BASE_BR_RANGE);
84
10.0M
  mag = AOMMIN((mag + 1) >> 1, 6);
85
  //((row | col) < 2) is equivalent to ((row < 2) && (col < 2))
86
10.0M
  if ((row | col) < 2) return mag + 7;
87
8.22M
  return mag + 14;
88
10.0M
}
Unexecuted instantiation: av1_cx_iface.c:get_br_ctx_2d
Unexecuted instantiation: allintra_vis.c:get_br_ctx_2d
Unexecuted instantiation: av1_quantize.c:get_br_ctx_2d
Unexecuted instantiation: bitstream.c:get_br_ctx_2d
Unexecuted instantiation: context_tree.c:get_br_ctx_2d
Unexecuted instantiation: encodeframe.c:get_br_ctx_2d
Unexecuted instantiation: encodeframe_utils.c:get_br_ctx_2d
Unexecuted instantiation: encodemb.c:get_br_ctx_2d
Unexecuted instantiation: encodemv.c:get_br_ctx_2d
Unexecuted instantiation: encoder.c:get_br_ctx_2d
Unexecuted instantiation: encoder_utils.c:get_br_ctx_2d
Unexecuted instantiation: encodetxb.c:get_br_ctx_2d
Unexecuted instantiation: ethread.c:get_br_ctx_2d
Unexecuted instantiation: firstpass.c:get_br_ctx_2d
Unexecuted instantiation: global_motion_facade.c:get_br_ctx_2d
Unexecuted instantiation: level.c:get_br_ctx_2d
Unexecuted instantiation: lookahead.c:get_br_ctx_2d
Unexecuted instantiation: mcomp.c:get_br_ctx_2d
Unexecuted instantiation: mv_prec.c:get_br_ctx_2d
Unexecuted instantiation: palette.c:get_br_ctx_2d
Unexecuted instantiation: partition_search.c:get_br_ctx_2d
Unexecuted instantiation: partition_strategy.c:get_br_ctx_2d
Unexecuted instantiation: pass2_strategy.c:get_br_ctx_2d
Unexecuted instantiation: pickcdef.c:get_br_ctx_2d
Unexecuted instantiation: picklpf.c:get_br_ctx_2d
Unexecuted instantiation: pickrst.c:get_br_ctx_2d
Unexecuted instantiation: ratectrl.c:get_br_ctx_2d
Unexecuted instantiation: rd.c:get_br_ctx_2d
Unexecuted instantiation: rdopt.c:get_br_ctx_2d
Unexecuted instantiation: nonrd_pickmode.c:get_br_ctx_2d
Unexecuted instantiation: nonrd_opt.c:get_br_ctx_2d
Unexecuted instantiation: segmentation.c:get_br_ctx_2d
Unexecuted instantiation: speed_features.c:get_br_ctx_2d
Unexecuted instantiation: superres_scale.c:get_br_ctx_2d
Unexecuted instantiation: svc_layercontext.c:get_br_ctx_2d
Unexecuted instantiation: temporal_filter.c:get_br_ctx_2d
Unexecuted instantiation: tokenize.c:get_br_ctx_2d
Unexecuted instantiation: tpl_model.c:get_br_ctx_2d
Unexecuted instantiation: tx_search.c:get_br_ctx_2d
Unexecuted instantiation: txb_rdopt.c:get_br_ctx_2d
Unexecuted instantiation: intra_mode_search.c:get_br_ctx_2d
Unexecuted instantiation: var_based_part.c:get_br_ctx_2d
Unexecuted instantiation: av1_noise_estimate.c:get_br_ctx_2d
Unexecuted instantiation: entropy.c:get_br_ctx_2d
Unexecuted instantiation: entropymode.c:get_br_ctx_2d
Unexecuted instantiation: txb_common.c:get_br_ctx_2d
Unexecuted instantiation: aq_complexity.c:get_br_ctx_2d
Unexecuted instantiation: aq_cyclicrefresh.c:get_br_ctx_2d
Unexecuted instantiation: aq_variance.c:get_br_ctx_2d
Unexecuted instantiation: compound_type.c:get_br_ctx_2d
Unexecuted instantiation: encode_strategy.c:get_br_ctx_2d
Unexecuted instantiation: global_motion.c:get_br_ctx_2d
Unexecuted instantiation: gop_structure.c:get_br_ctx_2d
Unexecuted instantiation: interp_search.c:get_br_ctx_2d
Unexecuted instantiation: motion_search_facade.c:get_br_ctx_2d
89
90
static AOM_FORCE_INLINE int get_br_ctx_eob(const int c,  // raster order
91
                                           const int bhl,
92
551k
                                           const TX_CLASS tx_class) {
93
551k
  const int col = c >> bhl;
94
551k
  const int row = c - (col << bhl);
95
551k
  if (c == 0) return 0;
96
312k
  if ((tx_class == TX_CLASS_2D && row < 2 && col < 2) ||
97
307k
      (tx_class == TX_CLASS_HORIZ && col == 0) ||
98
307k
      (tx_class == TX_CLASS_VERT && row == 0))
99
5.80k
    return 7;
100
307k
  return 14;
101
312k
}
decodetxb.c:get_br_ctx_eob
Line
Count
Source
92
551k
                                           const TX_CLASS tx_class) {
93
551k
  const int col = c >> bhl;
94
551k
  const int row = c - (col << bhl);
95
551k
  if (c == 0) return 0;
96
312k
  if ((tx_class == TX_CLASS_2D && row < 2 && col < 2) ||
97
307k
      (tx_class == TX_CLASS_HORIZ && col == 0) ||
98
307k
      (tx_class == TX_CLASS_VERT && row == 0))
99
5.80k
    return 7;
100
307k
  return 14;
101
312k
}
Unexecuted instantiation: av1_cx_iface.c:get_br_ctx_eob
Unexecuted instantiation: allintra_vis.c:get_br_ctx_eob
Unexecuted instantiation: av1_quantize.c:get_br_ctx_eob
Unexecuted instantiation: bitstream.c:get_br_ctx_eob
Unexecuted instantiation: context_tree.c:get_br_ctx_eob
Unexecuted instantiation: encodeframe.c:get_br_ctx_eob
Unexecuted instantiation: encodeframe_utils.c:get_br_ctx_eob
Unexecuted instantiation: encodemb.c:get_br_ctx_eob
Unexecuted instantiation: encodemv.c:get_br_ctx_eob
Unexecuted instantiation: encoder.c:get_br_ctx_eob
Unexecuted instantiation: encoder_utils.c:get_br_ctx_eob
Unexecuted instantiation: encodetxb.c:get_br_ctx_eob
Unexecuted instantiation: ethread.c:get_br_ctx_eob
Unexecuted instantiation: firstpass.c:get_br_ctx_eob
Unexecuted instantiation: global_motion_facade.c:get_br_ctx_eob
Unexecuted instantiation: level.c:get_br_ctx_eob
Unexecuted instantiation: lookahead.c:get_br_ctx_eob
Unexecuted instantiation: mcomp.c:get_br_ctx_eob
Unexecuted instantiation: mv_prec.c:get_br_ctx_eob
Unexecuted instantiation: palette.c:get_br_ctx_eob
Unexecuted instantiation: partition_search.c:get_br_ctx_eob
Unexecuted instantiation: partition_strategy.c:get_br_ctx_eob
Unexecuted instantiation: pass2_strategy.c:get_br_ctx_eob
Unexecuted instantiation: pickcdef.c:get_br_ctx_eob
Unexecuted instantiation: picklpf.c:get_br_ctx_eob
Unexecuted instantiation: pickrst.c:get_br_ctx_eob
Unexecuted instantiation: ratectrl.c:get_br_ctx_eob
Unexecuted instantiation: rd.c:get_br_ctx_eob
Unexecuted instantiation: rdopt.c:get_br_ctx_eob
Unexecuted instantiation: nonrd_pickmode.c:get_br_ctx_eob
Unexecuted instantiation: nonrd_opt.c:get_br_ctx_eob
Unexecuted instantiation: segmentation.c:get_br_ctx_eob
Unexecuted instantiation: speed_features.c:get_br_ctx_eob
Unexecuted instantiation: superres_scale.c:get_br_ctx_eob
Unexecuted instantiation: svc_layercontext.c:get_br_ctx_eob
Unexecuted instantiation: temporal_filter.c:get_br_ctx_eob
Unexecuted instantiation: tokenize.c:get_br_ctx_eob
Unexecuted instantiation: tpl_model.c:get_br_ctx_eob
Unexecuted instantiation: tx_search.c:get_br_ctx_eob
Unexecuted instantiation: txb_rdopt.c:get_br_ctx_eob
Unexecuted instantiation: intra_mode_search.c:get_br_ctx_eob
Unexecuted instantiation: var_based_part.c:get_br_ctx_eob
Unexecuted instantiation: av1_noise_estimate.c:get_br_ctx_eob
Unexecuted instantiation: entropy.c:get_br_ctx_eob
Unexecuted instantiation: entropymode.c:get_br_ctx_eob
Unexecuted instantiation: txb_common.c:get_br_ctx_eob
Unexecuted instantiation: aq_complexity.c:get_br_ctx_eob
Unexecuted instantiation: aq_cyclicrefresh.c:get_br_ctx_eob
Unexecuted instantiation: aq_variance.c:get_br_ctx_eob
Unexecuted instantiation: compound_type.c:get_br_ctx_eob
Unexecuted instantiation: encode_strategy.c:get_br_ctx_eob
Unexecuted instantiation: global_motion.c:get_br_ctx_eob
Unexecuted instantiation: gop_structure.c:get_br_ctx_eob
Unexecuted instantiation: interp_search.c:get_br_ctx_eob
Unexecuted instantiation: motion_search_facade.c:get_br_ctx_eob
102
103
static AOM_FORCE_INLINE int get_br_ctx(const uint8_t *const levels,
104
                                       const int c,  // raster order
105
1.34M
                                       const int bhl, const TX_CLASS tx_class) {
106
1.34M
  const int col = c >> bhl;
107
1.34M
  const int row = c - (col << bhl);
108
1.34M
  const int stride = (1 << bhl) + TX_PAD_HOR;
109
1.34M
  const int pos = col * stride + row;
110
1.34M
  int mag = levels[pos + 1];
111
1.34M
  mag += levels[pos + stride];
112
1.34M
  switch (tx_class) {
113
1.21M
    case TX_CLASS_2D:
114
1.21M
      mag += levels[pos + stride + 1];
115
1.21M
      mag = AOMMIN((mag + 1) >> 1, 6);
116
1.21M
      if (c == 0) return mag;
117
18.4E
      if ((row < 2) && (col < 2)) return mag + 7;
118
18.4E
      break;
119
18.4E
    case TX_CLASS_HORIZ:
120
94.7k
      mag += levels[pos + (stride << 1)];
121
94.7k
      mag = AOMMIN((mag + 1) >> 1, 6);
122
94.7k
      if (c == 0) return mag;
123
87.3k
      if (col == 0) return mag + 7;
124
60.7k
      break;
125
60.7k
    case TX_CLASS_VERT:
126
36.6k
      mag += levels[pos + 2];
127
36.6k
      mag = AOMMIN((mag + 1) >> 1, 6);
128
36.6k
      if (c == 0) return mag;
129
33.6k
      if (row == 0) return mag + 7;
130
21.6k
      break;
131
21.6k
    default: break;
132
1.34M
  }
133
134
82.3k
  return mag + 14;
135
1.34M
}
decodetxb.c:get_br_ctx
Line
Count
Source
105
1.34M
                                       const int bhl, const TX_CLASS tx_class) {
106
1.34M
  const int col = c >> bhl;
107
1.34M
  const int row = c - (col << bhl);
108
1.34M
  const int stride = (1 << bhl) + TX_PAD_HOR;
109
1.34M
  const int pos = col * stride + row;
110
1.34M
  int mag = levels[pos + 1];
111
1.34M
  mag += levels[pos + stride];
112
1.34M
  switch (tx_class) {
113
1.21M
    case TX_CLASS_2D:
114
1.21M
      mag += levels[pos + stride + 1];
115
1.21M
      mag = AOMMIN((mag + 1) >> 1, 6);
116
1.21M
      if (c == 0) return mag;
117
18.4E
      if ((row < 2) && (col < 2)) return mag + 7;
118
18.4E
      break;
119
18.4E
    case TX_CLASS_HORIZ:
120
94.7k
      mag += levels[pos + (stride << 1)];
121
94.7k
      mag = AOMMIN((mag + 1) >> 1, 6);
122
94.7k
      if (c == 0) return mag;
123
87.3k
      if (col == 0) return mag + 7;
124
60.7k
      break;
125
60.7k
    case TX_CLASS_VERT:
126
36.6k
      mag += levels[pos + 2];
127
36.6k
      mag = AOMMIN((mag + 1) >> 1, 6);
128
36.6k
      if (c == 0) return mag;
129
33.6k
      if (row == 0) return mag + 7;
130
21.6k
      break;
131
21.6k
    default: break;
132
1.34M
  }
133
134
82.3k
  return mag + 14;
135
1.34M
}
Unexecuted instantiation: av1_cx_iface.c:get_br_ctx
Unexecuted instantiation: allintra_vis.c:get_br_ctx
Unexecuted instantiation: av1_quantize.c:get_br_ctx
Unexecuted instantiation: bitstream.c:get_br_ctx
Unexecuted instantiation: context_tree.c:get_br_ctx
Unexecuted instantiation: encodeframe.c:get_br_ctx
Unexecuted instantiation: encodeframe_utils.c:get_br_ctx
Unexecuted instantiation: encodemb.c:get_br_ctx
Unexecuted instantiation: encodemv.c:get_br_ctx
Unexecuted instantiation: encoder.c:get_br_ctx
Unexecuted instantiation: encoder_utils.c:get_br_ctx
Unexecuted instantiation: encodetxb.c:get_br_ctx
Unexecuted instantiation: ethread.c:get_br_ctx
Unexecuted instantiation: firstpass.c:get_br_ctx
Unexecuted instantiation: global_motion_facade.c:get_br_ctx
Unexecuted instantiation: level.c:get_br_ctx
Unexecuted instantiation: lookahead.c:get_br_ctx
Unexecuted instantiation: mcomp.c:get_br_ctx
Unexecuted instantiation: mv_prec.c:get_br_ctx
Unexecuted instantiation: palette.c:get_br_ctx
Unexecuted instantiation: partition_search.c:get_br_ctx
Unexecuted instantiation: partition_strategy.c:get_br_ctx
Unexecuted instantiation: pass2_strategy.c:get_br_ctx
Unexecuted instantiation: pickcdef.c:get_br_ctx
Unexecuted instantiation: picklpf.c:get_br_ctx
Unexecuted instantiation: pickrst.c:get_br_ctx
Unexecuted instantiation: ratectrl.c:get_br_ctx
Unexecuted instantiation: rd.c:get_br_ctx
Unexecuted instantiation: rdopt.c:get_br_ctx
Unexecuted instantiation: nonrd_pickmode.c:get_br_ctx
Unexecuted instantiation: nonrd_opt.c:get_br_ctx
Unexecuted instantiation: segmentation.c:get_br_ctx
Unexecuted instantiation: speed_features.c:get_br_ctx
Unexecuted instantiation: superres_scale.c:get_br_ctx
Unexecuted instantiation: svc_layercontext.c:get_br_ctx
Unexecuted instantiation: temporal_filter.c:get_br_ctx
Unexecuted instantiation: tokenize.c:get_br_ctx
Unexecuted instantiation: tpl_model.c:get_br_ctx
Unexecuted instantiation: tx_search.c:get_br_ctx
Unexecuted instantiation: txb_rdopt.c:get_br_ctx
Unexecuted instantiation: intra_mode_search.c:get_br_ctx
Unexecuted instantiation: var_based_part.c:get_br_ctx
Unexecuted instantiation: av1_noise_estimate.c:get_br_ctx
Unexecuted instantiation: entropy.c:get_br_ctx
Unexecuted instantiation: entropymode.c:get_br_ctx
Unexecuted instantiation: txb_common.c:get_br_ctx
Unexecuted instantiation: aq_complexity.c:get_br_ctx
Unexecuted instantiation: aq_cyclicrefresh.c:get_br_ctx
Unexecuted instantiation: aq_variance.c:get_br_ctx
Unexecuted instantiation: compound_type.c:get_br_ctx
Unexecuted instantiation: encode_strategy.c:get_br_ctx
Unexecuted instantiation: global_motion.c:get_br_ctx
Unexecuted instantiation: gop_structure.c:get_br_ctx
Unexecuted instantiation: interp_search.c:get_br_ctx
Unexecuted instantiation: motion_search_facade.c:get_br_ctx
136
137
static const uint8_t clip_max3[256] = {
138
  0, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
139
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
140
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
141
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
142
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
143
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
144
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
145
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
146
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
147
  3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3
148
};
149
150
static AOM_FORCE_INLINE int get_nz_mag(const uint8_t *const levels,
151
4.75M
                                       const int bhl, const TX_CLASS tx_class) {
152
4.75M
  int mag;
153
154
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
155
4.75M
  mag = clip_max3[levels[(1 << bhl) + TX_PAD_HOR]];  // { 0, 1 }
156
4.75M
  mag += clip_max3[levels[1]];                       // { 1, 0 }
157
158
4.75M
  if (tx_class == TX_CLASS_2D) {
159
2.72M
    mag += clip_max3[levels[(1 << bhl) + TX_PAD_HOR + 1]];          // { 1, 1 }
160
2.72M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
161
2.72M
    mag += clip_max3[levels[2]];                                    // { 2, 0 }
162
2.72M
  } else if (tx_class == TX_CLASS_VERT) {
163
641k
    mag += clip_max3[levels[2]];  // { 2, 0 }
164
641k
    mag += clip_max3[levels[3]];  // { 3, 0 }
165
641k
    mag += clip_max3[levels[4]];  // { 4, 0 }
166
1.38M
  } else {
167
1.38M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
168
1.38M
    mag += clip_max3[levels[(3 << bhl) + (3 << TX_PAD_HOR_LOG2)]];  // { 0, 3 }
169
1.38M
    mag += clip_max3[levels[(4 << bhl) + (4 << TX_PAD_HOR_LOG2)]];  // { 0, 4 }
170
1.38M
  }
171
172
4.75M
  return mag;
173
4.75M
}
decodetxb.c:get_nz_mag
Line
Count
Source
151
4.75M
                                       const int bhl, const TX_CLASS tx_class) {
152
4.75M
  int mag;
153
154
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
155
4.75M
  mag = clip_max3[levels[(1 << bhl) + TX_PAD_HOR]];  // { 0, 1 }
156
4.75M
  mag += clip_max3[levels[1]];                       // { 1, 0 }
157
158
4.75M
  if (tx_class == TX_CLASS_2D) {
159
2.72M
    mag += clip_max3[levels[(1 << bhl) + TX_PAD_HOR + 1]];          // { 1, 1 }
160
2.72M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
161
2.72M
    mag += clip_max3[levels[2]];                                    // { 2, 0 }
162
2.72M
  } else if (tx_class == TX_CLASS_VERT) {
163
641k
    mag += clip_max3[levels[2]];  // { 2, 0 }
164
641k
    mag += clip_max3[levels[3]];  // { 3, 0 }
165
641k
    mag += clip_max3[levels[4]];  // { 4, 0 }
166
1.38M
  } else {
167
1.38M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
168
1.38M
    mag += clip_max3[levels[(3 << bhl) + (3 << TX_PAD_HOR_LOG2)]];  // { 0, 3 }
169
1.38M
    mag += clip_max3[levels[(4 << bhl) + (4 << TX_PAD_HOR_LOG2)]];  // { 0, 4 }
170
1.38M
  }
171
172
4.75M
  return mag;
173
4.75M
}
Unexecuted instantiation: av1_cx_iface.c:get_nz_mag
Unexecuted instantiation: allintra_vis.c:get_nz_mag
Unexecuted instantiation: av1_quantize.c:get_nz_mag
Unexecuted instantiation: bitstream.c:get_nz_mag
Unexecuted instantiation: context_tree.c:get_nz_mag
Unexecuted instantiation: encodeframe.c:get_nz_mag
Unexecuted instantiation: encodeframe_utils.c:get_nz_mag
Unexecuted instantiation: encodemb.c:get_nz_mag
Unexecuted instantiation: encodemv.c:get_nz_mag
Unexecuted instantiation: encoder.c:get_nz_mag
Unexecuted instantiation: encoder_utils.c:get_nz_mag
Unexecuted instantiation: encodetxb.c:get_nz_mag
Unexecuted instantiation: ethread.c:get_nz_mag
Unexecuted instantiation: firstpass.c:get_nz_mag
Unexecuted instantiation: global_motion_facade.c:get_nz_mag
Unexecuted instantiation: level.c:get_nz_mag
Unexecuted instantiation: lookahead.c:get_nz_mag
Unexecuted instantiation: mcomp.c:get_nz_mag
Unexecuted instantiation: mv_prec.c:get_nz_mag
Unexecuted instantiation: palette.c:get_nz_mag
Unexecuted instantiation: partition_search.c:get_nz_mag
Unexecuted instantiation: partition_strategy.c:get_nz_mag
Unexecuted instantiation: pass2_strategy.c:get_nz_mag
Unexecuted instantiation: pickcdef.c:get_nz_mag
Unexecuted instantiation: picklpf.c:get_nz_mag
Unexecuted instantiation: pickrst.c:get_nz_mag
Unexecuted instantiation: ratectrl.c:get_nz_mag
Unexecuted instantiation: rd.c:get_nz_mag
Unexecuted instantiation: rdopt.c:get_nz_mag
Unexecuted instantiation: nonrd_pickmode.c:get_nz_mag
Unexecuted instantiation: nonrd_opt.c:get_nz_mag
Unexecuted instantiation: segmentation.c:get_nz_mag
Unexecuted instantiation: speed_features.c:get_nz_mag
Unexecuted instantiation: superres_scale.c:get_nz_mag
Unexecuted instantiation: svc_layercontext.c:get_nz_mag
Unexecuted instantiation: temporal_filter.c:get_nz_mag
Unexecuted instantiation: tokenize.c:get_nz_mag
Unexecuted instantiation: tpl_model.c:get_nz_mag
Unexecuted instantiation: tx_search.c:get_nz_mag
Unexecuted instantiation: txb_rdopt.c:get_nz_mag
Unexecuted instantiation: intra_mode_search.c:get_nz_mag
Unexecuted instantiation: var_based_part.c:get_nz_mag
Unexecuted instantiation: av1_noise_estimate.c:get_nz_mag
Unexecuted instantiation: entropy.c:get_nz_mag
Unexecuted instantiation: entropymode.c:get_nz_mag
Unexecuted instantiation: txb_common.c:get_nz_mag
Unexecuted instantiation: aq_complexity.c:get_nz_mag
Unexecuted instantiation: aq_cyclicrefresh.c:get_nz_mag
Unexecuted instantiation: aq_variance.c:get_nz_mag
Unexecuted instantiation: compound_type.c:get_nz_mag
Unexecuted instantiation: encode_strategy.c:get_nz_mag
Unexecuted instantiation: global_motion.c:get_nz_mag
Unexecuted instantiation: gop_structure.c:get_nz_mag
Unexecuted instantiation: interp_search.c:get_nz_mag
Unexecuted instantiation: motion_search_facade.c:get_nz_mag
174
175
#define NZ_MAP_CTX_0 SIG_COEF_CONTEXTS_2D
176
#define NZ_MAP_CTX_5 (NZ_MAP_CTX_0 + 5)
177
#define NZ_MAP_CTX_10 (NZ_MAP_CTX_0 + 10)
178
179
static const int nz_map_ctx_offset_1d[32] = {
180
  NZ_MAP_CTX_0,  NZ_MAP_CTX_5,  NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10,
181
  NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10,
182
  NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10,
183
  NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10,
184
  NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10,
185
  NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10, NZ_MAP_CTX_10,
186
  NZ_MAP_CTX_10, NZ_MAP_CTX_10,
187
};
188
189
static AOM_FORCE_INLINE int get_nz_map_ctx_from_stats(
190
    const int stats,
191
    const int coeff_idx,  // raster order
192
4.75M
    const int bhl, const TX_SIZE tx_size, const TX_CLASS tx_class) {
193
  // tx_class == 0(TX_CLASS_2D)
194
4.75M
  if ((tx_class | coeff_idx) == 0) return 0;
195
2.03M
  int ctx = (stats + 1) >> 1;
196
2.03M
  ctx = AOMMIN(ctx, 4);
197
2.03M
  switch (tx_class) {
198
0
    case TX_CLASS_2D: {
199
      // This is the algorithm to generate av1_nz_map_ctx_offset[][]
200
      //   const int width = tx_size_wide[tx_size];
201
      //   const int height = tx_size_high[tx_size];
202
      //   if (width < height) {
203
      //     if (row < 2) return 11 + ctx;
204
      //   } else if (width > height) {
205
      //     if (col < 2) return 16 + ctx;
206
      //   }
207
      //   if (row + col < 2) return ctx + 1;
208
      //   if (row + col < 4) return 5 + ctx + 1;
209
      //   return 21 + ctx;
210
0
      return ctx + av1_nz_map_ctx_offset[tx_size][coeff_idx];
211
0
    }
212
1.38M
    case TX_CLASS_HORIZ: {
213
1.38M
      const int col = coeff_idx >> bhl;
214
1.38M
      return ctx + nz_map_ctx_offset_1d[col];
215
0
    }
216
641k
    case TX_CLASS_VERT: {
217
641k
      const int col = coeff_idx >> bhl;
218
641k
      const int row = coeff_idx - (col << bhl);
219
641k
      return ctx + nz_map_ctx_offset_1d[row];
220
0
    }
221
0
    default: break;
222
2.03M
  }
223
0
  return 0;
224
2.03M
}
decodetxb.c:get_nz_map_ctx_from_stats
Line
Count
Source
192
4.75M
    const int bhl, const TX_SIZE tx_size, const TX_CLASS tx_class) {
193
  // tx_class == 0(TX_CLASS_2D)
194
4.75M
  if ((tx_class | coeff_idx) == 0) return 0;
195
2.03M
  int ctx = (stats + 1) >> 1;
196
2.03M
  ctx = AOMMIN(ctx, 4);
197
2.03M
  switch (tx_class) {
198
0
    case TX_CLASS_2D: {
199
      // This is the algorithm to generate av1_nz_map_ctx_offset[][]
200
      //   const int width = tx_size_wide[tx_size];
201
      //   const int height = tx_size_high[tx_size];
202
      //   if (width < height) {
203
      //     if (row < 2) return 11 + ctx;
204
      //   } else if (width > height) {
205
      //     if (col < 2) return 16 + ctx;
206
      //   }
207
      //   if (row + col < 2) return ctx + 1;
208
      //   if (row + col < 4) return 5 + ctx + 1;
209
      //   return 21 + ctx;
210
0
      return ctx + av1_nz_map_ctx_offset[tx_size][coeff_idx];
211
0
    }
212
1.38M
    case TX_CLASS_HORIZ: {
213
1.38M
      const int col = coeff_idx >> bhl;
214
1.38M
      return ctx + nz_map_ctx_offset_1d[col];
215
0
    }
216
641k
    case TX_CLASS_VERT: {
217
641k
      const int col = coeff_idx >> bhl;
218
641k
      const int row = coeff_idx - (col << bhl);
219
641k
      return ctx + nz_map_ctx_offset_1d[row];
220
0
    }
221
0
    default: break;
222
2.03M
  }
223
0
  return 0;
224
2.03M
}
Unexecuted instantiation: av1_cx_iface.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: allintra_vis.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: av1_quantize.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: bitstream.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: context_tree.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encodeframe.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encodeframe_utils.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encodemb.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encodemv.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encoder.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encoder_utils.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encodetxb.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: ethread.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: firstpass.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: global_motion_facade.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: level.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: lookahead.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: mcomp.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: mv_prec.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: palette.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: partition_search.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: partition_strategy.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: pass2_strategy.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: pickcdef.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: picklpf.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: pickrst.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: ratectrl.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: rd.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: rdopt.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: nonrd_pickmode.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: nonrd_opt.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: segmentation.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: speed_features.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: superres_scale.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: svc_layercontext.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: temporal_filter.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: tokenize.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: tpl_model.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: tx_search.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: txb_rdopt.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: intra_mode_search.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: var_based_part.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: av1_noise_estimate.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: entropy.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: entropymode.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: txb_common.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: aq_complexity.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: aq_cyclicrefresh.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: aq_variance.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: compound_type.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: encode_strategy.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: global_motion.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: gop_structure.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: interp_search.c:get_nz_map_ctx_from_stats
Unexecuted instantiation: motion_search_facade.c:get_nz_map_ctx_from_stats
225
226
typedef aom_cdf_prob (*base_cdf_arr)[CDF_SIZE(4)];
227
typedef aom_cdf_prob (*br_cdf_arr)[CDF_SIZE(BR_CDF_SIZE)];
228
229
5.00M
static inline int get_lower_levels_ctx_eob(int bhl, int width, int scan_idx) {
230
5.00M
  if (scan_idx == 0) return 0;
231
2.80M
  if (scan_idx <= (width << bhl) / 8) return 1;
232
2.26M
  if (scan_idx <= (width << bhl) / 4) return 2;
233
2.03M
  return 3;
234
2.26M
}
decodetxb.c:get_lower_levels_ctx_eob
Line
Count
Source
229
5.00M
static inline int get_lower_levels_ctx_eob(int bhl, int width, int scan_idx) {
230
5.00M
  if (scan_idx == 0) return 0;
231
2.80M
  if (scan_idx <= (width << bhl) / 8) return 1;
232
2.26M
  if (scan_idx <= (width << bhl) / 4) return 2;
233
2.03M
  return 3;
234
2.26M
}
Unexecuted instantiation: av1_cx_iface.c:get_lower_levels_ctx_eob
Unexecuted instantiation: allintra_vis.c:get_lower_levels_ctx_eob
Unexecuted instantiation: av1_quantize.c:get_lower_levels_ctx_eob
Unexecuted instantiation: bitstream.c:get_lower_levels_ctx_eob
Unexecuted instantiation: context_tree.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encodeframe.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encodeframe_utils.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encodemb.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encodemv.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encoder.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encoder_utils.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encodetxb.c:get_lower_levels_ctx_eob
Unexecuted instantiation: ethread.c:get_lower_levels_ctx_eob
Unexecuted instantiation: firstpass.c:get_lower_levels_ctx_eob
Unexecuted instantiation: global_motion_facade.c:get_lower_levels_ctx_eob
Unexecuted instantiation: level.c:get_lower_levels_ctx_eob
Unexecuted instantiation: lookahead.c:get_lower_levels_ctx_eob
Unexecuted instantiation: mcomp.c:get_lower_levels_ctx_eob
Unexecuted instantiation: mv_prec.c:get_lower_levels_ctx_eob
Unexecuted instantiation: palette.c:get_lower_levels_ctx_eob
Unexecuted instantiation: partition_search.c:get_lower_levels_ctx_eob
Unexecuted instantiation: partition_strategy.c:get_lower_levels_ctx_eob
Unexecuted instantiation: pass2_strategy.c:get_lower_levels_ctx_eob
Unexecuted instantiation: pickcdef.c:get_lower_levels_ctx_eob
Unexecuted instantiation: picklpf.c:get_lower_levels_ctx_eob
Unexecuted instantiation: pickrst.c:get_lower_levels_ctx_eob
Unexecuted instantiation: ratectrl.c:get_lower_levels_ctx_eob
Unexecuted instantiation: rd.c:get_lower_levels_ctx_eob
Unexecuted instantiation: rdopt.c:get_lower_levels_ctx_eob
Unexecuted instantiation: nonrd_pickmode.c:get_lower_levels_ctx_eob
Unexecuted instantiation: nonrd_opt.c:get_lower_levels_ctx_eob
Unexecuted instantiation: segmentation.c:get_lower_levels_ctx_eob
Unexecuted instantiation: speed_features.c:get_lower_levels_ctx_eob
Unexecuted instantiation: superres_scale.c:get_lower_levels_ctx_eob
Unexecuted instantiation: svc_layercontext.c:get_lower_levels_ctx_eob
Unexecuted instantiation: temporal_filter.c:get_lower_levels_ctx_eob
Unexecuted instantiation: tokenize.c:get_lower_levels_ctx_eob
Unexecuted instantiation: tpl_model.c:get_lower_levels_ctx_eob
Unexecuted instantiation: tx_search.c:get_lower_levels_ctx_eob
Unexecuted instantiation: txb_rdopt.c:get_lower_levels_ctx_eob
Unexecuted instantiation: intra_mode_search.c:get_lower_levels_ctx_eob
Unexecuted instantiation: var_based_part.c:get_lower_levels_ctx_eob
Unexecuted instantiation: av1_noise_estimate.c:get_lower_levels_ctx_eob
Unexecuted instantiation: entropy.c:get_lower_levels_ctx_eob
Unexecuted instantiation: entropymode.c:get_lower_levels_ctx_eob
Unexecuted instantiation: txb_common.c:get_lower_levels_ctx_eob
Unexecuted instantiation: aq_complexity.c:get_lower_levels_ctx_eob
Unexecuted instantiation: aq_cyclicrefresh.c:get_lower_levels_ctx_eob
Unexecuted instantiation: aq_variance.c:get_lower_levels_ctx_eob
Unexecuted instantiation: compound_type.c:get_lower_levels_ctx_eob
Unexecuted instantiation: encode_strategy.c:get_lower_levels_ctx_eob
Unexecuted instantiation: global_motion.c:get_lower_levels_ctx_eob
Unexecuted instantiation: gop_structure.c:get_lower_levels_ctx_eob
Unexecuted instantiation: interp_search.c:get_lower_levels_ctx_eob
Unexecuted instantiation: motion_search_facade.c:get_lower_levels_ctx_eob
235
236
static inline int get_lower_levels_ctx_2d(const uint8_t *levels, int coeff_idx,
237
70.0M
                                          int bhl, TX_SIZE tx_size) {
238
70.0M
  assert(coeff_idx > 0);
239
70.0M
  int mag;
240
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
241
70.0M
  levels = levels + get_padded_idx(coeff_idx, bhl);
242
70.0M
  mag = AOMMIN(levels[(1 << bhl) + TX_PAD_HOR], 3);               // { 0, 1 }
243
70.0M
  mag += AOMMIN(levels[1], 3);                                    // { 1, 0 }
244
70.0M
  mag += AOMMIN(levels[(1 << bhl) + TX_PAD_HOR + 1], 3);          // { 1, 1 }
245
70.0M
  mag += AOMMIN(levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)], 3);  // { 0, 2 }
246
70.0M
  mag += AOMMIN(levels[2], 3);                                    // { 2, 0 }
247
248
70.0M
  const int ctx = AOMMIN((mag + 1) >> 1, 4);
249
70.0M
  return ctx + av1_nz_map_ctx_offset[tx_size][coeff_idx];
250
70.0M
}
decodetxb.c:get_lower_levels_ctx_2d
Line
Count
Source
237
70.0M
                                          int bhl, TX_SIZE tx_size) {
238
70.0M
  assert(coeff_idx > 0);
239
70.0M
  int mag;
240
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
241
70.0M
  levels = levels + get_padded_idx(coeff_idx, bhl);
242
70.0M
  mag = AOMMIN(levels[(1 << bhl) + TX_PAD_HOR], 3);               // { 0, 1 }
243
70.0M
  mag += AOMMIN(levels[1], 3);                                    // { 1, 0 }
244
70.0M
  mag += AOMMIN(levels[(1 << bhl) + TX_PAD_HOR + 1], 3);          // { 1, 1 }
245
70.0M
  mag += AOMMIN(levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)], 3);  // { 0, 2 }
246
70.0M
  mag += AOMMIN(levels[2], 3);                                    // { 2, 0 }
247
248
70.0M
  const int ctx = AOMMIN((mag + 1) >> 1, 4);
249
70.0M
  return ctx + av1_nz_map_ctx_offset[tx_size][coeff_idx];
250
70.0M
}
Unexecuted instantiation: av1_cx_iface.c:get_lower_levels_ctx_2d
Unexecuted instantiation: allintra_vis.c:get_lower_levels_ctx_2d
Unexecuted instantiation: av1_quantize.c:get_lower_levels_ctx_2d
Unexecuted instantiation: bitstream.c:get_lower_levels_ctx_2d
Unexecuted instantiation: context_tree.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encodeframe.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encodeframe_utils.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encodemb.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encodemv.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encoder.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encoder_utils.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encodetxb.c:get_lower_levels_ctx_2d
Unexecuted instantiation: ethread.c:get_lower_levels_ctx_2d
Unexecuted instantiation: firstpass.c:get_lower_levels_ctx_2d
Unexecuted instantiation: global_motion_facade.c:get_lower_levels_ctx_2d
Unexecuted instantiation: level.c:get_lower_levels_ctx_2d
Unexecuted instantiation: lookahead.c:get_lower_levels_ctx_2d
Unexecuted instantiation: mcomp.c:get_lower_levels_ctx_2d
Unexecuted instantiation: mv_prec.c:get_lower_levels_ctx_2d
Unexecuted instantiation: palette.c:get_lower_levels_ctx_2d
Unexecuted instantiation: partition_search.c:get_lower_levels_ctx_2d
Unexecuted instantiation: partition_strategy.c:get_lower_levels_ctx_2d
Unexecuted instantiation: pass2_strategy.c:get_lower_levels_ctx_2d
Unexecuted instantiation: pickcdef.c:get_lower_levels_ctx_2d
Unexecuted instantiation: picklpf.c:get_lower_levels_ctx_2d
Unexecuted instantiation: pickrst.c:get_lower_levels_ctx_2d
Unexecuted instantiation: ratectrl.c:get_lower_levels_ctx_2d
Unexecuted instantiation: rd.c:get_lower_levels_ctx_2d
Unexecuted instantiation: rdopt.c:get_lower_levels_ctx_2d
Unexecuted instantiation: nonrd_pickmode.c:get_lower_levels_ctx_2d
Unexecuted instantiation: nonrd_opt.c:get_lower_levels_ctx_2d
Unexecuted instantiation: segmentation.c:get_lower_levels_ctx_2d
Unexecuted instantiation: speed_features.c:get_lower_levels_ctx_2d
Unexecuted instantiation: superres_scale.c:get_lower_levels_ctx_2d
Unexecuted instantiation: svc_layercontext.c:get_lower_levels_ctx_2d
Unexecuted instantiation: temporal_filter.c:get_lower_levels_ctx_2d
Unexecuted instantiation: tokenize.c:get_lower_levels_ctx_2d
Unexecuted instantiation: tpl_model.c:get_lower_levels_ctx_2d
Unexecuted instantiation: tx_search.c:get_lower_levels_ctx_2d
Unexecuted instantiation: txb_rdopt.c:get_lower_levels_ctx_2d
Unexecuted instantiation: intra_mode_search.c:get_lower_levels_ctx_2d
Unexecuted instantiation: var_based_part.c:get_lower_levels_ctx_2d
Unexecuted instantiation: av1_noise_estimate.c:get_lower_levels_ctx_2d
Unexecuted instantiation: entropy.c:get_lower_levels_ctx_2d
Unexecuted instantiation: entropymode.c:get_lower_levels_ctx_2d
Unexecuted instantiation: txb_common.c:get_lower_levels_ctx_2d
Unexecuted instantiation: aq_complexity.c:get_lower_levels_ctx_2d
Unexecuted instantiation: aq_cyclicrefresh.c:get_lower_levels_ctx_2d
Unexecuted instantiation: aq_variance.c:get_lower_levels_ctx_2d
Unexecuted instantiation: compound_type.c:get_lower_levels_ctx_2d
Unexecuted instantiation: encode_strategy.c:get_lower_levels_ctx_2d
Unexecuted instantiation: global_motion.c:get_lower_levels_ctx_2d
Unexecuted instantiation: gop_structure.c:get_lower_levels_ctx_2d
Unexecuted instantiation: interp_search.c:get_lower_levels_ctx_2d
Unexecuted instantiation: motion_search_facade.c:get_lower_levels_ctx_2d
251
static AOM_FORCE_INLINE int get_lower_levels_ctx(const uint8_t *levels,
252
                                                 int coeff_idx, int bhl,
253
                                                 TX_SIZE tx_size,
254
4.75M
                                                 TX_CLASS tx_class) {
255
4.75M
  const int stats =
256
4.75M
      get_nz_mag(levels + get_padded_idx(coeff_idx, bhl), bhl, tx_class);
257
4.75M
  return get_nz_map_ctx_from_stats(stats, coeff_idx, bhl, tx_size, tx_class);
258
4.75M
}
decodetxb.c:get_lower_levels_ctx
Line
Count
Source
254
4.75M
                                                 TX_CLASS tx_class) {
255
4.75M
  const int stats =
256
4.75M
      get_nz_mag(levels + get_padded_idx(coeff_idx, bhl), bhl, tx_class);
257
4.75M
  return get_nz_map_ctx_from_stats(stats, coeff_idx, bhl, tx_size, tx_class);
258
4.75M
}
Unexecuted instantiation: av1_cx_iface.c:get_lower_levels_ctx
Unexecuted instantiation: allintra_vis.c:get_lower_levels_ctx
Unexecuted instantiation: av1_quantize.c:get_lower_levels_ctx
Unexecuted instantiation: bitstream.c:get_lower_levels_ctx
Unexecuted instantiation: context_tree.c:get_lower_levels_ctx
Unexecuted instantiation: encodeframe.c:get_lower_levels_ctx
Unexecuted instantiation: encodeframe_utils.c:get_lower_levels_ctx
Unexecuted instantiation: encodemb.c:get_lower_levels_ctx
Unexecuted instantiation: encodemv.c:get_lower_levels_ctx
Unexecuted instantiation: encoder.c:get_lower_levels_ctx
Unexecuted instantiation: encoder_utils.c:get_lower_levels_ctx
Unexecuted instantiation: encodetxb.c:get_lower_levels_ctx
Unexecuted instantiation: ethread.c:get_lower_levels_ctx
Unexecuted instantiation: firstpass.c:get_lower_levels_ctx
Unexecuted instantiation: global_motion_facade.c:get_lower_levels_ctx
Unexecuted instantiation: level.c:get_lower_levels_ctx
Unexecuted instantiation: lookahead.c:get_lower_levels_ctx
Unexecuted instantiation: mcomp.c:get_lower_levels_ctx
Unexecuted instantiation: mv_prec.c:get_lower_levels_ctx
Unexecuted instantiation: palette.c:get_lower_levels_ctx
Unexecuted instantiation: partition_search.c:get_lower_levels_ctx
Unexecuted instantiation: partition_strategy.c:get_lower_levels_ctx
Unexecuted instantiation: pass2_strategy.c:get_lower_levels_ctx
Unexecuted instantiation: pickcdef.c:get_lower_levels_ctx
Unexecuted instantiation: picklpf.c:get_lower_levels_ctx
Unexecuted instantiation: pickrst.c:get_lower_levels_ctx
Unexecuted instantiation: ratectrl.c:get_lower_levels_ctx
Unexecuted instantiation: rd.c:get_lower_levels_ctx
Unexecuted instantiation: rdopt.c:get_lower_levels_ctx
Unexecuted instantiation: nonrd_pickmode.c:get_lower_levels_ctx
Unexecuted instantiation: nonrd_opt.c:get_lower_levels_ctx
Unexecuted instantiation: segmentation.c:get_lower_levels_ctx
Unexecuted instantiation: speed_features.c:get_lower_levels_ctx
Unexecuted instantiation: superres_scale.c:get_lower_levels_ctx
Unexecuted instantiation: svc_layercontext.c:get_lower_levels_ctx
Unexecuted instantiation: temporal_filter.c:get_lower_levels_ctx
Unexecuted instantiation: tokenize.c:get_lower_levels_ctx
Unexecuted instantiation: tpl_model.c:get_lower_levels_ctx
Unexecuted instantiation: tx_search.c:get_lower_levels_ctx
Unexecuted instantiation: txb_rdopt.c:get_lower_levels_ctx
Unexecuted instantiation: intra_mode_search.c:get_lower_levels_ctx
Unexecuted instantiation: var_based_part.c:get_lower_levels_ctx
Unexecuted instantiation: av1_noise_estimate.c:get_lower_levels_ctx
Unexecuted instantiation: entropy.c:get_lower_levels_ctx
Unexecuted instantiation: entropymode.c:get_lower_levels_ctx
Unexecuted instantiation: txb_common.c:get_lower_levels_ctx
Unexecuted instantiation: aq_complexity.c:get_lower_levels_ctx
Unexecuted instantiation: aq_cyclicrefresh.c:get_lower_levels_ctx
Unexecuted instantiation: aq_variance.c:get_lower_levels_ctx
Unexecuted instantiation: compound_type.c:get_lower_levels_ctx
Unexecuted instantiation: encode_strategy.c:get_lower_levels_ctx
Unexecuted instantiation: global_motion.c:get_lower_levels_ctx
Unexecuted instantiation: gop_structure.c:get_lower_levels_ctx
Unexecuted instantiation: interp_search.c:get_lower_levels_ctx
Unexecuted instantiation: motion_search_facade.c:get_lower_levels_ctx
259
260
static inline int get_lower_levels_ctx_general(int is_last, int scan_idx,
261
                                               int bhl, int width,
262
                                               const uint8_t *levels,
263
                                               int coeff_idx, TX_SIZE tx_size,
264
0
                                               TX_CLASS tx_class) {
265
0
  if (is_last) {
266
0
    if (scan_idx == 0) return 0;
267
0
    if (scan_idx <= (width << bhl) >> 3) return 1;
268
0
    if (scan_idx <= (width << bhl) >> 2) return 2;
269
0
    return 3;
270
0
  }
271
0
  return get_lower_levels_ctx(levels, coeff_idx, bhl, tx_size, tx_class);
272
0
}
Unexecuted instantiation: decodetxb.c:get_lower_levels_ctx_general
Unexecuted instantiation: av1_cx_iface.c:get_lower_levels_ctx_general
Unexecuted instantiation: allintra_vis.c:get_lower_levels_ctx_general
Unexecuted instantiation: av1_quantize.c:get_lower_levels_ctx_general
Unexecuted instantiation: bitstream.c:get_lower_levels_ctx_general
Unexecuted instantiation: context_tree.c:get_lower_levels_ctx_general
Unexecuted instantiation: encodeframe.c:get_lower_levels_ctx_general
Unexecuted instantiation: encodeframe_utils.c:get_lower_levels_ctx_general
Unexecuted instantiation: encodemb.c:get_lower_levels_ctx_general
Unexecuted instantiation: encodemv.c:get_lower_levels_ctx_general
Unexecuted instantiation: encoder.c:get_lower_levels_ctx_general
Unexecuted instantiation: encoder_utils.c:get_lower_levels_ctx_general
Unexecuted instantiation: encodetxb.c:get_lower_levels_ctx_general
Unexecuted instantiation: ethread.c:get_lower_levels_ctx_general
Unexecuted instantiation: firstpass.c:get_lower_levels_ctx_general
Unexecuted instantiation: global_motion_facade.c:get_lower_levels_ctx_general
Unexecuted instantiation: level.c:get_lower_levels_ctx_general
Unexecuted instantiation: lookahead.c:get_lower_levels_ctx_general
Unexecuted instantiation: mcomp.c:get_lower_levels_ctx_general
Unexecuted instantiation: mv_prec.c:get_lower_levels_ctx_general
Unexecuted instantiation: palette.c:get_lower_levels_ctx_general
Unexecuted instantiation: partition_search.c:get_lower_levels_ctx_general
Unexecuted instantiation: partition_strategy.c:get_lower_levels_ctx_general
Unexecuted instantiation: pass2_strategy.c:get_lower_levels_ctx_general
Unexecuted instantiation: pickcdef.c:get_lower_levels_ctx_general
Unexecuted instantiation: picklpf.c:get_lower_levels_ctx_general
Unexecuted instantiation: pickrst.c:get_lower_levels_ctx_general
Unexecuted instantiation: ratectrl.c:get_lower_levels_ctx_general
Unexecuted instantiation: rd.c:get_lower_levels_ctx_general
Unexecuted instantiation: rdopt.c:get_lower_levels_ctx_general
Unexecuted instantiation: nonrd_pickmode.c:get_lower_levels_ctx_general
Unexecuted instantiation: nonrd_opt.c:get_lower_levels_ctx_general
Unexecuted instantiation: segmentation.c:get_lower_levels_ctx_general
Unexecuted instantiation: speed_features.c:get_lower_levels_ctx_general
Unexecuted instantiation: superres_scale.c:get_lower_levels_ctx_general
Unexecuted instantiation: svc_layercontext.c:get_lower_levels_ctx_general
Unexecuted instantiation: temporal_filter.c:get_lower_levels_ctx_general
Unexecuted instantiation: tokenize.c:get_lower_levels_ctx_general
Unexecuted instantiation: tpl_model.c:get_lower_levels_ctx_general
Unexecuted instantiation: tx_search.c:get_lower_levels_ctx_general
Unexecuted instantiation: txb_rdopt.c:get_lower_levels_ctx_general
Unexecuted instantiation: intra_mode_search.c:get_lower_levels_ctx_general
Unexecuted instantiation: var_based_part.c:get_lower_levels_ctx_general
Unexecuted instantiation: av1_noise_estimate.c:get_lower_levels_ctx_general
Unexecuted instantiation: entropy.c:get_lower_levels_ctx_general
Unexecuted instantiation: entropymode.c:get_lower_levels_ctx_general
Unexecuted instantiation: txb_common.c:get_lower_levels_ctx_general
Unexecuted instantiation: aq_complexity.c:get_lower_levels_ctx_general
Unexecuted instantiation: aq_cyclicrefresh.c:get_lower_levels_ctx_general
Unexecuted instantiation: aq_variance.c:get_lower_levels_ctx_general
Unexecuted instantiation: compound_type.c:get_lower_levels_ctx_general
Unexecuted instantiation: encode_strategy.c:get_lower_levels_ctx_general
Unexecuted instantiation: global_motion.c:get_lower_levels_ctx_general
Unexecuted instantiation: gop_structure.c:get_lower_levels_ctx_general
Unexecuted instantiation: interp_search.c:get_lower_levels_ctx_general
Unexecuted instantiation: motion_search_facade.c:get_lower_levels_ctx_general
273
274
4.99M
static inline void set_dc_sign(int *cul_level, int dc_val) {
275
4.99M
  if (dc_val < 0)
276
1.27M
    *cul_level |= 1 << COEFF_CONTEXT_BITS;
277
3.71M
  else if (dc_val > 0)
278
3.11M
    *cul_level += 2 << COEFF_CONTEXT_BITS;
279
4.99M
}
decodetxb.c:set_dc_sign
Line
Count
Source
274
4.99M
static inline void set_dc_sign(int *cul_level, int dc_val) {
275
4.99M
  if (dc_val < 0)
276
1.27M
    *cul_level |= 1 << COEFF_CONTEXT_BITS;
277
3.71M
  else if (dc_val > 0)
278
3.11M
    *cul_level += 2 << COEFF_CONTEXT_BITS;
279
4.99M
}
Unexecuted instantiation: av1_cx_iface.c:set_dc_sign
Unexecuted instantiation: allintra_vis.c:set_dc_sign
Unexecuted instantiation: av1_quantize.c:set_dc_sign
Unexecuted instantiation: bitstream.c:set_dc_sign
Unexecuted instantiation: context_tree.c:set_dc_sign
Unexecuted instantiation: encodeframe.c:set_dc_sign
Unexecuted instantiation: encodeframe_utils.c:set_dc_sign
Unexecuted instantiation: encodemb.c:set_dc_sign
Unexecuted instantiation: encodemv.c:set_dc_sign
Unexecuted instantiation: encoder.c:set_dc_sign
Unexecuted instantiation: encoder_utils.c:set_dc_sign
Unexecuted instantiation: encodetxb.c:set_dc_sign
Unexecuted instantiation: ethread.c:set_dc_sign
Unexecuted instantiation: firstpass.c:set_dc_sign
Unexecuted instantiation: global_motion_facade.c:set_dc_sign
Unexecuted instantiation: level.c:set_dc_sign
Unexecuted instantiation: lookahead.c:set_dc_sign
Unexecuted instantiation: mcomp.c:set_dc_sign
Unexecuted instantiation: mv_prec.c:set_dc_sign
Unexecuted instantiation: palette.c:set_dc_sign
Unexecuted instantiation: partition_search.c:set_dc_sign
Unexecuted instantiation: partition_strategy.c:set_dc_sign
Unexecuted instantiation: pass2_strategy.c:set_dc_sign
Unexecuted instantiation: pickcdef.c:set_dc_sign
Unexecuted instantiation: picklpf.c:set_dc_sign
Unexecuted instantiation: pickrst.c:set_dc_sign
Unexecuted instantiation: ratectrl.c:set_dc_sign
Unexecuted instantiation: rd.c:set_dc_sign
Unexecuted instantiation: rdopt.c:set_dc_sign
Unexecuted instantiation: nonrd_pickmode.c:set_dc_sign
Unexecuted instantiation: nonrd_opt.c:set_dc_sign
Unexecuted instantiation: segmentation.c:set_dc_sign
Unexecuted instantiation: speed_features.c:set_dc_sign
Unexecuted instantiation: superres_scale.c:set_dc_sign
Unexecuted instantiation: svc_layercontext.c:set_dc_sign
Unexecuted instantiation: temporal_filter.c:set_dc_sign
Unexecuted instantiation: tokenize.c:set_dc_sign
Unexecuted instantiation: tpl_model.c:set_dc_sign
Unexecuted instantiation: tx_search.c:set_dc_sign
Unexecuted instantiation: txb_rdopt.c:set_dc_sign
Unexecuted instantiation: intra_mode_search.c:set_dc_sign
Unexecuted instantiation: var_based_part.c:set_dc_sign
Unexecuted instantiation: av1_noise_estimate.c:set_dc_sign
Unexecuted instantiation: entropy.c:set_dc_sign
Unexecuted instantiation: entropymode.c:set_dc_sign
Unexecuted instantiation: txb_common.c:set_dc_sign
Unexecuted instantiation: aq_complexity.c:set_dc_sign
Unexecuted instantiation: aq_cyclicrefresh.c:set_dc_sign
Unexecuted instantiation: aq_variance.c:set_dc_sign
Unexecuted instantiation: compound_type.c:set_dc_sign
Unexecuted instantiation: encode_strategy.c:set_dc_sign
Unexecuted instantiation: global_motion.c:set_dc_sign
Unexecuted instantiation: gop_structure.c:set_dc_sign
Unexecuted instantiation: interp_search.c:set_dc_sign
Unexecuted instantiation: motion_search_facade.c:set_dc_sign
280
281
static void get_txb_ctx_general(const BLOCK_SIZE plane_bsize,
282
                                const TX_SIZE tx_size, const int plane,
283
                                const ENTROPY_CONTEXT *const a,
284
                                const ENTROPY_CONTEXT *const l,
285
1.68M
                                TXB_CTX *const txb_ctx) {
286
13.0M
#define MAX_TX_SIZE_UNIT 16
287
1.68M
  static const int8_t signs[3] = { 0, -1, 1 };
288
1.68M
  static const int8_t dc_sign_contexts[4 * MAX_TX_SIZE_UNIT + 1] = {
289
1.68M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
290
1.68M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
291
1.68M
    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
292
1.68M
  };
293
1.68M
  const int txb_w_unit = tx_size_wide_unit[tx_size];
294
1.68M
  const int txb_h_unit = tx_size_high_unit[tx_size];
295
1.68M
  int dc_sign = 0;
296
1.68M
  int k = 0;
297
298
6.68M
  do {
299
6.68M
    const unsigned int sign = ((uint8_t)a[k]) >> COEFF_CONTEXT_BITS;
300
6.68M
    assert(sign <= 2);
301
6.68M
    dc_sign += signs[sign];
302
6.68M
  } while (++k < txb_w_unit);
303
304
1.68M
  k = 0;
305
6.11M
  do {
306
6.11M
    const unsigned int sign = ((uint8_t)l[k]) >> COEFF_CONTEXT_BITS;
307
6.11M
    assert(sign <= 2);
308
6.11M
    dc_sign += signs[sign];
309
6.11M
  } while (++k < txb_h_unit);
310
311
1.68M
  txb_ctx->dc_sign_ctx = dc_sign_contexts[dc_sign + 2 * MAX_TX_SIZE_UNIT];
312
313
1.68M
  if (plane == 0) {
314
625k
    if (plane_bsize == txsize_to_bsize[tx_size]) {
315
500k
      txb_ctx->txb_skip_ctx = 0;
316
500k
    } else {
317
      // This is the algorithm to generate table skip_contexts[top][left].
318
      //    const int max = AOMMIN(top | left, 4);
319
      //    const int min = AOMMIN(AOMMIN(top, left), 4);
320
      //    if (!max)
321
      //      txb_skip_ctx = 1;
322
      //    else if (!min)
323
      //      txb_skip_ctx = 2 + (max > 3);
324
      //    else if (max <= 3)
325
      //      txb_skip_ctx = 4;
326
      //    else if (min <= 3)
327
      //      txb_skip_ctx = 5;
328
      //    else
329
      //      txb_skip_ctx = 6;
330
124k
      static const uint8_t skip_contexts[5][5] = { { 1, 2, 2, 2, 3 },
331
124k
                                                   { 2, 4, 4, 4, 5 },
332
124k
                                                   { 2, 4, 4, 4, 5 },
333
124k
                                                   { 2, 4, 4, 4, 5 },
334
124k
                                                   { 3, 5, 5, 5, 6 } };
335
      // For top and left, we only care about which of the following three
336
      // categories they belong to: { 0 }, { 1, 2, 3 }, or { 4, 5, ... }. The
337
      // spec calculates top and left with the Max() function. We can calculate
338
      // an approximate max with bitwise OR because the real max and the
339
      // approximate max belong to the same category.
340
124k
      int top = 0;
341
124k
      int left = 0;
342
343
124k
      k = 0;
344
1.20M
      do {
345
1.20M
        top |= a[k];
346
1.20M
      } while (++k < txb_w_unit);
347
124k
      top &= COEFF_CONTEXT_MASK;
348
124k
      top = AOMMIN(top, 4);
349
350
124k
      k = 0;
351
1.19M
      do {
352
1.19M
        left |= l[k];
353
1.19M
      } while (++k < txb_h_unit);
354
124k
      left &= COEFF_CONTEXT_MASK;
355
124k
      left = AOMMIN(left, 4);
356
357
124k
      txb_ctx->txb_skip_ctx = skip_contexts[top][left];
358
124k
    }
359
1.05M
  } else {
360
1.05M
    const int ctx_base = get_entropy_context(tx_size, a, l);
361
1.05M
    const int ctx_offset = (num_pels_log2_lookup[plane_bsize] >
362
1.05M
                            num_pels_log2_lookup[txsize_to_bsize[tx_size]])
363
1.05M
                               ? 10
364
1.05M
                               : 7;
365
1.05M
    txb_ctx->txb_skip_ctx = ctx_base + ctx_offset;
366
1.05M
  }
367
1.68M
}
decodetxb.c:get_txb_ctx_general
Line
Count
Source
285
1.68M
                                TXB_CTX *const txb_ctx) {
286
1.68M
#define MAX_TX_SIZE_UNIT 16
287
1.68M
  static const int8_t signs[3] = { 0, -1, 1 };
288
1.68M
  static const int8_t dc_sign_contexts[4 * MAX_TX_SIZE_UNIT + 1] = {
289
1.68M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
290
1.68M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
291
1.68M
    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
292
1.68M
  };
293
1.68M
  const int txb_w_unit = tx_size_wide_unit[tx_size];
294
1.68M
  const int txb_h_unit = tx_size_high_unit[tx_size];
295
1.68M
  int dc_sign = 0;
296
1.68M
  int k = 0;
297
298
6.68M
  do {
299
6.68M
    const unsigned int sign = ((uint8_t)a[k]) >> COEFF_CONTEXT_BITS;
300
6.68M
    assert(sign <= 2);
301
6.68M
    dc_sign += signs[sign];
302
6.68M
  } while (++k < txb_w_unit);
303
304
1.68M
  k = 0;
305
6.11M
  do {
306
6.11M
    const unsigned int sign = ((uint8_t)l[k]) >> COEFF_CONTEXT_BITS;
307
6.11M
    assert(sign <= 2);
308
6.11M
    dc_sign += signs[sign];
309
6.11M
  } while (++k < txb_h_unit);
310
311
1.68M
  txb_ctx->dc_sign_ctx = dc_sign_contexts[dc_sign + 2 * MAX_TX_SIZE_UNIT];
312
313
1.68M
  if (plane == 0) {
314
625k
    if (plane_bsize == txsize_to_bsize[tx_size]) {
315
500k
      txb_ctx->txb_skip_ctx = 0;
316
500k
    } else {
317
      // This is the algorithm to generate table skip_contexts[top][left].
318
      //    const int max = AOMMIN(top | left, 4);
319
      //    const int min = AOMMIN(AOMMIN(top, left), 4);
320
      //    if (!max)
321
      //      txb_skip_ctx = 1;
322
      //    else if (!min)
323
      //      txb_skip_ctx = 2 + (max > 3);
324
      //    else if (max <= 3)
325
      //      txb_skip_ctx = 4;
326
      //    else if (min <= 3)
327
      //      txb_skip_ctx = 5;
328
      //    else
329
      //      txb_skip_ctx = 6;
330
124k
      static const uint8_t skip_contexts[5][5] = { { 1, 2, 2, 2, 3 },
331
124k
                                                   { 2, 4, 4, 4, 5 },
332
124k
                                                   { 2, 4, 4, 4, 5 },
333
124k
                                                   { 2, 4, 4, 4, 5 },
334
124k
                                                   { 3, 5, 5, 5, 6 } };
335
      // For top and left, we only care about which of the following three
336
      // categories they belong to: { 0 }, { 1, 2, 3 }, or { 4, 5, ... }. The
337
      // spec calculates top and left with the Max() function. We can calculate
338
      // an approximate max with bitwise OR because the real max and the
339
      // approximate max belong to the same category.
340
124k
      int top = 0;
341
124k
      int left = 0;
342
343
124k
      k = 0;
344
1.20M
      do {
345
1.20M
        top |= a[k];
346
1.20M
      } while (++k < txb_w_unit);
347
124k
      top &= COEFF_CONTEXT_MASK;
348
124k
      top = AOMMIN(top, 4);
349
350
124k
      k = 0;
351
1.19M
      do {
352
1.19M
        left |= l[k];
353
1.19M
      } while (++k < txb_h_unit);
354
124k
      left &= COEFF_CONTEXT_MASK;
355
124k
      left = AOMMIN(left, 4);
356
357
124k
      txb_ctx->txb_skip_ctx = skip_contexts[top][left];
358
124k
    }
359
1.05M
  } else {
360
1.05M
    const int ctx_base = get_entropy_context(tx_size, a, l);
361
1.05M
    const int ctx_offset = (num_pels_log2_lookup[plane_bsize] >
362
1.05M
                            num_pels_log2_lookup[txsize_to_bsize[tx_size]])
363
1.05M
                               ? 10
364
1.05M
                               : 7;
365
1.05M
    txb_ctx->txb_skip_ctx = ctx_base + ctx_offset;
366
1.05M
  }
367
1.68M
}
Unexecuted instantiation: av1_cx_iface.c:get_txb_ctx_general
Unexecuted instantiation: allintra_vis.c:get_txb_ctx_general
Unexecuted instantiation: av1_quantize.c:get_txb_ctx_general
Unexecuted instantiation: bitstream.c:get_txb_ctx_general
Unexecuted instantiation: context_tree.c:get_txb_ctx_general
Unexecuted instantiation: encodeframe.c:get_txb_ctx_general
Unexecuted instantiation: encodeframe_utils.c:get_txb_ctx_general
Unexecuted instantiation: encodemb.c:get_txb_ctx_general
Unexecuted instantiation: encodemv.c:get_txb_ctx_general
Unexecuted instantiation: encoder.c:get_txb_ctx_general
Unexecuted instantiation: encoder_utils.c:get_txb_ctx_general
Unexecuted instantiation: encodetxb.c:get_txb_ctx_general
Unexecuted instantiation: ethread.c:get_txb_ctx_general
Unexecuted instantiation: firstpass.c:get_txb_ctx_general
Unexecuted instantiation: global_motion_facade.c:get_txb_ctx_general
Unexecuted instantiation: level.c:get_txb_ctx_general
Unexecuted instantiation: lookahead.c:get_txb_ctx_general
Unexecuted instantiation: mcomp.c:get_txb_ctx_general
Unexecuted instantiation: mv_prec.c:get_txb_ctx_general
Unexecuted instantiation: palette.c:get_txb_ctx_general
Unexecuted instantiation: partition_search.c:get_txb_ctx_general
Unexecuted instantiation: partition_strategy.c:get_txb_ctx_general
Unexecuted instantiation: pass2_strategy.c:get_txb_ctx_general
Unexecuted instantiation: pickcdef.c:get_txb_ctx_general
Unexecuted instantiation: picklpf.c:get_txb_ctx_general
Unexecuted instantiation: pickrst.c:get_txb_ctx_general
Unexecuted instantiation: ratectrl.c:get_txb_ctx_general
Unexecuted instantiation: rd.c:get_txb_ctx_general
Unexecuted instantiation: rdopt.c:get_txb_ctx_general
Unexecuted instantiation: nonrd_pickmode.c:get_txb_ctx_general
Unexecuted instantiation: nonrd_opt.c:get_txb_ctx_general
Unexecuted instantiation: segmentation.c:get_txb_ctx_general
Unexecuted instantiation: speed_features.c:get_txb_ctx_general
Unexecuted instantiation: superres_scale.c:get_txb_ctx_general
Unexecuted instantiation: svc_layercontext.c:get_txb_ctx_general
Unexecuted instantiation: temporal_filter.c:get_txb_ctx_general
Unexecuted instantiation: tokenize.c:get_txb_ctx_general
Unexecuted instantiation: tpl_model.c:get_txb_ctx_general
Unexecuted instantiation: tx_search.c:get_txb_ctx_general
Unexecuted instantiation: txb_rdopt.c:get_txb_ctx_general
Unexecuted instantiation: intra_mode_search.c:get_txb_ctx_general
Unexecuted instantiation: var_based_part.c:get_txb_ctx_general
Unexecuted instantiation: av1_noise_estimate.c:get_txb_ctx_general
Unexecuted instantiation: entropy.c:get_txb_ctx_general
Unexecuted instantiation: entropymode.c:get_txb_ctx_general
Unexecuted instantiation: txb_common.c:get_txb_ctx_general
Unexecuted instantiation: aq_complexity.c:get_txb_ctx_general
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_ctx_general
Unexecuted instantiation: aq_variance.c:get_txb_ctx_general
Unexecuted instantiation: compound_type.c:get_txb_ctx_general
Unexecuted instantiation: encode_strategy.c:get_txb_ctx_general
Unexecuted instantiation: global_motion.c:get_txb_ctx_general
Unexecuted instantiation: gop_structure.c:get_txb_ctx_general
Unexecuted instantiation: interp_search.c:get_txb_ctx_general
Unexecuted instantiation: motion_search_facade.c:get_txb_ctx_general
368
369
#define SPECIALIZE_GET_TXB_CTX(w, h)                                          \
370
  static void get_txb_ctx_##w##x##h(                                          \
371
      const BLOCK_SIZE plane_bsize, const int plane,                          \
372
      const ENTROPY_CONTEXT *const a, const ENTROPY_CONTEXT *const l,         \
373
11.3M
      TXB_CTX *const txb_ctx) {                                               \
374
11.3M
    static const int8_t signs[3] = { 0, -1, 1 };                              \
375
11.3M
    static const int8_t dc_sign_contexts[4 * MAX_TX_SIZE_UNIT + 1] = {        \
376
11.3M
      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,       \
377
11.3M
      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,       \
378
11.3M
      2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2           \
379
11.3M
    };                                                                        \
380
11.3M
    const TX_SIZE tx_size = TX_##w##X##h;                                     \
381
11.3M
    const int txb_w_unit = tx_size_wide_unit[tx_size];                        \
382
11.3M
    const int txb_h_unit = tx_size_high_unit[tx_size];                        \
383
11.3M
    int dc_sign = 0;                                                          \
384
11.3M
    int k = 0;                                                                \
385
11.3M
                                                                              \
386
16.3M
    do {                                                                      \
387
16.3M
      const unsigned int sign = ((uint8_t)a[k]) >> COEFF_CONTEXT_BITS;        \
388
16.3M
      assert(sign <= 2);                                                      \
389
16.3M
      dc_sign += signs[sign];                                                 \
390
16.3M
    } while (++k < txb_w_unit);                                               \
391
11.3M
                                                                              \
392
11.3M
    k = 0;                                                                    \
393
16.3M
    do {                                                                      \
394
16.3M
      const unsigned int sign = ((uint8_t)l[k]) >> COEFF_CONTEXT_BITS;        \
395
16.3M
      assert(sign <= 2);                                                      \
396
16.3M
      dc_sign += signs[sign];                                                 \
397
16.3M
    } while (++k < txb_h_unit);                                               \
398
11.3M
                                                                              \
399
11.3M
    txb_ctx->dc_sign_ctx = dc_sign_contexts[dc_sign + 2 * MAX_TX_SIZE_UNIT];  \
400
11.3M
                                                                              \
401
11.3M
    if (plane == 0) {                                                         \
402
4.32M
      if (plane_bsize == txsize_to_bsize[tx_size]) {                          \
403
479k
        txb_ctx->txb_skip_ctx = 0;                                            \
404
3.84M
      } else {                                                                \
405
3.84M
        static const uint8_t skip_contexts[5][5] = { { 1, 2, 2, 2, 3 },       \
406
3.84M
                                                     { 2, 4, 4, 4, 5 },       \
407
3.84M
                                                     { 2, 4, 4, 4, 5 },       \
408
3.84M
                                                     { 2, 4, 4, 4, 5 },       \
409
3.84M
                                                     { 3, 5, 5, 5, 6 } };     \
410
3.84M
        int top = 0;                                                          \
411
3.84M
        int left = 0;                                                         \
412
3.84M
                                                                              \
413
3.84M
        k = 0;                                                                \
414
4.49M
        do {                                                                  \
415
4.49M
          top |= a[k];                                                        \
416
4.49M
        } while (++k < txb_w_unit);                                           \
417
3.84M
        top &= COEFF_CONTEXT_MASK;                                            \
418
3.84M
        top = AOMMIN(top, 4);                                                 \
419
3.84M
                                                                              \
420
3.84M
        k = 0;                                                                \
421
4.49M
        do {                                                                  \
422
4.49M
          left |= l[k];                                                       \
423
4.49M
        } while (++k < txb_h_unit);                                           \
424
3.84M
        left &= COEFF_CONTEXT_MASK;                                           \
425
3.84M
        left = AOMMIN(left, 4);                                               \
426
3.84M
                                                                              \
427
3.84M
        txb_ctx->txb_skip_ctx = skip_contexts[top][left];                     \
428
3.84M
      }                                                                       \
429
7.03M
    } else {                                                                  \
430
7.03M
      const int ctx_base = get_entropy_context(tx_size, a, l);                \
431
7.03M
      const int ctx_offset = (num_pels_log2_lookup[plane_bsize] >             \
432
7.03M
                              num_pels_log2_lookup[txsize_to_bsize[tx_size]]) \
433
7.03M
                                 ? 10                                         \
434
7.03M
                                 : 7;                                         \
435
7.03M
      txb_ctx->txb_skip_ctx = ctx_base + ctx_offset;                          \
436
7.03M
    }                                                                         \
437
11.3M
  }
Unexecuted instantiation: av1_cx_iface.c:get_txb_ctx_4x4
Unexecuted instantiation: av1_cx_iface.c:get_txb_ctx_8x8
Unexecuted instantiation: av1_cx_iface.c:get_txb_ctx_16x16
Unexecuted instantiation: av1_cx_iface.c:get_txb_ctx_32x32
Unexecuted instantiation: allintra_vis.c:get_txb_ctx_4x4
Unexecuted instantiation: allintra_vis.c:get_txb_ctx_8x8
Unexecuted instantiation: allintra_vis.c:get_txb_ctx_16x16
Unexecuted instantiation: allintra_vis.c:get_txb_ctx_32x32
Unexecuted instantiation: av1_quantize.c:get_txb_ctx_4x4
Unexecuted instantiation: av1_quantize.c:get_txb_ctx_8x8
Unexecuted instantiation: av1_quantize.c:get_txb_ctx_16x16
Unexecuted instantiation: av1_quantize.c:get_txb_ctx_32x32
Unexecuted instantiation: bitstream.c:get_txb_ctx_4x4
Unexecuted instantiation: bitstream.c:get_txb_ctx_8x8
Unexecuted instantiation: bitstream.c:get_txb_ctx_16x16
Unexecuted instantiation: bitstream.c:get_txb_ctx_32x32
Unexecuted instantiation: context_tree.c:get_txb_ctx_4x4
Unexecuted instantiation: context_tree.c:get_txb_ctx_8x8
Unexecuted instantiation: context_tree.c:get_txb_ctx_16x16
Unexecuted instantiation: context_tree.c:get_txb_ctx_32x32
Unexecuted instantiation: encodeframe.c:get_txb_ctx_4x4
Unexecuted instantiation: encodeframe.c:get_txb_ctx_8x8
Unexecuted instantiation: encodeframe.c:get_txb_ctx_16x16
Unexecuted instantiation: encodeframe.c:get_txb_ctx_32x32
Unexecuted instantiation: encodeframe_utils.c:get_txb_ctx_4x4
Unexecuted instantiation: encodeframe_utils.c:get_txb_ctx_8x8
Unexecuted instantiation: encodeframe_utils.c:get_txb_ctx_16x16
Unexecuted instantiation: encodeframe_utils.c:get_txb_ctx_32x32
Unexecuted instantiation: encodemv.c:get_txb_ctx_4x4
Unexecuted instantiation: encodemv.c:get_txb_ctx_8x8
Unexecuted instantiation: encodemv.c:get_txb_ctx_16x16
Unexecuted instantiation: encodemv.c:get_txb_ctx_32x32
Unexecuted instantiation: encoder.c:get_txb_ctx_4x4
Unexecuted instantiation: encoder.c:get_txb_ctx_8x8
Unexecuted instantiation: encoder.c:get_txb_ctx_16x16
Unexecuted instantiation: encoder.c:get_txb_ctx_32x32
Unexecuted instantiation: encoder_utils.c:get_txb_ctx_4x4
Unexecuted instantiation: encoder_utils.c:get_txb_ctx_8x8
Unexecuted instantiation: encoder_utils.c:get_txb_ctx_16x16
Unexecuted instantiation: encoder_utils.c:get_txb_ctx_32x32
Unexecuted instantiation: ethread.c:get_txb_ctx_4x4
Unexecuted instantiation: ethread.c:get_txb_ctx_8x8
Unexecuted instantiation: ethread.c:get_txb_ctx_16x16
Unexecuted instantiation: ethread.c:get_txb_ctx_32x32
Unexecuted instantiation: firstpass.c:get_txb_ctx_4x4
Unexecuted instantiation: firstpass.c:get_txb_ctx_8x8
Unexecuted instantiation: firstpass.c:get_txb_ctx_16x16
Unexecuted instantiation: firstpass.c:get_txb_ctx_32x32
Unexecuted instantiation: global_motion_facade.c:get_txb_ctx_4x4
Unexecuted instantiation: global_motion_facade.c:get_txb_ctx_8x8
Unexecuted instantiation: global_motion_facade.c:get_txb_ctx_16x16
Unexecuted instantiation: global_motion_facade.c:get_txb_ctx_32x32
Unexecuted instantiation: level.c:get_txb_ctx_4x4
Unexecuted instantiation: level.c:get_txb_ctx_8x8
Unexecuted instantiation: level.c:get_txb_ctx_16x16
Unexecuted instantiation: level.c:get_txb_ctx_32x32
Unexecuted instantiation: lookahead.c:get_txb_ctx_4x4
Unexecuted instantiation: lookahead.c:get_txb_ctx_8x8
Unexecuted instantiation: lookahead.c:get_txb_ctx_16x16
Unexecuted instantiation: lookahead.c:get_txb_ctx_32x32
Unexecuted instantiation: mcomp.c:get_txb_ctx_4x4
Unexecuted instantiation: mcomp.c:get_txb_ctx_8x8
Unexecuted instantiation: mcomp.c:get_txb_ctx_16x16
Unexecuted instantiation: mcomp.c:get_txb_ctx_32x32
Unexecuted instantiation: mv_prec.c:get_txb_ctx_4x4
Unexecuted instantiation: mv_prec.c:get_txb_ctx_8x8
Unexecuted instantiation: mv_prec.c:get_txb_ctx_16x16
Unexecuted instantiation: mv_prec.c:get_txb_ctx_32x32
Unexecuted instantiation: palette.c:get_txb_ctx_4x4
Unexecuted instantiation: palette.c:get_txb_ctx_8x8
Unexecuted instantiation: palette.c:get_txb_ctx_16x16
Unexecuted instantiation: palette.c:get_txb_ctx_32x32
Unexecuted instantiation: partition_search.c:get_txb_ctx_4x4
Unexecuted instantiation: partition_search.c:get_txb_ctx_8x8
Unexecuted instantiation: partition_search.c:get_txb_ctx_16x16
Unexecuted instantiation: partition_search.c:get_txb_ctx_32x32
Unexecuted instantiation: partition_strategy.c:get_txb_ctx_4x4
Unexecuted instantiation: partition_strategy.c:get_txb_ctx_8x8
Unexecuted instantiation: partition_strategy.c:get_txb_ctx_16x16
Unexecuted instantiation: partition_strategy.c:get_txb_ctx_32x32
Unexecuted instantiation: pass2_strategy.c:get_txb_ctx_4x4
Unexecuted instantiation: pass2_strategy.c:get_txb_ctx_8x8
Unexecuted instantiation: pass2_strategy.c:get_txb_ctx_16x16
Unexecuted instantiation: pass2_strategy.c:get_txb_ctx_32x32
Unexecuted instantiation: pickcdef.c:get_txb_ctx_4x4
Unexecuted instantiation: pickcdef.c:get_txb_ctx_8x8
Unexecuted instantiation: pickcdef.c:get_txb_ctx_16x16
Unexecuted instantiation: pickcdef.c:get_txb_ctx_32x32
Unexecuted instantiation: picklpf.c:get_txb_ctx_4x4
Unexecuted instantiation: picklpf.c:get_txb_ctx_8x8
Unexecuted instantiation: picklpf.c:get_txb_ctx_16x16
Unexecuted instantiation: picklpf.c:get_txb_ctx_32x32
Unexecuted instantiation: pickrst.c:get_txb_ctx_4x4
Unexecuted instantiation: pickrst.c:get_txb_ctx_8x8
Unexecuted instantiation: pickrst.c:get_txb_ctx_16x16
Unexecuted instantiation: pickrst.c:get_txb_ctx_32x32
Unexecuted instantiation: ratectrl.c:get_txb_ctx_4x4
Unexecuted instantiation: ratectrl.c:get_txb_ctx_8x8
Unexecuted instantiation: ratectrl.c:get_txb_ctx_16x16
Unexecuted instantiation: ratectrl.c:get_txb_ctx_32x32
Unexecuted instantiation: rd.c:get_txb_ctx_4x4
Unexecuted instantiation: rd.c:get_txb_ctx_8x8
Unexecuted instantiation: rd.c:get_txb_ctx_16x16
Unexecuted instantiation: rd.c:get_txb_ctx_32x32
Unexecuted instantiation: rdopt.c:get_txb_ctx_4x4
Unexecuted instantiation: rdopt.c:get_txb_ctx_8x8
Unexecuted instantiation: rdopt.c:get_txb_ctx_16x16
Unexecuted instantiation: rdopt.c:get_txb_ctx_32x32
Unexecuted instantiation: nonrd_pickmode.c:get_txb_ctx_4x4
Unexecuted instantiation: nonrd_pickmode.c:get_txb_ctx_8x8
Unexecuted instantiation: nonrd_pickmode.c:get_txb_ctx_16x16
Unexecuted instantiation: nonrd_pickmode.c:get_txb_ctx_32x32
Unexecuted instantiation: nonrd_opt.c:get_txb_ctx_4x4
Unexecuted instantiation: nonrd_opt.c:get_txb_ctx_8x8
Unexecuted instantiation: nonrd_opt.c:get_txb_ctx_16x16
Unexecuted instantiation: nonrd_opt.c:get_txb_ctx_32x32
Unexecuted instantiation: segmentation.c:get_txb_ctx_4x4
Unexecuted instantiation: segmentation.c:get_txb_ctx_8x8
Unexecuted instantiation: segmentation.c:get_txb_ctx_16x16
Unexecuted instantiation: segmentation.c:get_txb_ctx_32x32
Unexecuted instantiation: speed_features.c:get_txb_ctx_4x4
Unexecuted instantiation: speed_features.c:get_txb_ctx_8x8
Unexecuted instantiation: speed_features.c:get_txb_ctx_16x16
Unexecuted instantiation: speed_features.c:get_txb_ctx_32x32
Unexecuted instantiation: superres_scale.c:get_txb_ctx_4x4
Unexecuted instantiation: superres_scale.c:get_txb_ctx_8x8
Unexecuted instantiation: superres_scale.c:get_txb_ctx_16x16
Unexecuted instantiation: superres_scale.c:get_txb_ctx_32x32
Unexecuted instantiation: svc_layercontext.c:get_txb_ctx_4x4
Unexecuted instantiation: svc_layercontext.c:get_txb_ctx_8x8
Unexecuted instantiation: svc_layercontext.c:get_txb_ctx_16x16
Unexecuted instantiation: svc_layercontext.c:get_txb_ctx_32x32
Unexecuted instantiation: temporal_filter.c:get_txb_ctx_4x4
Unexecuted instantiation: temporal_filter.c:get_txb_ctx_8x8
Unexecuted instantiation: temporal_filter.c:get_txb_ctx_16x16
Unexecuted instantiation: temporal_filter.c:get_txb_ctx_32x32
Unexecuted instantiation: tokenize.c:get_txb_ctx_4x4
Unexecuted instantiation: tokenize.c:get_txb_ctx_8x8
Unexecuted instantiation: tokenize.c:get_txb_ctx_16x16
Unexecuted instantiation: tokenize.c:get_txb_ctx_32x32
Unexecuted instantiation: tpl_model.c:get_txb_ctx_4x4
Unexecuted instantiation: tpl_model.c:get_txb_ctx_8x8
Unexecuted instantiation: tpl_model.c:get_txb_ctx_16x16
Unexecuted instantiation: tpl_model.c:get_txb_ctx_32x32
Unexecuted instantiation: txb_rdopt.c:get_txb_ctx_4x4
Unexecuted instantiation: txb_rdopt.c:get_txb_ctx_8x8
Unexecuted instantiation: txb_rdopt.c:get_txb_ctx_16x16
Unexecuted instantiation: txb_rdopt.c:get_txb_ctx_32x32
Unexecuted instantiation: intra_mode_search.c:get_txb_ctx_4x4
Unexecuted instantiation: intra_mode_search.c:get_txb_ctx_8x8
Unexecuted instantiation: intra_mode_search.c:get_txb_ctx_16x16
Unexecuted instantiation: intra_mode_search.c:get_txb_ctx_32x32
Unexecuted instantiation: var_based_part.c:get_txb_ctx_4x4
Unexecuted instantiation: var_based_part.c:get_txb_ctx_8x8
Unexecuted instantiation: var_based_part.c:get_txb_ctx_16x16
Unexecuted instantiation: var_based_part.c:get_txb_ctx_32x32
Unexecuted instantiation: av1_noise_estimate.c:get_txb_ctx_4x4
Unexecuted instantiation: av1_noise_estimate.c:get_txb_ctx_8x8
Unexecuted instantiation: av1_noise_estimate.c:get_txb_ctx_16x16
Unexecuted instantiation: av1_noise_estimate.c:get_txb_ctx_32x32
Unexecuted instantiation: entropy.c:get_txb_ctx_4x4
Unexecuted instantiation: entropy.c:get_txb_ctx_8x8
Unexecuted instantiation: entropy.c:get_txb_ctx_16x16
Unexecuted instantiation: entropy.c:get_txb_ctx_32x32
Unexecuted instantiation: entropymode.c:get_txb_ctx_4x4
Unexecuted instantiation: entropymode.c:get_txb_ctx_8x8
Unexecuted instantiation: entropymode.c:get_txb_ctx_16x16
Unexecuted instantiation: entropymode.c:get_txb_ctx_32x32
Unexecuted instantiation: txb_common.c:get_txb_ctx_4x4
Unexecuted instantiation: txb_common.c:get_txb_ctx_8x8
Unexecuted instantiation: txb_common.c:get_txb_ctx_16x16
Unexecuted instantiation: txb_common.c:get_txb_ctx_32x32
Unexecuted instantiation: aq_complexity.c:get_txb_ctx_4x4
Unexecuted instantiation: aq_complexity.c:get_txb_ctx_8x8
Unexecuted instantiation: aq_complexity.c:get_txb_ctx_16x16
Unexecuted instantiation: aq_complexity.c:get_txb_ctx_32x32
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_ctx_4x4
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_ctx_8x8
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_ctx_16x16
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_ctx_32x32
Unexecuted instantiation: aq_variance.c:get_txb_ctx_4x4
Unexecuted instantiation: aq_variance.c:get_txb_ctx_8x8
Unexecuted instantiation: aq_variance.c:get_txb_ctx_16x16
Unexecuted instantiation: aq_variance.c:get_txb_ctx_32x32
Unexecuted instantiation: compound_type.c:get_txb_ctx_4x4
Unexecuted instantiation: compound_type.c:get_txb_ctx_8x8
Unexecuted instantiation: compound_type.c:get_txb_ctx_16x16
Unexecuted instantiation: compound_type.c:get_txb_ctx_32x32
Unexecuted instantiation: encode_strategy.c:get_txb_ctx_4x4
Unexecuted instantiation: encode_strategy.c:get_txb_ctx_8x8
Unexecuted instantiation: encode_strategy.c:get_txb_ctx_16x16
Unexecuted instantiation: encode_strategy.c:get_txb_ctx_32x32
Unexecuted instantiation: global_motion.c:get_txb_ctx_4x4
Unexecuted instantiation: global_motion.c:get_txb_ctx_8x8
Unexecuted instantiation: global_motion.c:get_txb_ctx_16x16
Unexecuted instantiation: global_motion.c:get_txb_ctx_32x32
Unexecuted instantiation: gop_structure.c:get_txb_ctx_4x4
Unexecuted instantiation: gop_structure.c:get_txb_ctx_8x8
Unexecuted instantiation: gop_structure.c:get_txb_ctx_16x16
Unexecuted instantiation: gop_structure.c:get_txb_ctx_32x32
Unexecuted instantiation: interp_search.c:get_txb_ctx_4x4
Unexecuted instantiation: interp_search.c:get_txb_ctx_8x8
Unexecuted instantiation: interp_search.c:get_txb_ctx_16x16
Unexecuted instantiation: interp_search.c:get_txb_ctx_32x32
Unexecuted instantiation: motion_search_facade.c:get_txb_ctx_4x4
Unexecuted instantiation: motion_search_facade.c:get_txb_ctx_8x8
Unexecuted instantiation: motion_search_facade.c:get_txb_ctx_16x16
Unexecuted instantiation: motion_search_facade.c:get_txb_ctx_32x32
438
439
9.81M
SPECIALIZE_GET_TXB_CTX(4, 4)
decodetxb.c:get_txb_ctx_4x4
Line
Count
Source
439
SPECIALIZE_GET_TXB_CTX(4, 4)
Unexecuted instantiation: encodemb.c:get_txb_ctx_4x4
Unexecuted instantiation: encodetxb.c:get_txb_ctx_4x4
Unexecuted instantiation: tx_search.c:get_txb_ctx_4x4
440
743k
SPECIALIZE_GET_TXB_CTX(8, 8)
decodetxb.c:get_txb_ctx_8x8
Line
Count
Source
440
SPECIALIZE_GET_TXB_CTX(8, 8)
Unexecuted instantiation: encodemb.c:get_txb_ctx_8x8
Unexecuted instantiation: encodetxb.c:get_txb_ctx_8x8
Unexecuted instantiation: tx_search.c:get_txb_ctx_8x8
441
327k
SPECIALIZE_GET_TXB_CTX(16, 16)
decodetxb.c:get_txb_ctx_16x16
Line
Count
Source
441
SPECIALIZE_GET_TXB_CTX(16, 16)
Unexecuted instantiation: encodemb.c:get_txb_ctx_16x16
Unexecuted instantiation: encodetxb.c:get_txb_ctx_16x16
Unexecuted instantiation: tx_search.c:get_txb_ctx_16x16
442
465k
SPECIALIZE_GET_TXB_CTX(32, 32)
decodetxb.c:get_txb_ctx_32x32
Line
Count
Source
442
SPECIALIZE_GET_TXB_CTX(32, 32)
Unexecuted instantiation: encodemb.c:get_txb_ctx_32x32
Unexecuted instantiation: encodetxb.c:get_txb_ctx_32x32
Unexecuted instantiation: tx_search.c:get_txb_ctx_32x32
443
444
// Wrapper for get_txb_ctx that calls the specialized version of get_txb_ctc_*
445
// so that the compiler can compile away the while loops.
446
static inline void get_txb_ctx(const BLOCK_SIZE plane_bsize,
447
                               const TX_SIZE tx_size, const int plane,
448
                               const ENTROPY_CONTEXT *const a,
449
                               const ENTROPY_CONTEXT *const l,
450
13.0M
                               TXB_CTX *const txb_ctx) {
451
13.0M
  switch (tx_size) {
452
9.81M
    case TX_4X4: get_txb_ctx_4x4(plane_bsize, plane, a, l, txb_ctx); break;
453
743k
    case TX_8X8: get_txb_ctx_8x8(plane_bsize, plane, a, l, txb_ctx); break;
454
327k
    case TX_16X16: get_txb_ctx_16x16(plane_bsize, plane, a, l, txb_ctx); break;
455
465k
    case TX_32X32: get_txb_ctx_32x32(plane_bsize, plane, a, l, txb_ctx); break;
456
1.68M
    default:
457
1.68M
      get_txb_ctx_general(plane_bsize, tx_size, plane, a, l, txb_ctx);
458
1.68M
      break;
459
13.0M
  }
460
13.0M
}
decodetxb.c:get_txb_ctx
Line
Count
Source
450
13.0M
                               TXB_CTX *const txb_ctx) {
451
13.0M
  switch (tx_size) {
452
9.81M
    case TX_4X4: get_txb_ctx_4x4(plane_bsize, plane, a, l, txb_ctx); break;
453
743k
    case TX_8X8: get_txb_ctx_8x8(plane_bsize, plane, a, l, txb_ctx); break;
454
327k
    case TX_16X16: get_txb_ctx_16x16(plane_bsize, plane, a, l, txb_ctx); break;
455
465k
    case TX_32X32: get_txb_ctx_32x32(plane_bsize, plane, a, l, txb_ctx); break;
456
1.68M
    default:
457
1.68M
      get_txb_ctx_general(plane_bsize, tx_size, plane, a, l, txb_ctx);
458
1.68M
      break;
459
13.0M
  }
460
13.0M
}
Unexecuted instantiation: av1_cx_iface.c:get_txb_ctx
Unexecuted instantiation: allintra_vis.c:get_txb_ctx
Unexecuted instantiation: av1_quantize.c:get_txb_ctx
Unexecuted instantiation: bitstream.c:get_txb_ctx
Unexecuted instantiation: context_tree.c:get_txb_ctx
Unexecuted instantiation: encodeframe.c:get_txb_ctx
Unexecuted instantiation: encodeframe_utils.c:get_txb_ctx
Unexecuted instantiation: encodemb.c:get_txb_ctx
Unexecuted instantiation: encodemv.c:get_txb_ctx
Unexecuted instantiation: encoder.c:get_txb_ctx
Unexecuted instantiation: encoder_utils.c:get_txb_ctx
Unexecuted instantiation: encodetxb.c:get_txb_ctx
Unexecuted instantiation: ethread.c:get_txb_ctx
Unexecuted instantiation: firstpass.c:get_txb_ctx
Unexecuted instantiation: global_motion_facade.c:get_txb_ctx
Unexecuted instantiation: level.c:get_txb_ctx
Unexecuted instantiation: lookahead.c:get_txb_ctx
Unexecuted instantiation: mcomp.c:get_txb_ctx
Unexecuted instantiation: mv_prec.c:get_txb_ctx
Unexecuted instantiation: palette.c:get_txb_ctx
Unexecuted instantiation: partition_search.c:get_txb_ctx
Unexecuted instantiation: partition_strategy.c:get_txb_ctx
Unexecuted instantiation: pass2_strategy.c:get_txb_ctx
Unexecuted instantiation: pickcdef.c:get_txb_ctx
Unexecuted instantiation: picklpf.c:get_txb_ctx
Unexecuted instantiation: pickrst.c:get_txb_ctx
Unexecuted instantiation: ratectrl.c:get_txb_ctx
Unexecuted instantiation: rd.c:get_txb_ctx
Unexecuted instantiation: rdopt.c:get_txb_ctx
Unexecuted instantiation: nonrd_pickmode.c:get_txb_ctx
Unexecuted instantiation: nonrd_opt.c:get_txb_ctx
Unexecuted instantiation: segmentation.c:get_txb_ctx
Unexecuted instantiation: speed_features.c:get_txb_ctx
Unexecuted instantiation: superres_scale.c:get_txb_ctx
Unexecuted instantiation: svc_layercontext.c:get_txb_ctx
Unexecuted instantiation: temporal_filter.c:get_txb_ctx
Unexecuted instantiation: tokenize.c:get_txb_ctx
Unexecuted instantiation: tpl_model.c:get_txb_ctx
Unexecuted instantiation: tx_search.c:get_txb_ctx
Unexecuted instantiation: txb_rdopt.c:get_txb_ctx
Unexecuted instantiation: intra_mode_search.c:get_txb_ctx
Unexecuted instantiation: var_based_part.c:get_txb_ctx
Unexecuted instantiation: av1_noise_estimate.c:get_txb_ctx
Unexecuted instantiation: entropy.c:get_txb_ctx
Unexecuted instantiation: entropymode.c:get_txb_ctx
Unexecuted instantiation: txb_common.c:get_txb_ctx
Unexecuted instantiation: aq_complexity.c:get_txb_ctx
Unexecuted instantiation: aq_cyclicrefresh.c:get_txb_ctx
Unexecuted instantiation: aq_variance.c:get_txb_ctx
Unexecuted instantiation: compound_type.c:get_txb_ctx
Unexecuted instantiation: encode_strategy.c:get_txb_ctx
Unexecuted instantiation: global_motion.c:get_txb_ctx
Unexecuted instantiation: gop_structure.c:get_txb_ctx
Unexecuted instantiation: interp_search.c:get_txb_ctx
Unexecuted instantiation: motion_search_facade.c:get_txb_ctx
461
#undef MAX_TX_SIZE_UNIT
462
463
#endif  // AOM_AV1_COMMON_TXB_COMMON_H_