Coverage Report

Created: 2026-07-25 07:03

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
11.0M
static inline int get_txb_bhl(TX_SIZE tx_size) {
51
11.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
52
11.0M
  return tx_size_high_log2[tx_size];
53
11.0M
}
decodetxb.c:get_txb_bhl
Line
Count
Source
50
11.0M
static inline int get_txb_bhl(TX_SIZE tx_size) {
51
11.0M
  tx_size = av1_get_adjusted_tx_size(tx_size);
52
11.0M
  return tx_size_high_log2[tx_size];
53
11.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
11.1M
static inline int get_txb_wide(TX_SIZE tx_size) {
56
11.1M
  tx_size = av1_get_adjusted_tx_size(tx_size);
57
11.1M
  return tx_size_wide[tx_size];
58
11.1M
}
decodetxb.c:get_txb_wide
Line
Count
Source
55
11.1M
static inline int get_txb_wide(TX_SIZE tx_size) {
56
11.1M
  tx_size = av1_get_adjusted_tx_size(tx_size);
57
11.1M
  return tx_size_wide[tx_size];
58
11.1M
}
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
11.1M
static inline int get_txb_high(TX_SIZE tx_size) {
61
11.1M
  tx_size = av1_get_adjusted_tx_size(tx_size);
62
11.1M
  return tx_size_high[tx_size];
63
11.1M
}
decodetxb.c:get_txb_high
Line
Count
Source
60
11.1M
static inline int get_txb_high(TX_SIZE tx_size) {
61
11.1M
  tx_size = av1_get_adjusted_tx_size(tx_size);
62
11.1M
  return tx_size_high[tx_size];
63
11.1M
}
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
11.0M
static inline uint8_t *set_levels(uint8_t *const levels_buf, const int height) {
66
11.0M
  return levels_buf + TX_PAD_TOP * (height + TX_PAD_HOR);
67
11.0M
}
decodetxb.c:set_levels
Line
Count
Source
65
11.0M
static inline uint8_t *set_levels(uint8_t *const levels_buf, const int height) {
66
11.0M
  return levels_buf + TX_PAD_TOP * (height + TX_PAD_HOR);
67
11.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
170M
static inline int get_padded_idx(const int idx, const int bhl) {
70
170M
  return idx + ((idx >> bhl) << TX_PAD_HOR_LOG2);
71
170M
}
decodetxb.c:get_padded_idx
Line
Count
Source
69
170M
static inline int get_padded_idx(const int idx, const int bhl) {
70
170M
  return idx + ((idx >> bhl) << TX_PAD_HOR_LOG2);
71
170M
}
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
7.53M
                                const int bhl) {
76
7.53M
  assert(c > 0);
77
7.53M
  const int col = c >> bhl;
78
7.53M
  const int row = c - (col << bhl);
79
7.53M
  const int stride = (1 << bhl) + TX_PAD_HOR;
80
7.53M
  const int pos = col * stride + row;
81
7.53M
  int mag = AOMMIN(levels[pos + 1], MAX_BASE_BR_RANGE) +
82
7.53M
            AOMMIN(levels[pos + stride], MAX_BASE_BR_RANGE) +
83
7.53M
            AOMMIN(levels[pos + 1 + stride], MAX_BASE_BR_RANGE);
84
7.53M
  mag = AOMMIN((mag + 1) >> 1, 6);
85
  //((row | col) < 2) is equivalent to ((row < 2) && (col < 2))
86
7.53M
  if ((row | col) < 2) return mag + 7;
87
6.11M
  return mag + 14;
88
7.53M
}
decodetxb.c:get_br_ctx_2d
Line
Count
Source
75
7.53M
                                const int bhl) {
76
7.53M
  assert(c > 0);
77
7.53M
  const int col = c >> bhl;
78
7.53M
  const int row = c - (col << bhl);
79
7.53M
  const int stride = (1 << bhl) + TX_PAD_HOR;
80
7.53M
  const int pos = col * stride + row;
81
7.53M
  int mag = AOMMIN(levels[pos + 1], MAX_BASE_BR_RANGE) +
82
7.53M
            AOMMIN(levels[pos + stride], MAX_BASE_BR_RANGE) +
83
7.53M
            AOMMIN(levels[pos + 1 + stride], MAX_BASE_BR_RANGE);
84
7.53M
  mag = AOMMIN((mag + 1) >> 1, 6);
85
  //((row | col) < 2) is equivalent to ((row < 2) && (col < 2))
86
7.53M
  if ((row | col) < 2) return mag + 7;
87
6.11M
  return mag + 14;
88
7.53M
}
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
477k
                                           const TX_CLASS tx_class) {
93
477k
  const int col = c >> bhl;
94
477k
  const int row = c - (col << bhl);
95
477k
  if (c == 0) return 0;
96
274k
  if ((tx_class == TX_CLASS_2D && row < 2 && col < 2) ||
97
270k
      (tx_class == TX_CLASS_HORIZ && col == 0) ||
98
269k
      (tx_class == TX_CLASS_VERT && row == 0))
99
5.20k
    return 7;
100
269k
  return 14;
101
274k
}
decodetxb.c:get_br_ctx_eob
Line
Count
Source
92
477k
                                           const TX_CLASS tx_class) {
93
477k
  const int col = c >> bhl;
94
477k
  const int row = c - (col << bhl);
95
477k
  if (c == 0) return 0;
96
274k
  if ((tx_class == TX_CLASS_2D && row < 2 && col < 2) ||
97
270k
      (tx_class == TX_CLASS_HORIZ && col == 0) ||
98
269k
      (tx_class == TX_CLASS_VERT && row == 0))
99
5.20k
    return 7;
100
269k
  return 14;
101
274k
}
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.02M
                                       const int bhl, const TX_CLASS tx_class) {
106
1.02M
  const int col = c >> bhl;
107
1.02M
  const int row = c - (col << bhl);
108
1.02M
  const int stride = (1 << bhl) + TX_PAD_HOR;
109
1.02M
  const int pos = col * stride + row;
110
1.02M
  int mag = levels[pos + 1];
111
1.02M
  mag += levels[pos + stride];
112
1.02M
  switch (tx_class) {
113
929k
    case TX_CLASS_2D:
114
929k
      mag += levels[pos + stride + 1];
115
929k
      mag = AOMMIN((mag + 1) >> 1, 6);
116
929k
      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
69.2k
      mag += levels[pos + (stride << 1)];
121
69.2k
      mag = AOMMIN((mag + 1) >> 1, 6);
122
69.2k
      if (c == 0) return mag;
123
63.9k
      if (col == 0) return mag + 7;
124
44.0k
      break;
125
44.0k
    case TX_CLASS_VERT:
126
26.7k
      mag += levels[pos + 2];
127
26.7k
      mag = AOMMIN((mag + 1) >> 1, 6);
128
26.7k
      if (c == 0) return mag;
129
24.6k
      if (row == 0) return mag + 7;
130
15.5k
      break;
131
15.5k
    default: break;
132
1.02M
  }
133
134
59.6k
  return mag + 14;
135
1.02M
}
decodetxb.c:get_br_ctx
Line
Count
Source
105
1.02M
                                       const int bhl, const TX_CLASS tx_class) {
106
1.02M
  const int col = c >> bhl;
107
1.02M
  const int row = c - (col << bhl);
108
1.02M
  const int stride = (1 << bhl) + TX_PAD_HOR;
109
1.02M
  const int pos = col * stride + row;
110
1.02M
  int mag = levels[pos + 1];
111
1.02M
  mag += levels[pos + stride];
112
1.02M
  switch (tx_class) {
113
929k
    case TX_CLASS_2D:
114
929k
      mag += levels[pos + stride + 1];
115
929k
      mag = AOMMIN((mag + 1) >> 1, 6);
116
929k
      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
69.2k
      mag += levels[pos + (stride << 1)];
121
69.2k
      mag = AOMMIN((mag + 1) >> 1, 6);
122
69.2k
      if (c == 0) return mag;
123
63.9k
      if (col == 0) return mag + 7;
124
44.0k
      break;
125
44.0k
    case TX_CLASS_VERT:
126
26.7k
      mag += levels[pos + 2];
127
26.7k
      mag = AOMMIN((mag + 1) >> 1, 6);
128
26.7k
      if (c == 0) return mag;
129
24.6k
      if (row == 0) return mag + 7;
130
15.5k
      break;
131
15.5k
    default: break;
132
1.02M
  }
133
134
59.6k
  return mag + 14;
135
1.02M
}
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
3.60M
                                       const int bhl, const TX_CLASS tx_class) {
152
3.60M
  int mag;
153
154
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
155
3.60M
  mag = clip_max3[levels[(1 << bhl) + TX_PAD_HOR]];  // { 0, 1 }
156
3.60M
  mag += clip_max3[levels[1]];                       // { 1, 0 }
157
158
3.60M
  if (tx_class == TX_CLASS_2D) {
159
2.12M
    mag += clip_max3[levels[(1 << bhl) + TX_PAD_HOR + 1]];          // { 1, 1 }
160
2.12M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
161
2.12M
    mag += clip_max3[levels[2]];                                    // { 2, 0 }
162
2.12M
  } else if (tx_class == TX_CLASS_VERT) {
163
465k
    mag += clip_max3[levels[2]];  // { 2, 0 }
164
465k
    mag += clip_max3[levels[3]];  // { 3, 0 }
165
465k
    mag += clip_max3[levels[4]];  // { 4, 0 }
166
1.02M
  } else {
167
1.02M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
168
1.02M
    mag += clip_max3[levels[(3 << bhl) + (3 << TX_PAD_HOR_LOG2)]];  // { 0, 3 }
169
1.02M
    mag += clip_max3[levels[(4 << bhl) + (4 << TX_PAD_HOR_LOG2)]];  // { 0, 4 }
170
1.02M
  }
171
172
3.60M
  return mag;
173
3.60M
}
decodetxb.c:get_nz_mag
Line
Count
Source
151
3.60M
                                       const int bhl, const TX_CLASS tx_class) {
152
3.60M
  int mag;
153
154
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
155
3.60M
  mag = clip_max3[levels[(1 << bhl) + TX_PAD_HOR]];  // { 0, 1 }
156
3.60M
  mag += clip_max3[levels[1]];                       // { 1, 0 }
157
158
3.60M
  if (tx_class == TX_CLASS_2D) {
159
2.12M
    mag += clip_max3[levels[(1 << bhl) + TX_PAD_HOR + 1]];          // { 1, 1 }
160
2.12M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
161
2.12M
    mag += clip_max3[levels[2]];                                    // { 2, 0 }
162
2.12M
  } else if (tx_class == TX_CLASS_VERT) {
163
465k
    mag += clip_max3[levels[2]];  // { 2, 0 }
164
465k
    mag += clip_max3[levels[3]];  // { 3, 0 }
165
465k
    mag += clip_max3[levels[4]];  // { 4, 0 }
166
1.02M
  } else {
167
1.02M
    mag += clip_max3[levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)]];  // { 0, 2 }
168
1.02M
    mag += clip_max3[levels[(3 << bhl) + (3 << TX_PAD_HOR_LOG2)]];  // { 0, 3 }
169
1.02M
    mag += clip_max3[levels[(4 << bhl) + (4 << TX_PAD_HOR_LOG2)]];  // { 0, 4 }
170
1.02M
  }
171
172
3.60M
  return mag;
173
3.60M
}
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
3.60M
    const int bhl, const TX_SIZE tx_size, const TX_CLASS tx_class) {
193
  // tx_class == 0(TX_CLASS_2D)
194
3.60M
  if ((tx_class | coeff_idx) == 0) return 0;
195
1.48M
  int ctx = (stats + 1) >> 1;
196
1.48M
  ctx = AOMMIN(ctx, 4);
197
1.48M
  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.02M
    case TX_CLASS_HORIZ: {
213
1.02M
      const int col = coeff_idx >> bhl;
214
1.02M
      return ctx + nz_map_ctx_offset_1d[col];
215
0
    }
216
465k
    case TX_CLASS_VERT: {
217
465k
      const int col = coeff_idx >> bhl;
218
465k
      const int row = coeff_idx - (col << bhl);
219
465k
      return ctx + nz_map_ctx_offset_1d[row];
220
0
    }
221
0
    default: break;
222
1.48M
  }
223
0
  return 0;
224
1.48M
}
decodetxb.c:get_nz_map_ctx_from_stats
Line
Count
Source
192
3.60M
    const int bhl, const TX_SIZE tx_size, const TX_CLASS tx_class) {
193
  // tx_class == 0(TX_CLASS_2D)
194
3.60M
  if ((tx_class | coeff_idx) == 0) return 0;
195
1.48M
  int ctx = (stats + 1) >> 1;
196
1.48M
  ctx = AOMMIN(ctx, 4);
197
1.48M
  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.02M
    case TX_CLASS_HORIZ: {
213
1.02M
      const int col = coeff_idx >> bhl;
214
1.02M
      return ctx + nz_map_ctx_offset_1d[col];
215
0
    }
216
465k
    case TX_CLASS_VERT: {
217
465k
      const int col = coeff_idx >> bhl;
218
465k
      const int row = coeff_idx - (col << bhl);
219
465k
      return ctx + nz_map_ctx_offset_1d[row];
220
0
    }
221
0
    default: break;
222
1.48M
  }
223
0
  return 0;
224
1.48M
}
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
3.73M
static inline int get_lower_levels_ctx_eob(int bhl, int width, int scan_idx) {
230
3.73M
  if (scan_idx == 0) return 0;
231
2.16M
  if (scan_idx <= (width << bhl) / 8) return 1;
232
1.77M
  if (scan_idx <= (width << bhl) / 4) return 2;
233
1.60M
  return 3;
234
1.77M
}
decodetxb.c:get_lower_levels_ctx_eob
Line
Count
Source
229
3.73M
static inline int get_lower_levels_ctx_eob(int bhl, int width, int scan_idx) {
230
3.73M
  if (scan_idx == 0) return 0;
231
2.16M
  if (scan_idx <= (width << bhl) / 8) return 1;
232
1.77M
  if (scan_idx <= (width << bhl) / 4) return 2;
233
1.60M
  return 3;
234
1.77M
}
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
51.1M
                                          int bhl, TX_SIZE tx_size) {
238
51.1M
  assert(coeff_idx > 0);
239
51.1M
  int mag;
240
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
241
51.1M
  levels = levels + get_padded_idx(coeff_idx, bhl);
242
51.1M
  mag = AOMMIN(levels[(1 << bhl) + TX_PAD_HOR], 3);               // { 0, 1 }
243
51.1M
  mag += AOMMIN(levels[1], 3);                                    // { 1, 0 }
244
51.1M
  mag += AOMMIN(levels[(1 << bhl) + TX_PAD_HOR + 1], 3);          // { 1, 1 }
245
51.1M
  mag += AOMMIN(levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)], 3);  // { 0, 2 }
246
51.1M
  mag += AOMMIN(levels[2], 3);                                    // { 2, 0 }
247
248
51.1M
  const int ctx = AOMMIN((mag + 1) >> 1, 4);
249
51.1M
  return ctx + av1_nz_map_ctx_offset[tx_size][coeff_idx];
250
51.1M
}
decodetxb.c:get_lower_levels_ctx_2d
Line
Count
Source
237
51.1M
                                          int bhl, TX_SIZE tx_size) {
238
51.1M
  assert(coeff_idx > 0);
239
51.1M
  int mag;
240
  // Note: AOMMIN(level, 3) is useless for decoder since level < 3.
241
51.1M
  levels = levels + get_padded_idx(coeff_idx, bhl);
242
51.1M
  mag = AOMMIN(levels[(1 << bhl) + TX_PAD_HOR], 3);               // { 0, 1 }
243
51.1M
  mag += AOMMIN(levels[1], 3);                                    // { 1, 0 }
244
51.1M
  mag += AOMMIN(levels[(1 << bhl) + TX_PAD_HOR + 1], 3);          // { 1, 1 }
245
51.1M
  mag += AOMMIN(levels[(2 << bhl) + (2 << TX_PAD_HOR_LOG2)], 3);  // { 0, 2 }
246
51.1M
  mag += AOMMIN(levels[2], 3);                                    // { 2, 0 }
247
248
51.1M
  const int ctx = AOMMIN((mag + 1) >> 1, 4);
249
51.1M
  return ctx + av1_nz_map_ctx_offset[tx_size][coeff_idx];
250
51.1M
}
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
3.60M
                                                 TX_CLASS tx_class) {
255
3.60M
  const int stats =
256
3.60M
      get_nz_mag(levels + get_padded_idx(coeff_idx, bhl), bhl, tx_class);
257
3.60M
  return get_nz_map_ctx_from_stats(stats, coeff_idx, bhl, tx_size, tx_class);
258
3.60M
}
decodetxb.c:get_lower_levels_ctx
Line
Count
Source
254
3.60M
                                                 TX_CLASS tx_class) {
255
3.60M
  const int stats =
256
3.60M
      get_nz_mag(levels + get_padded_idx(coeff_idx, bhl), bhl, tx_class);
257
3.60M
  return get_nz_map_ctx_from_stats(stats, coeff_idx, bhl, tx_size, tx_class);
258
3.60M
}
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
3.73M
static inline void set_dc_sign(int *cul_level, int dc_val) {
275
3.73M
  if (dc_val < 0)
276
956k
    *cul_level |= 1 << COEFF_CONTEXT_BITS;
277
2.77M
  else if (dc_val > 0)
278
2.30M
    *cul_level += 2 << COEFF_CONTEXT_BITS;
279
3.73M
}
decodetxb.c:set_dc_sign
Line
Count
Source
274
3.73M
static inline void set_dc_sign(int *cul_level, int dc_val) {
275
3.73M
  if (dc_val < 0)
276
956k
    *cul_level |= 1 << COEFF_CONTEXT_BITS;
277
2.77M
  else if (dc_val > 0)
278
2.30M
    *cul_level += 2 << COEFF_CONTEXT_BITS;
279
3.73M
}
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.18M
                                TXB_CTX *const txb_ctx) {
286
11.1M
#define MAX_TX_SIZE_UNIT 16
287
1.18M
  static const int8_t signs[3] = { 0, -1, 1 };
288
1.18M
  static const int8_t dc_sign_contexts[4 * MAX_TX_SIZE_UNIT + 1] = {
289
1.18M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
290
1.18M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
291
1.18M
    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
292
1.18M
  };
293
1.18M
  const int txb_w_unit = tx_size_wide_unit[tx_size];
294
1.18M
  const int txb_h_unit = tx_size_high_unit[tx_size];
295
1.18M
  int dc_sign = 0;
296
1.18M
  int k = 0;
297
298
4.40M
  do {
299
4.40M
    const unsigned int sign = ((uint8_t)a[k]) >> COEFF_CONTEXT_BITS;
300
4.40M
    assert(sign <= 2);
301
4.40M
    dc_sign += signs[sign];
302
4.40M
  } while (++k < txb_w_unit);
303
304
1.18M
  k = 0;
305
3.99M
  do {
306
3.99M
    const unsigned int sign = ((uint8_t)l[k]) >> COEFF_CONTEXT_BITS;
307
3.99M
    assert(sign <= 2);
308
3.99M
    dc_sign += signs[sign];
309
3.99M
  } while (++k < txb_h_unit);
310
311
1.18M
  txb_ctx->dc_sign_ctx = dc_sign_contexts[dc_sign + 2 * MAX_TX_SIZE_UNIT];
312
313
1.18M
  if (plane == 0) {
314
421k
    if (plane_bsize == txsize_to_bsize[tx_size]) {
315
352k
      txb_ctx->txb_skip_ctx = 0;
316
352k
    } 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
69.2k
      static const uint8_t skip_contexts[5][5] = { { 1, 2, 2, 2, 3 },
331
69.2k
                                                   { 2, 4, 4, 4, 5 },
332
69.2k
                                                   { 2, 4, 4, 4, 5 },
333
69.2k
                                                   { 2, 4, 4, 4, 5 },
334
69.2k
                                                   { 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
69.2k
      int top = 0;
341
69.2k
      int left = 0;
342
343
69.2k
      k = 0;
344
520k
      do {
345
520k
        top |= a[k];
346
520k
      } while (++k < txb_w_unit);
347
69.2k
      top &= COEFF_CONTEXT_MASK;
348
69.2k
      top = AOMMIN(top, 4);
349
350
69.2k
      k = 0;
351
507k
      do {
352
507k
        left |= l[k];
353
507k
      } while (++k < txb_h_unit);
354
69.2k
      left &= COEFF_CONTEXT_MASK;
355
69.2k
      left = AOMMIN(left, 4);
356
357
69.2k
      txb_ctx->txb_skip_ctx = skip_contexts[top][left];
358
69.2k
    }
359
760k
  } else {
360
760k
    const int ctx_base = get_entropy_context(tx_size, a, l);
361
760k
    const int ctx_offset = (num_pels_log2_lookup[plane_bsize] >
362
760k
                            num_pels_log2_lookup[txsize_to_bsize[tx_size]])
363
760k
                               ? 10
364
760k
                               : 7;
365
760k
    txb_ctx->txb_skip_ctx = ctx_base + ctx_offset;
366
760k
  }
367
1.18M
}
decodetxb.c:get_txb_ctx_general
Line
Count
Source
285
1.18M
                                TXB_CTX *const txb_ctx) {
286
1.18M
#define MAX_TX_SIZE_UNIT 16
287
1.18M
  static const int8_t signs[3] = { 0, -1, 1 };
288
1.18M
  static const int8_t dc_sign_contexts[4 * MAX_TX_SIZE_UNIT + 1] = {
289
1.18M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
290
1.18M
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
291
1.18M
    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2
292
1.18M
  };
293
1.18M
  const int txb_w_unit = tx_size_wide_unit[tx_size];
294
1.18M
  const int txb_h_unit = tx_size_high_unit[tx_size];
295
1.18M
  int dc_sign = 0;
296
1.18M
  int k = 0;
297
298
4.40M
  do {
299
4.40M
    const unsigned int sign = ((uint8_t)a[k]) >> COEFF_CONTEXT_BITS;
300
4.40M
    assert(sign <= 2);
301
4.40M
    dc_sign += signs[sign];
302
4.40M
  } while (++k < txb_w_unit);
303
304
1.18M
  k = 0;
305
3.99M
  do {
306
3.99M
    const unsigned int sign = ((uint8_t)l[k]) >> COEFF_CONTEXT_BITS;
307
3.99M
    assert(sign <= 2);
308
3.99M
    dc_sign += signs[sign];
309
3.99M
  } while (++k < txb_h_unit);
310
311
1.18M
  txb_ctx->dc_sign_ctx = dc_sign_contexts[dc_sign + 2 * MAX_TX_SIZE_UNIT];
312
313
1.18M
  if (plane == 0) {
314
421k
    if (plane_bsize == txsize_to_bsize[tx_size]) {
315
352k
      txb_ctx->txb_skip_ctx = 0;
316
352k
    } 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
69.2k
      static const uint8_t skip_contexts[5][5] = { { 1, 2, 2, 2, 3 },
331
69.2k
                                                   { 2, 4, 4, 4, 5 },
332
69.2k
                                                   { 2, 4, 4, 4, 5 },
333
69.2k
                                                   { 2, 4, 4, 4, 5 },
334
69.2k
                                                   { 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
69.2k
      int top = 0;
341
69.2k
      int left = 0;
342
343
69.2k
      k = 0;
344
520k
      do {
345
520k
        top |= a[k];
346
520k
      } while (++k < txb_w_unit);
347
69.2k
      top &= COEFF_CONTEXT_MASK;
348
69.2k
      top = AOMMIN(top, 4);
349
350
69.2k
      k = 0;
351
507k
      do {
352
507k
        left |= l[k];
353
507k
      } while (++k < txb_h_unit);
354
69.2k
      left &= COEFF_CONTEXT_MASK;
355
69.2k
      left = AOMMIN(left, 4);
356
357
69.2k
      txb_ctx->txb_skip_ctx = skip_contexts[top][left];
358
69.2k
    }
359
760k
  } else {
360
760k
    const int ctx_base = get_entropy_context(tx_size, a, l);
361
760k
    const int ctx_offset = (num_pels_log2_lookup[plane_bsize] >
362
760k
                            num_pels_log2_lookup[txsize_to_bsize[tx_size]])
363
760k
                               ? 10
364
760k
                               : 7;
365
760k
    txb_ctx->txb_skip_ctx = ctx_base + ctx_offset;
366
760k
  }
367
1.18M
}
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
9.94M
      TXB_CTX *const txb_ctx) {                                               \
374
9.94M
    static const int8_t signs[3] = { 0, -1, 1 };                              \
375
9.94M
    static const int8_t dc_sign_contexts[4 * MAX_TX_SIZE_UNIT + 1] = {        \
376
9.94M
      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,       \
377
9.94M
      1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,       \
378
9.94M
      2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2           \
379
9.94M
    };                                                                        \
380
9.94M
    const TX_SIZE tx_size = TX_##w##X##h;                                     \
381
9.94M
    const int txb_w_unit = tx_size_wide_unit[tx_size];                        \
382
9.94M
    const int txb_h_unit = tx_size_high_unit[tx_size];                        \
383
9.94M
    int dc_sign = 0;                                                          \
384
9.94M
    int k = 0;                                                                \
385
9.94M
                                                                              \
386
12.9M
    do {                                                                      \
387
12.9M
      const unsigned int sign = ((uint8_t)a[k]) >> COEFF_CONTEXT_BITS;        \
388
12.9M
      assert(sign <= 2);                                                      \
389
12.9M
      dc_sign += signs[sign];                                                 \
390
12.9M
    } while (++k < txb_w_unit);                                               \
391
9.94M
                                                                              \
392
9.94M
    k = 0;                                                                    \
393
12.9M
    do {                                                                      \
394
12.9M
      const unsigned int sign = ((uint8_t)l[k]) >> COEFF_CONTEXT_BITS;        \
395
12.9M
      assert(sign <= 2);                                                      \
396
12.9M
      dc_sign += signs[sign];                                                 \
397
12.9M
    } while (++k < txb_h_unit);                                               \
398
9.94M
                                                                              \
399
9.94M
    txb_ctx->dc_sign_ctx = dc_sign_contexts[dc_sign + 2 * MAX_TX_SIZE_UNIT];  \
400
9.94M
                                                                              \
401
9.94M
    if (plane == 0) {                                                         \
402
3.70M
      if (plane_bsize == txsize_to_bsize[tx_size]) {                          \
403
378k
        txb_ctx->txb_skip_ctx = 0;                                            \
404
3.32M
      } else {                                                                \
405
3.32M
        static const uint8_t skip_contexts[5][5] = { { 1, 2, 2, 2, 3 },       \
406
3.32M
                                                     { 2, 4, 4, 4, 5 },       \
407
3.32M
                                                     { 2, 4, 4, 4, 5 },       \
408
3.32M
                                                     { 2, 4, 4, 4, 5 },       \
409
3.32M
                                                     { 3, 5, 5, 5, 6 } };     \
410
3.32M
        int top = 0;                                                          \
411
3.32M
        int left = 0;                                                         \
412
3.32M
                                                                              \
413
3.32M
        k = 0;                                                                \
414
3.76M
        do {                                                                  \
415
3.76M
          top |= a[k];                                                        \
416
3.76M
        } while (++k < txb_w_unit);                                           \
417
3.32M
        top &= COEFF_CONTEXT_MASK;                                            \
418
3.32M
        top = AOMMIN(top, 4);                                                 \
419
3.32M
                                                                              \
420
3.32M
        k = 0;                                                                \
421
3.76M
        do {                                                                  \
422
3.76M
          left |= l[k];                                                       \
423
3.76M
        } while (++k < txb_h_unit);                                           \
424
3.32M
        left &= COEFF_CONTEXT_MASK;                                           \
425
3.32M
        left = AOMMIN(left, 4);                                               \
426
3.32M
                                                                              \
427
3.32M
        txb_ctx->txb_skip_ctx = skip_contexts[top][left];                     \
428
3.32M
      }                                                                       \
429
6.23M
    } else {                                                                  \
430
6.23M
      const int ctx_base = get_entropy_context(tx_size, a, l);                \
431
6.23M
      const int ctx_offset = (num_pels_log2_lookup[plane_bsize] >             \
432
6.23M
                              num_pels_log2_lookup[txsize_to_bsize[tx_size]]) \
433
6.23M
                                 ? 10                                         \
434
6.23M
                                 : 7;                                         \
435
6.23M
      txb_ctx->txb_skip_ctx = ctx_base + ctx_offset;                          \
436
6.23M
    }                                                                         \
437
9.94M
  }
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
8.91M
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
542k
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
231k
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
253k
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
11.0M
                               TXB_CTX *const txb_ctx) {
451
11.0M
  switch (tx_size) {
452
8.91M
    case TX_4X4: get_txb_ctx_4x4(plane_bsize, plane, a, l, txb_ctx); break;
453
542k
    case TX_8X8: get_txb_ctx_8x8(plane_bsize, plane, a, l, txb_ctx); break;
454
231k
    case TX_16X16: get_txb_ctx_16x16(plane_bsize, plane, a, l, txb_ctx); break;
455
253k
    case TX_32X32: get_txb_ctx_32x32(plane_bsize, plane, a, l, txb_ctx); break;
456
1.18M
    default:
457
1.18M
      get_txb_ctx_general(plane_bsize, tx_size, plane, a, l, txb_ctx);
458
1.18M
      break;
459
11.0M
  }
460
11.0M
}
decodetxb.c:get_txb_ctx
Line
Count
Source
450
11.0M
                               TXB_CTX *const txb_ctx) {
451
11.0M
  switch (tx_size) {
452
8.91M
    case TX_4X4: get_txb_ctx_4x4(plane_bsize, plane, a, l, txb_ctx); break;
453
542k
    case TX_8X8: get_txb_ctx_8x8(plane_bsize, plane, a, l, txb_ctx); break;
454
231k
    case TX_16X16: get_txb_ctx_16x16(plane_bsize, plane, a, l, txb_ctx); break;
455
253k
    case TX_32X32: get_txb_ctx_32x32(plane_bsize, plane, a, l, txb_ctx); break;
456
1.18M
    default:
457
1.18M
      get_txb_ctx_general(plane_bsize, tx_size, plane, a, l, txb_ctx);
458
1.18M
      break;
459
11.0M
  }
460
11.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_