Coverage Report

Created: 2026-05-16 06:41

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/work/svt-av1/Source/Lib/Codec/inter_prediction.h
Line
Count
Source
1
/*
2
* Copyright(c) 2019 Intel Corporation
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 https://www.aomedia.org/license/software-license. 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 https://www.aomedia.org/license/patent-license.
10
*/
11
12
#ifndef EbInterPrediction_h
13
#define EbInterPrediction_h
14
15
#include "block_structures.h"
16
#include "av1_structs.h"
17
#include "object.h"
18
#include "filter.h"
19
#include "convolve.h"
20
#include "cabac_context_model.h"
21
#include "common_utils.h"
22
23
#ifdef __cplusplus
24
extern "C" {
25
#endif
26
27
1.89k
#define REF_SCALE_SHIFT 14
28
1.42k
#define REF_NO_SCALE (1 << REF_SCALE_SHIFT)
29
1.42k
#define REF_INVALID_SCALE -1
30
31
0
#define MV_BORDER (16 << 3) // Allow 16 pels in 1/8th pel units
32
33
#define NELEMENTS(x) (int)(sizeof(x) / sizeof(x[0]))
34
35
0
#define INTRABC_DELAY_PIXELS 256 //  Delay of 256 pixels
36
0
#define INTRABC_DELAY_SB64 (INTRABC_DELAY_PIXELS / 64)
37
38
// HW does not support < 4x4 prediction. To limit the bandwidth requirement, if
39
// block-size of current plane is smaller than 8x8, always only blend with the
40
// left neighbor(s) (skip blending with the above side).
41
#define DISABLE_CHROMA_U8X8_OBMC 0 // 0: one-sided obmc; 1: disable
42
43
extern DECLARE_ALIGNED(256, const InterpKernel, sub_pel_filters_8[SUBPEL_SHIFTS]);
44
extern DECLARE_ALIGNED(256, const InterpKernel, sub_pel_filters_4[SUBPEL_SHIFTS]);
45
extern DECLARE_ALIGNED(256, const InterpKernel, sub_pel_filters_8sharp[SUBPEL_SHIFTS]);
46
extern DECLARE_ALIGNED(256, const InterpKernel, sub_pel_filters_8smooth[SUBPEL_SHIFTS]);
47
extern DECLARE_ALIGNED(256, const InterpKernel, bilinear_filters[SUBPEL_SHIFTS]);
48
extern DECLARE_ALIGNED(256, const InterpKernel, sub_pel_filters_4smooth[SUBPEL_SHIFTS]);
49
50
typedef struct SubpelParams {
51
    int32_t xs;
52
    int32_t ys;
53
    int32_t subpel_x;
54
    int32_t subpel_y;
55
} SubpelParams;
56
57
typedef struct PadBlock {
58
    int x0;
59
    int x1;
60
    int y0;
61
    int y1;
62
} PadBlock;
63
64
0
#define INTERINTRA_WEDGE_SIGN 0
65
#define MAX_INTERINTRA_SB_SQUARE 32 * 32
66
67
typedef uint8_t* WedgeMasksType[MAX_WEDGE_TYPES];
68
69
// Angles are with respect to horizontal anti-clockwise
70
typedef enum WedgeDirectionType {
71
    WEDGE_HORIZONTAL = 0,
72
    WEDGE_VERTICAL   = 1,
73
    WEDGE_OBLIQUE27  = 2,
74
    WEDGE_OBLIQUE63  = 3,
75
    WEDGE_OBLIQUE117 = 4,
76
    WEDGE_OBLIQUE153 = 5,
77
    WEDGE_DIRECTIONS
78
} WedgeDirectionType;
79
80
static const InterpFilterParams av1_interp_filter_params_list[SWITCHABLE_FILTERS + 1] = {
81
    {(const int16_t*)sub_pel_filters_8, SUBPEL_TAPS, SUBPEL_SHIFTS, EIGHTTAP_REGULAR},
82
    {(const int16_t*)sub_pel_filters_8smooth, SUBPEL_TAPS, SUBPEL_SHIFTS, EIGHTTAP_SMOOTH},
83
    {(const int16_t*)sub_pel_filters_8sharp, SUBPEL_TAPS, SUBPEL_SHIFTS, MULTITAP_SHARP},
84
    {(const int16_t*)bilinear_filters, SUBPEL_TAPS, SUBPEL_SHIFTS, BILINEAR}};
85
86
// 3-tuple: {direction, x_offset, y_offset}
87
typedef struct WedgeCodeType {
88
    WedgeDirectionType direction;
89
    int32_t            x_offset;
90
    int32_t            y_offset;
91
} WedgeCodeType;
92
93
typedef struct WedgeParamsType {
94
    int32_t              bits;
95
    const WedgeCodeType* codebook;
96
    uint8_t*             signflip;
97
    WedgeMasksType*      masks;
98
} WedgeParamsType;
99
100
void svt_inter_predictor_light_pd0(const uint8_t* src, int32_t src_stride, uint8_t* dst, int32_t dst_stride, int32_t w,
101
                                   int32_t h, SubpelParams* subpel_params, ConvolveParams* conv_params);
102
void svt_inter_predictor_light_pd1(uint8_t* src, uint8_t* src_2b, int32_t src_stride, uint8_t* dst, int32_t dst_stride,
103
                                   int32_t w, int32_t h, InterpFilters interp_filters, SubpelParams* subpel_params,
104
                                   ConvolveParams* conv_params, int32_t bd);
105
void svt_inter_predictor(const uint8_t* src, int32_t src_stride, uint8_t* dst, int32_t dst_stride,
106
                         const SubpelParams* subpel_params, const ScaleFactors* sf, int32_t w, int32_t h,
107
                         ConvolveParams* conv_params, InterpFilters interp_filters, int32_t is_intrabc);
108
109
void svt_highbd_inter_predictor(const uint16_t* src, int32_t src_stride, uint16_t* dst, int32_t dst_stride,
110
                                const SubpelParams* subpel_params, const ScaleFactors* sf, int32_t w, int32_t h,
111
                                ConvolveParams* conv_params, InterpFilters interp_filters, int32_t is_intrabc,
112
                                int32_t bd);
113
114
void svt_av1_dist_wtd_comp_weight_assign(SeqHeader* seq_header, int cur_frame_index, int bck_frame_index,
115
                                         int fwd_frame_index, int compound_idx, int order_idx, int* fwd_offset,
116
                                         int* bck_offset, int* use_dist_wtd_comp_avg, int is_compound);
117
118
void svt_aom_build_masked_compound_no_round(uint8_t* dst, int dst_stride, const CONV_BUF_TYPE* src0, int src0_stride,
119
                                            const CONV_BUF_TYPE* src1, int src1_stride,
120
                                            const InterInterCompoundData* const comp_data, uint8_t* seg_mask,
121
                                            BlockSize bsize, int h, int w, ConvolveParams* conv_params, uint8_t bd,
122
                                            bool is_16bit);
123
124
static const InterpFilterParams av1_interp_4tap[2] = {
125
    {(const int16_t*)sub_pel_filters_4, SUBPEL_TAPS, SUBPEL_SHIFTS, EIGHTTAP_REGULAR},
126
    {(const int16_t*)sub_pel_filters_4smooth, SUBPEL_TAPS, SUBPEL_SHIFTS, EIGHTTAP_SMOOTH}};
127
128
static INLINE InterpFilterParams av1_get_interp_filter_params_with_block_size(const InterpFilter interp_filter,
129
0
                                                                              const int32_t      w) {
130
0
    if (w <= 4 && (interp_filter == MULTITAP_SHARP || interp_filter == EIGHTTAP_REGULAR)) {
131
0
        return av1_interp_4tap[0];
132
0
    } else if (w <= 4 && interp_filter == EIGHTTAP_SMOOTH) {
133
0
        return av1_interp_4tap[1];
134
0
    }
135
136
0
    return av1_interp_filter_params_list[interp_filter];
137
0
}
Unexecuted instantiation: enc_handle.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: enc_settings.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: av1me.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: cdef_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: dlf_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: enc_cdef.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: enc_dec_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: enc_inter_prediction.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: enc_intra_prediction.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: enc_mode_config.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: entropy_coding.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: ec_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: full_loop.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: initial_rc_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: inter_prediction.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: intra_prediction.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: md_rate_estimation.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: mode_decision.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: md_config_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: md_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: motion_estimation.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: me_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: packetization_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: pic_analysis_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: pcs.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: pd_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: pic_manager_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: product_coding_loop.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rc_aq.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rc_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rc_rtc_cbr.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rc_vbr_cbr.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rd_cost.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: reference_object.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: resource_coordination_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rest_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: restoration_pick.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: src_ops_process.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: super_res.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: temporal_filtering.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: transforms.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: encode_txb_ref_c.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: adaptive_mv_pred.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: coding_loop.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: coding_unit.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: deblocking_filter.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: global_me_cost.c:av1_get_interp_filter_params_with_block_size
Unexecuted instantiation: rc_crf_cqp.c:av1_get_interp_filter_params_with_block_size
138
139
static INLINE void av1_get_convolve_filter_params(uint32_t interp_filters, InterpFilterParams* params_x,
140
0
                                                  InterpFilterParams* params_y, int32_t w, int32_t h) {
141
0
    InterpFilter filter_x = av1_extract_interp_filter(interp_filters, 1);
142
0
    InterpFilter filter_y = av1_extract_interp_filter(interp_filters, 0);
143
0
    *params_x             = av1_get_interp_filter_params_with_block_size(filter_x, w);
144
0
    *params_y             = av1_get_interp_filter_params_with_block_size(filter_y, h);
145
0
};
Unexecuted instantiation: enc_handle.c:av1_get_convolve_filter_params
Unexecuted instantiation: enc_settings.c:av1_get_convolve_filter_params
Unexecuted instantiation: av1me.c:av1_get_convolve_filter_params
Unexecuted instantiation: cdef_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: dlf_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: enc_cdef.c:av1_get_convolve_filter_params
Unexecuted instantiation: enc_dec_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: enc_inter_prediction.c:av1_get_convolve_filter_params
Unexecuted instantiation: enc_intra_prediction.c:av1_get_convolve_filter_params
Unexecuted instantiation: enc_mode_config.c:av1_get_convolve_filter_params
Unexecuted instantiation: entropy_coding.c:av1_get_convolve_filter_params
Unexecuted instantiation: ec_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: full_loop.c:av1_get_convolve_filter_params
Unexecuted instantiation: initial_rc_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: inter_prediction.c:av1_get_convolve_filter_params
Unexecuted instantiation: intra_prediction.c:av1_get_convolve_filter_params
Unexecuted instantiation: md_rate_estimation.c:av1_get_convolve_filter_params
Unexecuted instantiation: mode_decision.c:av1_get_convolve_filter_params
Unexecuted instantiation: md_config_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: md_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: motion_estimation.c:av1_get_convolve_filter_params
Unexecuted instantiation: me_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: packetization_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: palette.c:av1_get_convolve_filter_params
Unexecuted instantiation: pic_analysis_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: pcs.c:av1_get_convolve_filter_params
Unexecuted instantiation: pd_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: pic_manager_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: product_coding_loop.c:av1_get_convolve_filter_params
Unexecuted instantiation: rc_aq.c:av1_get_convolve_filter_params
Unexecuted instantiation: rc_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: rc_rtc_cbr.c:av1_get_convolve_filter_params
Unexecuted instantiation: rc_vbr_cbr.c:av1_get_convolve_filter_params
Unexecuted instantiation: rd_cost.c:av1_get_convolve_filter_params
Unexecuted instantiation: reference_object.c:av1_get_convolve_filter_params
Unexecuted instantiation: resize.c:av1_get_convolve_filter_params
Unexecuted instantiation: resource_coordination_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: rest_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: restoration_pick.c:av1_get_convolve_filter_params
Unexecuted instantiation: segmentation.c:av1_get_convolve_filter_params
Unexecuted instantiation: src_ops_process.c:av1_get_convolve_filter_params
Unexecuted instantiation: super_res.c:av1_get_convolve_filter_params
Unexecuted instantiation: temporal_filtering.c:av1_get_convolve_filter_params
Unexecuted instantiation: transforms.c:av1_get_convolve_filter_params
Unexecuted instantiation: encode_txb_ref_c.c:av1_get_convolve_filter_params
Unexecuted instantiation: variance.c:av1_get_convolve_filter_params
Unexecuted instantiation: adaptive_mv_pred.c:av1_get_convolve_filter_params
Unexecuted instantiation: coding_loop.c:av1_get_convolve_filter_params
Unexecuted instantiation: coding_unit.c:av1_get_convolve_filter_params
Unexecuted instantiation: deblocking_filter.c:av1_get_convolve_filter_params
Unexecuted instantiation: firstpass.c:av1_get_convolve_filter_params
Unexecuted instantiation: global_me_cost.c:av1_get_convolve_filter_params
Unexecuted instantiation: mcomp.c:av1_get_convolve_filter_params
Unexecuted instantiation: pass2_strategy.c:av1_get_convolve_filter_params
Unexecuted instantiation: rc_crf_cqp.c:av1_get_convolve_filter_params
146
147
/* Mapping of interintra to intra mode for use in the intra component */
148
static const PredictionMode interintra_to_intra_mode[INTERINTRA_MODES] = {DC_PRED, V_PRED, H_PRED, SMOOTH_PRED};
149
150
void svt_aom_combine_interintra(InterIntraMode mode, int8_t use_wedge_interintra, int wedge_index, int wedge_sign,
151
                                BlockSize bsize, BlockSize plane_bsize, uint8_t* comppred, int compstride,
152
                                const uint8_t* interpred, int interstride, const uint8_t* intrapred, int intrastride);
153
154
void svt_aom_combine_interintra_highbd(InterIntraMode mode, uint8_t use_wedge_interintra, uint8_t wedge_index,
155
                                       uint8_t wedge_sign, BlockSize bsize, BlockSize plane_bsize, uint8_t* comppred8,
156
                                       int compstride, const uint8_t* interpred8, int interstride,
157
                                       const uint8_t* intrapred8, int intrastride, int bd);
158
159
void svt_av1_setup_scale_factors_for_frame(ScaleFactors* sf, int other_w, int other_h, int this_w, int this_h);
160
161
474
static INLINE int av1_is_valid_scale(const struct ScaleFactors* sf) {
162
474
    return sf->x_scale_fp != REF_INVALID_SCALE && sf->y_scale_fp != REF_INVALID_SCALE;
163
474
}
Unexecuted instantiation: enc_handle.c:av1_is_valid_scale
Unexecuted instantiation: enc_settings.c:av1_is_valid_scale
Unexecuted instantiation: av1me.c:av1_is_valid_scale
Unexecuted instantiation: cdef_process.c:av1_is_valid_scale
Unexecuted instantiation: dlf_process.c:av1_is_valid_scale
Unexecuted instantiation: enc_cdef.c:av1_is_valid_scale
Unexecuted instantiation: enc_dec_process.c:av1_is_valid_scale
Unexecuted instantiation: enc_inter_prediction.c:av1_is_valid_scale
Unexecuted instantiation: enc_intra_prediction.c:av1_is_valid_scale
Unexecuted instantiation: enc_mode_config.c:av1_is_valid_scale
Unexecuted instantiation: entropy_coding.c:av1_is_valid_scale
Unexecuted instantiation: ec_process.c:av1_is_valid_scale
Unexecuted instantiation: full_loop.c:av1_is_valid_scale
Unexecuted instantiation: initial_rc_process.c:av1_is_valid_scale
inter_prediction.c:av1_is_valid_scale
Line
Count
Source
161
474
static INLINE int av1_is_valid_scale(const struct ScaleFactors* sf) {
162
474
    return sf->x_scale_fp != REF_INVALID_SCALE && sf->y_scale_fp != REF_INVALID_SCALE;
163
474
}
Unexecuted instantiation: intra_prediction.c:av1_is_valid_scale
Unexecuted instantiation: md_rate_estimation.c:av1_is_valid_scale
Unexecuted instantiation: mode_decision.c:av1_is_valid_scale
Unexecuted instantiation: md_config_process.c:av1_is_valid_scale
Unexecuted instantiation: md_process.c:av1_is_valid_scale
Unexecuted instantiation: motion_estimation.c:av1_is_valid_scale
Unexecuted instantiation: me_process.c:av1_is_valid_scale
Unexecuted instantiation: packetization_process.c:av1_is_valid_scale
Unexecuted instantiation: pic_analysis_process.c:av1_is_valid_scale
Unexecuted instantiation: pcs.c:av1_is_valid_scale
Unexecuted instantiation: pd_process.c:av1_is_valid_scale
Unexecuted instantiation: pic_manager_process.c:av1_is_valid_scale
Unexecuted instantiation: product_coding_loop.c:av1_is_valid_scale
Unexecuted instantiation: rc_aq.c:av1_is_valid_scale
Unexecuted instantiation: rc_process.c:av1_is_valid_scale
Unexecuted instantiation: rc_rtc_cbr.c:av1_is_valid_scale
Unexecuted instantiation: rc_vbr_cbr.c:av1_is_valid_scale
Unexecuted instantiation: rd_cost.c:av1_is_valid_scale
Unexecuted instantiation: reference_object.c:av1_is_valid_scale
Unexecuted instantiation: resource_coordination_process.c:av1_is_valid_scale
Unexecuted instantiation: rest_process.c:av1_is_valid_scale
Unexecuted instantiation: restoration_pick.c:av1_is_valid_scale
Unexecuted instantiation: src_ops_process.c:av1_is_valid_scale
Unexecuted instantiation: super_res.c:av1_is_valid_scale
Unexecuted instantiation: temporal_filtering.c:av1_is_valid_scale
Unexecuted instantiation: transforms.c:av1_is_valid_scale
Unexecuted instantiation: encode_txb_ref_c.c:av1_is_valid_scale
Unexecuted instantiation: adaptive_mv_pred.c:av1_is_valid_scale
Unexecuted instantiation: coding_loop.c:av1_is_valid_scale
Unexecuted instantiation: coding_unit.c:av1_is_valid_scale
Unexecuted instantiation: deblocking_filter.c:av1_is_valid_scale
Unexecuted instantiation: global_me_cost.c:av1_is_valid_scale
Unexecuted instantiation: rc_crf_cqp.c:av1_is_valid_scale
164
165
474
static INLINE int av1_is_scaled(const struct ScaleFactors* sf) {
166
474
    return av1_is_valid_scale(sf) && (sf->x_scale_fp != REF_NO_SCALE || sf->y_scale_fp != REF_NO_SCALE);
167
474
}
Unexecuted instantiation: enc_handle.c:av1_is_scaled
Unexecuted instantiation: enc_settings.c:av1_is_scaled
Unexecuted instantiation: av1me.c:av1_is_scaled
Unexecuted instantiation: cdef_process.c:av1_is_scaled
Unexecuted instantiation: dlf_process.c:av1_is_scaled
Unexecuted instantiation: enc_cdef.c:av1_is_scaled
Unexecuted instantiation: enc_dec_process.c:av1_is_scaled
Unexecuted instantiation: enc_inter_prediction.c:av1_is_scaled
Unexecuted instantiation: enc_intra_prediction.c:av1_is_scaled
Unexecuted instantiation: enc_mode_config.c:av1_is_scaled
Unexecuted instantiation: entropy_coding.c:av1_is_scaled
Unexecuted instantiation: ec_process.c:av1_is_scaled
Unexecuted instantiation: full_loop.c:av1_is_scaled
Unexecuted instantiation: initial_rc_process.c:av1_is_scaled
inter_prediction.c:av1_is_scaled
Line
Count
Source
165
474
static INLINE int av1_is_scaled(const struct ScaleFactors* sf) {
166
474
    return av1_is_valid_scale(sf) && (sf->x_scale_fp != REF_NO_SCALE || sf->y_scale_fp != REF_NO_SCALE);
167
474
}
Unexecuted instantiation: intra_prediction.c:av1_is_scaled
Unexecuted instantiation: md_rate_estimation.c:av1_is_scaled
Unexecuted instantiation: mode_decision.c:av1_is_scaled
Unexecuted instantiation: md_config_process.c:av1_is_scaled
Unexecuted instantiation: md_process.c:av1_is_scaled
Unexecuted instantiation: motion_estimation.c:av1_is_scaled
Unexecuted instantiation: me_process.c:av1_is_scaled
Unexecuted instantiation: packetization_process.c:av1_is_scaled
Unexecuted instantiation: pic_analysis_process.c:av1_is_scaled
Unexecuted instantiation: pcs.c:av1_is_scaled
Unexecuted instantiation: pd_process.c:av1_is_scaled
Unexecuted instantiation: pic_manager_process.c:av1_is_scaled
Unexecuted instantiation: product_coding_loop.c:av1_is_scaled
Unexecuted instantiation: rc_aq.c:av1_is_scaled
Unexecuted instantiation: rc_process.c:av1_is_scaled
Unexecuted instantiation: rc_rtc_cbr.c:av1_is_scaled
Unexecuted instantiation: rc_vbr_cbr.c:av1_is_scaled
Unexecuted instantiation: rd_cost.c:av1_is_scaled
Unexecuted instantiation: reference_object.c:av1_is_scaled
Unexecuted instantiation: resource_coordination_process.c:av1_is_scaled
Unexecuted instantiation: rest_process.c:av1_is_scaled
Unexecuted instantiation: restoration_pick.c:av1_is_scaled
Unexecuted instantiation: src_ops_process.c:av1_is_scaled
Unexecuted instantiation: super_res.c:av1_is_scaled
Unexecuted instantiation: temporal_filtering.c:av1_is_scaled
Unexecuted instantiation: transforms.c:av1_is_scaled
Unexecuted instantiation: encode_txb_ref_c.c:av1_is_scaled
Unexecuted instantiation: adaptive_mv_pred.c:av1_is_scaled
Unexecuted instantiation: coding_loop.c:av1_is_scaled
Unexecuted instantiation: coding_unit.c:av1_is_scaled
Unexecuted instantiation: deblocking_filter.c:av1_is_scaled
Unexecuted instantiation: global_me_cost.c:av1_is_scaled
Unexecuted instantiation: rc_crf_cqp.c:av1_is_scaled
168
169
474
static INLINE int valid_ref_frame_size(int ref_width, int ref_height, int this_width, int this_height) {
170
474
    return 2 * this_width >= ref_width && 2 * this_height >= ref_height && this_width <= 16 * ref_width &&
171
474
        this_height <= 16 * ref_height;
172
474
}
Unexecuted instantiation: enc_handle.c:valid_ref_frame_size
Unexecuted instantiation: enc_settings.c:valid_ref_frame_size
Unexecuted instantiation: av1me.c:valid_ref_frame_size
Unexecuted instantiation: cdef_process.c:valid_ref_frame_size
Unexecuted instantiation: dlf_process.c:valid_ref_frame_size
Unexecuted instantiation: enc_cdef.c:valid_ref_frame_size
Unexecuted instantiation: enc_dec_process.c:valid_ref_frame_size
Unexecuted instantiation: enc_inter_prediction.c:valid_ref_frame_size
Unexecuted instantiation: enc_intra_prediction.c:valid_ref_frame_size
Unexecuted instantiation: enc_mode_config.c:valid_ref_frame_size
Unexecuted instantiation: entropy_coding.c:valid_ref_frame_size
Unexecuted instantiation: ec_process.c:valid_ref_frame_size
Unexecuted instantiation: full_loop.c:valid_ref_frame_size
Unexecuted instantiation: initial_rc_process.c:valid_ref_frame_size
inter_prediction.c:valid_ref_frame_size
Line
Count
Source
169
474
static INLINE int valid_ref_frame_size(int ref_width, int ref_height, int this_width, int this_height) {
170
474
    return 2 * this_width >= ref_width && 2 * this_height >= ref_height && this_width <= 16 * ref_width &&
171
474
        this_height <= 16 * ref_height;
172
474
}
Unexecuted instantiation: intra_prediction.c:valid_ref_frame_size
Unexecuted instantiation: md_rate_estimation.c:valid_ref_frame_size
Unexecuted instantiation: mode_decision.c:valid_ref_frame_size
Unexecuted instantiation: md_config_process.c:valid_ref_frame_size
Unexecuted instantiation: md_process.c:valid_ref_frame_size
Unexecuted instantiation: motion_estimation.c:valid_ref_frame_size
Unexecuted instantiation: me_process.c:valid_ref_frame_size
Unexecuted instantiation: packetization_process.c:valid_ref_frame_size
Unexecuted instantiation: pic_analysis_process.c:valid_ref_frame_size
Unexecuted instantiation: pcs.c:valid_ref_frame_size
Unexecuted instantiation: pd_process.c:valid_ref_frame_size
Unexecuted instantiation: pic_manager_process.c:valid_ref_frame_size
Unexecuted instantiation: product_coding_loop.c:valid_ref_frame_size
Unexecuted instantiation: rc_aq.c:valid_ref_frame_size
Unexecuted instantiation: rc_process.c:valid_ref_frame_size
Unexecuted instantiation: rc_rtc_cbr.c:valid_ref_frame_size
Unexecuted instantiation: rc_vbr_cbr.c:valid_ref_frame_size
Unexecuted instantiation: rd_cost.c:valid_ref_frame_size
Unexecuted instantiation: reference_object.c:valid_ref_frame_size
Unexecuted instantiation: resource_coordination_process.c:valid_ref_frame_size
Unexecuted instantiation: rest_process.c:valid_ref_frame_size
Unexecuted instantiation: restoration_pick.c:valid_ref_frame_size
Unexecuted instantiation: src_ops_process.c:valid_ref_frame_size
Unexecuted instantiation: super_res.c:valid_ref_frame_size
Unexecuted instantiation: temporal_filtering.c:valid_ref_frame_size
Unexecuted instantiation: transforms.c:valid_ref_frame_size
Unexecuted instantiation: encode_txb_ref_c.c:valid_ref_frame_size
Unexecuted instantiation: adaptive_mv_pred.c:valid_ref_frame_size
Unexecuted instantiation: coding_loop.c:valid_ref_frame_size
Unexecuted instantiation: coding_unit.c:valid_ref_frame_size
Unexecuted instantiation: deblocking_filter.c:valid_ref_frame_size
Unexecuted instantiation: global_me_cost.c:valid_ref_frame_size
Unexecuted instantiation: rc_crf_cqp.c:valid_ref_frame_size
173
174
void svt_aom_pack_block(uint8_t* in8_bit_buffer, uint32_t in8_stride, uint8_t* inn_bit_buffer, uint32_t inn_stride,
175
                        uint16_t* out16_bit_buffer, uint32_t out_stride, uint32_t width, uint32_t height);
176
177
void highbd_convolve_2d_for_intrabc(const uint16_t* src, int src_stride, uint16_t* dst, int dst_stride, int w, int h,
178
                                    int subpel_x_q4, int subpel_y_q4, ConvolveParams* conv_params, int bd);
179
180
void convolve_2d_for_intrabc(const uint8_t* src, int src_stride, uint8_t* dst, int dst_stride, int w, int h,
181
                             int subpel_x_q4, int subpel_y_q4, ConvolveParams* conv_params);
182
183
extern aom_highbd_convolve_fn_t convolve_hbd[/*sub_x*/ 2][/*sub_y*/ 2][/*bi*/ 2];
184
185
extern AomConvolveFn svt_aom_convolve[/*sub_x*/ 2][/*sub_y*/ 2][/*bi*/ 2];
186
187
int svt_aom_is_interintra_wedge_used(BlockSize bsize);
188
189
int32_t svt_aom_get_wedge_bits_lookup(BlockSize bsize);
190
191
const uint8_t* svt_aom_get_contiguous_soft_mask(int wedge_index, int wedge_sign, BlockSize bsize);
192
193
int svt_aom_get_wedge_params_bits(BlockSize bsize);
194
195
int svt_aom_is_masked_compound_type(COMPOUND_TYPE type);
196
197
// Although we assign 32 bit integers, all the values are strictly under 14
198
// bits.
199
static int div_mult[32] = {0,    16384, 8192, 5461, 4096, 3276, 2730, 2340, 2048, 1820, 1638,
200
                           1489, 1365,  1260, 1170, 1092, 1024, 963,  910,  862,  819,  780,
201
                           744,  712,   682,  655,  630,  606,  585,  564,  546,  528};
202
203
0
static INLINE void integer_mv_precision(Mv* mv) {
204
0
    int mod = (mv->y % 8);
205
0
    if (mod != 0) {
206
0
        mv->y -= mod;
207
0
        if (abs(mod) > 4) {
208
0
            if (mod > 0) {
209
0
                mv->y += 8;
210
0
            } else {
211
0
                mv->y -= 8;
212
0
            }
213
0
        }
214
0
    }
215
216
0
    mod = (mv->x % 8);
217
0
    if (mod != 0) {
218
0
        mv->x -= mod;
219
0
        if (abs(mod) > 4) {
220
0
            if (mod > 0) {
221
0
                mv->x += 8;
222
0
            } else {
223
0
                mv->x -= 8;
224
0
            }
225
0
        }
226
0
    }
227
0
}
Unexecuted instantiation: enc_handle.c:integer_mv_precision
Unexecuted instantiation: enc_settings.c:integer_mv_precision
Unexecuted instantiation: av1me.c:integer_mv_precision
Unexecuted instantiation: cdef_process.c:integer_mv_precision
Unexecuted instantiation: dlf_process.c:integer_mv_precision
Unexecuted instantiation: enc_cdef.c:integer_mv_precision
Unexecuted instantiation: enc_dec_process.c:integer_mv_precision
Unexecuted instantiation: enc_inter_prediction.c:integer_mv_precision
Unexecuted instantiation: enc_intra_prediction.c:integer_mv_precision
Unexecuted instantiation: enc_mode_config.c:integer_mv_precision
Unexecuted instantiation: entropy_coding.c:integer_mv_precision
Unexecuted instantiation: ec_process.c:integer_mv_precision
Unexecuted instantiation: full_loop.c:integer_mv_precision
Unexecuted instantiation: initial_rc_process.c:integer_mv_precision
Unexecuted instantiation: inter_prediction.c:integer_mv_precision
Unexecuted instantiation: intra_prediction.c:integer_mv_precision
Unexecuted instantiation: md_rate_estimation.c:integer_mv_precision
Unexecuted instantiation: mode_decision.c:integer_mv_precision
Unexecuted instantiation: md_config_process.c:integer_mv_precision
Unexecuted instantiation: md_process.c:integer_mv_precision
Unexecuted instantiation: motion_estimation.c:integer_mv_precision
Unexecuted instantiation: me_process.c:integer_mv_precision
Unexecuted instantiation: packetization_process.c:integer_mv_precision
Unexecuted instantiation: pic_analysis_process.c:integer_mv_precision
Unexecuted instantiation: pcs.c:integer_mv_precision
Unexecuted instantiation: pd_process.c:integer_mv_precision
Unexecuted instantiation: pic_manager_process.c:integer_mv_precision
Unexecuted instantiation: product_coding_loop.c:integer_mv_precision
Unexecuted instantiation: rc_aq.c:integer_mv_precision
Unexecuted instantiation: rc_process.c:integer_mv_precision
Unexecuted instantiation: rc_rtc_cbr.c:integer_mv_precision
Unexecuted instantiation: rc_vbr_cbr.c:integer_mv_precision
Unexecuted instantiation: rd_cost.c:integer_mv_precision
Unexecuted instantiation: reference_object.c:integer_mv_precision
Unexecuted instantiation: resource_coordination_process.c:integer_mv_precision
Unexecuted instantiation: rest_process.c:integer_mv_precision
Unexecuted instantiation: restoration_pick.c:integer_mv_precision
Unexecuted instantiation: src_ops_process.c:integer_mv_precision
Unexecuted instantiation: super_res.c:integer_mv_precision
Unexecuted instantiation: temporal_filtering.c:integer_mv_precision
Unexecuted instantiation: transforms.c:integer_mv_precision
Unexecuted instantiation: encode_txb_ref_c.c:integer_mv_precision
Unexecuted instantiation: adaptive_mv_pred.c:integer_mv_precision
Unexecuted instantiation: coding_loop.c:integer_mv_precision
Unexecuted instantiation: coding_unit.c:integer_mv_precision
Unexecuted instantiation: deblocking_filter.c:integer_mv_precision
Unexecuted instantiation: global_me_cost.c:integer_mv_precision
Unexecuted instantiation: rc_crf_cqp.c:integer_mv_precision
228
229
0
static INLINE void lower_mv_precision(Mv* mv, int allow_hp, int is_integer) {
230
0
    if (is_integer) {
231
0
        integer_mv_precision(mv);
232
0
    } else {
233
0
        if (!allow_hp) {
234
0
            if (mv->y & 1) {
235
0
                mv->y += (mv->y > 0 ? -1 : 1);
236
0
            }
237
0
            if (mv->x & 1) {
238
0
                mv->x += (mv->x > 0 ? -1 : 1);
239
0
            }
240
0
        }
241
0
    }
242
0
}
Unexecuted instantiation: enc_handle.c:lower_mv_precision
Unexecuted instantiation: enc_settings.c:lower_mv_precision
Unexecuted instantiation: av1me.c:lower_mv_precision
Unexecuted instantiation: cdef_process.c:lower_mv_precision
Unexecuted instantiation: dlf_process.c:lower_mv_precision
Unexecuted instantiation: enc_cdef.c:lower_mv_precision
Unexecuted instantiation: enc_dec_process.c:lower_mv_precision
Unexecuted instantiation: enc_inter_prediction.c:lower_mv_precision
Unexecuted instantiation: enc_intra_prediction.c:lower_mv_precision
Unexecuted instantiation: enc_mode_config.c:lower_mv_precision
Unexecuted instantiation: entropy_coding.c:lower_mv_precision
Unexecuted instantiation: ec_process.c:lower_mv_precision
Unexecuted instantiation: full_loop.c:lower_mv_precision
Unexecuted instantiation: initial_rc_process.c:lower_mv_precision
Unexecuted instantiation: inter_prediction.c:lower_mv_precision
Unexecuted instantiation: intra_prediction.c:lower_mv_precision
Unexecuted instantiation: md_rate_estimation.c:lower_mv_precision
Unexecuted instantiation: mode_decision.c:lower_mv_precision
Unexecuted instantiation: md_config_process.c:lower_mv_precision
Unexecuted instantiation: md_process.c:lower_mv_precision
Unexecuted instantiation: motion_estimation.c:lower_mv_precision
Unexecuted instantiation: me_process.c:lower_mv_precision
Unexecuted instantiation: packetization_process.c:lower_mv_precision
Unexecuted instantiation: pic_analysis_process.c:lower_mv_precision
Unexecuted instantiation: pcs.c:lower_mv_precision
Unexecuted instantiation: pd_process.c:lower_mv_precision
Unexecuted instantiation: pic_manager_process.c:lower_mv_precision
Unexecuted instantiation: product_coding_loop.c:lower_mv_precision
Unexecuted instantiation: rc_aq.c:lower_mv_precision
Unexecuted instantiation: rc_process.c:lower_mv_precision
Unexecuted instantiation: rc_rtc_cbr.c:lower_mv_precision
Unexecuted instantiation: rc_vbr_cbr.c:lower_mv_precision
Unexecuted instantiation: rd_cost.c:lower_mv_precision
Unexecuted instantiation: reference_object.c:lower_mv_precision
Unexecuted instantiation: resize.c:lower_mv_precision
Unexecuted instantiation: resource_coordination_process.c:lower_mv_precision
Unexecuted instantiation: rest_process.c:lower_mv_precision
Unexecuted instantiation: restoration_pick.c:lower_mv_precision
Unexecuted instantiation: src_ops_process.c:lower_mv_precision
Unexecuted instantiation: super_res.c:lower_mv_precision
Unexecuted instantiation: temporal_filtering.c:lower_mv_precision
Unexecuted instantiation: transforms.c:lower_mv_precision
Unexecuted instantiation: encode_txb_ref_c.c:lower_mv_precision
Unexecuted instantiation: variance.c:lower_mv_precision
Unexecuted instantiation: adaptive_mv_pred.c:lower_mv_precision
Unexecuted instantiation: coding_loop.c:lower_mv_precision
Unexecuted instantiation: coding_unit.c:lower_mv_precision
Unexecuted instantiation: deblocking_filter.c:lower_mv_precision
Unexecuted instantiation: global_me_cost.c:lower_mv_precision
Unexecuted instantiation: rc_crf_cqp.c:lower_mv_precision
243
244
0
static INLINE void get_mv_projection(Mv* output, Mv ref, int num, int den) {
245
0
    den                 = AOMMIN(den, MAX_FRAME_DISTANCE);
246
0
    num                 = num > 0 ? AOMMIN(num, MAX_FRAME_DISTANCE) : AOMMAX(num, -MAX_FRAME_DISTANCE);
247
0
    const int mv_row    = ROUND_POWER_OF_TWO_SIGNED(ref.y * num * div_mult[den], 14);
248
0
    const int mv_col    = ROUND_POWER_OF_TWO_SIGNED(ref.x * num * div_mult[den], 14);
249
0
    const int clamp_max = MV_UPP - 1;
250
0
    const int clamp_min = MV_LOW + 1;
251
0
    output->y           = (int16_t)clamp(mv_row, clamp_min, clamp_max);
252
0
    output->x           = (int16_t)clamp(mv_col, clamp_min, clamp_max);
253
0
}
Unexecuted instantiation: enc_handle.c:get_mv_projection
Unexecuted instantiation: enc_settings.c:get_mv_projection
Unexecuted instantiation: av1me.c:get_mv_projection
Unexecuted instantiation: cdef_process.c:get_mv_projection
Unexecuted instantiation: dlf_process.c:get_mv_projection
Unexecuted instantiation: enc_cdef.c:get_mv_projection
Unexecuted instantiation: enc_dec_process.c:get_mv_projection
Unexecuted instantiation: enc_inter_prediction.c:get_mv_projection
Unexecuted instantiation: enc_intra_prediction.c:get_mv_projection
Unexecuted instantiation: enc_mode_config.c:get_mv_projection
Unexecuted instantiation: entropy_coding.c:get_mv_projection
Unexecuted instantiation: ec_process.c:get_mv_projection
Unexecuted instantiation: full_loop.c:get_mv_projection
Unexecuted instantiation: initial_rc_process.c:get_mv_projection
Unexecuted instantiation: inter_prediction.c:get_mv_projection
Unexecuted instantiation: intra_prediction.c:get_mv_projection
Unexecuted instantiation: md_rate_estimation.c:get_mv_projection
Unexecuted instantiation: mode_decision.c:get_mv_projection
Unexecuted instantiation: md_config_process.c:get_mv_projection
Unexecuted instantiation: md_process.c:get_mv_projection
Unexecuted instantiation: motion_estimation.c:get_mv_projection
Unexecuted instantiation: me_process.c:get_mv_projection
Unexecuted instantiation: packetization_process.c:get_mv_projection
Unexecuted instantiation: palette.c:get_mv_projection
Unexecuted instantiation: pic_analysis_process.c:get_mv_projection
Unexecuted instantiation: pcs.c:get_mv_projection
Unexecuted instantiation: pd_process.c:get_mv_projection
Unexecuted instantiation: pic_manager_process.c:get_mv_projection
Unexecuted instantiation: product_coding_loop.c:get_mv_projection
Unexecuted instantiation: rc_aq.c:get_mv_projection
Unexecuted instantiation: rc_process.c:get_mv_projection
Unexecuted instantiation: rc_rtc_cbr.c:get_mv_projection
Unexecuted instantiation: rc_vbr_cbr.c:get_mv_projection
Unexecuted instantiation: rd_cost.c:get_mv_projection
Unexecuted instantiation: reference_object.c:get_mv_projection
Unexecuted instantiation: resize.c:get_mv_projection
Unexecuted instantiation: resource_coordination_process.c:get_mv_projection
Unexecuted instantiation: rest_process.c:get_mv_projection
Unexecuted instantiation: restoration_pick.c:get_mv_projection
Unexecuted instantiation: segmentation.c:get_mv_projection
Unexecuted instantiation: src_ops_process.c:get_mv_projection
Unexecuted instantiation: super_res.c:get_mv_projection
Unexecuted instantiation: temporal_filtering.c:get_mv_projection
Unexecuted instantiation: transforms.c:get_mv_projection
Unexecuted instantiation: encode_txb_ref_c.c:get_mv_projection
Unexecuted instantiation: variance.c:get_mv_projection
Unexecuted instantiation: adaptive_mv_pred.c:get_mv_projection
Unexecuted instantiation: coding_loop.c:get_mv_projection
Unexecuted instantiation: coding_unit.c:get_mv_projection
Unexecuted instantiation: deblocking_filter.c:get_mv_projection
Unexecuted instantiation: firstpass.c:get_mv_projection
Unexecuted instantiation: global_me_cost.c:get_mv_projection
Unexecuted instantiation: mcomp.c:get_mv_projection
Unexecuted instantiation: pass2_strategy.c:get_mv_projection
Unexecuted instantiation: rc_crf_cqp.c:get_mv_projection
254
255
0
static INLINE int check_sb_border(const int mi_row, const int mi_col, const int row_offset, const int col_offset) {
256
0
    const int sb_mi_size = mi_size_wide[BLOCK_64X64];
257
0
    const int row        = mi_row & (sb_mi_size - 1);
258
0
    const int col        = mi_col & (sb_mi_size - 1);
259
260
0
    if (row + row_offset < 0 || row + row_offset >= sb_mi_size || col + col_offset < 0 ||
261
0
        col + col_offset >= sb_mi_size) {
262
0
        return 0;
263
0
    }
264
265
0
    return 1;
266
0
}
Unexecuted instantiation: enc_handle.c:check_sb_border
Unexecuted instantiation: enc_settings.c:check_sb_border
Unexecuted instantiation: av1me.c:check_sb_border
Unexecuted instantiation: cdef_process.c:check_sb_border
Unexecuted instantiation: dlf_process.c:check_sb_border
Unexecuted instantiation: enc_cdef.c:check_sb_border
Unexecuted instantiation: enc_dec_process.c:check_sb_border
Unexecuted instantiation: enc_inter_prediction.c:check_sb_border
Unexecuted instantiation: enc_intra_prediction.c:check_sb_border
Unexecuted instantiation: enc_mode_config.c:check_sb_border
Unexecuted instantiation: entropy_coding.c:check_sb_border
Unexecuted instantiation: ec_process.c:check_sb_border
Unexecuted instantiation: full_loop.c:check_sb_border
Unexecuted instantiation: initial_rc_process.c:check_sb_border
Unexecuted instantiation: inter_prediction.c:check_sb_border
Unexecuted instantiation: intra_prediction.c:check_sb_border
Unexecuted instantiation: md_rate_estimation.c:check_sb_border
Unexecuted instantiation: mode_decision.c:check_sb_border
Unexecuted instantiation: md_config_process.c:check_sb_border
Unexecuted instantiation: md_process.c:check_sb_border
Unexecuted instantiation: motion_estimation.c:check_sb_border
Unexecuted instantiation: me_process.c:check_sb_border
Unexecuted instantiation: packetization_process.c:check_sb_border
Unexecuted instantiation: palette.c:check_sb_border
Unexecuted instantiation: pic_analysis_process.c:check_sb_border
Unexecuted instantiation: pcs.c:check_sb_border
Unexecuted instantiation: pd_process.c:check_sb_border
Unexecuted instantiation: pic_manager_process.c:check_sb_border
Unexecuted instantiation: product_coding_loop.c:check_sb_border
Unexecuted instantiation: rc_aq.c:check_sb_border
Unexecuted instantiation: rc_process.c:check_sb_border
Unexecuted instantiation: rc_rtc_cbr.c:check_sb_border
Unexecuted instantiation: rc_vbr_cbr.c:check_sb_border
Unexecuted instantiation: rd_cost.c:check_sb_border
Unexecuted instantiation: reference_object.c:check_sb_border
Unexecuted instantiation: resize.c:check_sb_border
Unexecuted instantiation: resource_coordination_process.c:check_sb_border
Unexecuted instantiation: rest_process.c:check_sb_border
Unexecuted instantiation: restoration_pick.c:check_sb_border
Unexecuted instantiation: segmentation.c:check_sb_border
Unexecuted instantiation: src_ops_process.c:check_sb_border
Unexecuted instantiation: super_res.c:check_sb_border
Unexecuted instantiation: temporal_filtering.c:check_sb_border
Unexecuted instantiation: transforms.c:check_sb_border
Unexecuted instantiation: encode_txb_ref_c.c:check_sb_border
Unexecuted instantiation: variance.c:check_sb_border
Unexecuted instantiation: adaptive_mv_pred.c:check_sb_border
Unexecuted instantiation: coding_loop.c:check_sb_border
Unexecuted instantiation: coding_unit.c:check_sb_border
Unexecuted instantiation: deblocking_filter.c:check_sb_border
Unexecuted instantiation: firstpass.c:check_sb_border
Unexecuted instantiation: global_me_cost.c:check_sb_border
Unexecuted instantiation: mcomp.c:check_sb_border
Unexecuted instantiation: pass2_strategy.c:check_sb_border
Unexecuted instantiation: rc_crf_cqp.c:check_sb_border
267
268
// AV1 spec 7.10.3
269
// overlappable neighbours not relevant for intra frames (i.e. where intra_bc is allowed)
270
// because no warp/obmc in intra frames.
271
0
static INLINE int is_neighbor_overlappable(const MbModeInfo* mbmi) {
272
0
    return mbmi->block_mi.ref_frame[0] > INTRA_FRAME;
273
0
}
Unexecuted instantiation: enc_handle.c:is_neighbor_overlappable
Unexecuted instantiation: enc_settings.c:is_neighbor_overlappable
Unexecuted instantiation: av1me.c:is_neighbor_overlappable
Unexecuted instantiation: cdef_process.c:is_neighbor_overlappable
Unexecuted instantiation: dlf_process.c:is_neighbor_overlappable
Unexecuted instantiation: enc_cdef.c:is_neighbor_overlappable
Unexecuted instantiation: enc_dec_process.c:is_neighbor_overlappable
Unexecuted instantiation: enc_inter_prediction.c:is_neighbor_overlappable
Unexecuted instantiation: enc_intra_prediction.c:is_neighbor_overlappable
Unexecuted instantiation: enc_mode_config.c:is_neighbor_overlappable
Unexecuted instantiation: entropy_coding.c:is_neighbor_overlappable
Unexecuted instantiation: ec_process.c:is_neighbor_overlappable
Unexecuted instantiation: full_loop.c:is_neighbor_overlappable
Unexecuted instantiation: initial_rc_process.c:is_neighbor_overlappable
Unexecuted instantiation: inter_prediction.c:is_neighbor_overlappable
Unexecuted instantiation: intra_prediction.c:is_neighbor_overlappable
Unexecuted instantiation: md_rate_estimation.c:is_neighbor_overlappable
Unexecuted instantiation: mode_decision.c:is_neighbor_overlappable
Unexecuted instantiation: md_config_process.c:is_neighbor_overlappable
Unexecuted instantiation: md_process.c:is_neighbor_overlappable
Unexecuted instantiation: motion_estimation.c:is_neighbor_overlappable
Unexecuted instantiation: me_process.c:is_neighbor_overlappable
Unexecuted instantiation: packetization_process.c:is_neighbor_overlappable
Unexecuted instantiation: pic_analysis_process.c:is_neighbor_overlappable
Unexecuted instantiation: pcs.c:is_neighbor_overlappable
Unexecuted instantiation: pd_process.c:is_neighbor_overlappable
Unexecuted instantiation: pic_manager_process.c:is_neighbor_overlappable
Unexecuted instantiation: product_coding_loop.c:is_neighbor_overlappable
Unexecuted instantiation: rc_aq.c:is_neighbor_overlappable
Unexecuted instantiation: rc_process.c:is_neighbor_overlappable
Unexecuted instantiation: rc_rtc_cbr.c:is_neighbor_overlappable
Unexecuted instantiation: rc_vbr_cbr.c:is_neighbor_overlappable
Unexecuted instantiation: rd_cost.c:is_neighbor_overlappable
Unexecuted instantiation: reference_object.c:is_neighbor_overlappable
Unexecuted instantiation: resource_coordination_process.c:is_neighbor_overlappable
Unexecuted instantiation: rest_process.c:is_neighbor_overlappable
Unexecuted instantiation: restoration_pick.c:is_neighbor_overlappable
Unexecuted instantiation: src_ops_process.c:is_neighbor_overlappable
Unexecuted instantiation: super_res.c:is_neighbor_overlappable
Unexecuted instantiation: temporal_filtering.c:is_neighbor_overlappable
Unexecuted instantiation: transforms.c:is_neighbor_overlappable
Unexecuted instantiation: encode_txb_ref_c.c:is_neighbor_overlappable
Unexecuted instantiation: adaptive_mv_pred.c:is_neighbor_overlappable
Unexecuted instantiation: coding_loop.c:is_neighbor_overlappable
Unexecuted instantiation: coding_unit.c:is_neighbor_overlappable
Unexecuted instantiation: deblocking_filter.c:is_neighbor_overlappable
Unexecuted instantiation: global_me_cost.c:is_neighbor_overlappable
Unexecuted instantiation: rc_crf_cqp.c:is_neighbor_overlappable
274
275
0
static INLINE int32_t is_mv_valid(const Mv* mv) {
276
0
    return mv->y > MV_LOW && mv->y < MV_UPP && mv->x > MV_LOW && mv->x < MV_UPP;
277
0
}
Unexecuted instantiation: enc_handle.c:is_mv_valid
Unexecuted instantiation: enc_settings.c:is_mv_valid
Unexecuted instantiation: av1me.c:is_mv_valid
Unexecuted instantiation: cdef_process.c:is_mv_valid
Unexecuted instantiation: dlf_process.c:is_mv_valid
Unexecuted instantiation: enc_cdef.c:is_mv_valid
Unexecuted instantiation: enc_dec_process.c:is_mv_valid
Unexecuted instantiation: enc_inter_prediction.c:is_mv_valid
Unexecuted instantiation: enc_intra_prediction.c:is_mv_valid
Unexecuted instantiation: enc_mode_config.c:is_mv_valid
Unexecuted instantiation: entropy_coding.c:is_mv_valid
Unexecuted instantiation: ec_process.c:is_mv_valid
Unexecuted instantiation: full_loop.c:is_mv_valid
Unexecuted instantiation: initial_rc_process.c:is_mv_valid
Unexecuted instantiation: inter_prediction.c:is_mv_valid
Unexecuted instantiation: intra_prediction.c:is_mv_valid
Unexecuted instantiation: md_rate_estimation.c:is_mv_valid
Unexecuted instantiation: mode_decision.c:is_mv_valid
Unexecuted instantiation: md_config_process.c:is_mv_valid
Unexecuted instantiation: md_process.c:is_mv_valid
Unexecuted instantiation: motion_estimation.c:is_mv_valid
Unexecuted instantiation: me_process.c:is_mv_valid
Unexecuted instantiation: packetization_process.c:is_mv_valid
Unexecuted instantiation: palette.c:is_mv_valid
Unexecuted instantiation: pic_analysis_process.c:is_mv_valid
Unexecuted instantiation: pcs.c:is_mv_valid
Unexecuted instantiation: pd_process.c:is_mv_valid
Unexecuted instantiation: pic_manager_process.c:is_mv_valid
Unexecuted instantiation: product_coding_loop.c:is_mv_valid
Unexecuted instantiation: rc_aq.c:is_mv_valid
Unexecuted instantiation: rc_process.c:is_mv_valid
Unexecuted instantiation: rc_rtc_cbr.c:is_mv_valid
Unexecuted instantiation: rc_vbr_cbr.c:is_mv_valid
Unexecuted instantiation: rd_cost.c:is_mv_valid
Unexecuted instantiation: reference_object.c:is_mv_valid
Unexecuted instantiation: resize.c:is_mv_valid
Unexecuted instantiation: resource_coordination_process.c:is_mv_valid
Unexecuted instantiation: rest_process.c:is_mv_valid
Unexecuted instantiation: restoration_pick.c:is_mv_valid
Unexecuted instantiation: segmentation.c:is_mv_valid
Unexecuted instantiation: src_ops_process.c:is_mv_valid
Unexecuted instantiation: super_res.c:is_mv_valid
Unexecuted instantiation: temporal_filtering.c:is_mv_valid
Unexecuted instantiation: transforms.c:is_mv_valid
Unexecuted instantiation: encode_txb_ref_c.c:is_mv_valid
Unexecuted instantiation: variance.c:is_mv_valid
Unexecuted instantiation: adaptive_mv_pred.c:is_mv_valid
Unexecuted instantiation: coding_loop.c:is_mv_valid
Unexecuted instantiation: coding_unit.c:is_mv_valid
Unexecuted instantiation: deblocking_filter.c:is_mv_valid
Unexecuted instantiation: firstpass.c:is_mv_valid
Unexecuted instantiation: global_me_cost.c:is_mv_valid
Unexecuted instantiation: mcomp.c:is_mv_valid
Unexecuted instantiation: pass2_strategy.c:is_mv_valid
Unexecuted instantiation: rc_crf_cqp.c:is_mv_valid
278
279
0
#define CHECK_BACKWARD_REFS(ref_frame) (((ref_frame) >= BWDREF_FRAME) && ((ref_frame) <= ALTREF_FRAME))
280
0
#define IS_BACKWARD_REF_FRAME(ref_frame) CHECK_BACKWARD_REFS(ref_frame)
281
282
void svt_aom_find_ref_dv(Mv* ref_dv, const TileInfo* const tile, int mib_size, int mi_row, int mi_col);
283
284
0
static INLINE int32_t is_comp_ref_allowed(BlockSize bsize) {
285
0
    return AOMMIN(block_size_wide[bsize], block_size_high[bsize]) >= 8;
286
0
}
Unexecuted instantiation: enc_handle.c:is_comp_ref_allowed
Unexecuted instantiation: enc_settings.c:is_comp_ref_allowed
Unexecuted instantiation: av1me.c:is_comp_ref_allowed
Unexecuted instantiation: cdef_process.c:is_comp_ref_allowed
Unexecuted instantiation: dlf_process.c:is_comp_ref_allowed
Unexecuted instantiation: enc_cdef.c:is_comp_ref_allowed
Unexecuted instantiation: enc_dec_process.c:is_comp_ref_allowed
Unexecuted instantiation: enc_inter_prediction.c:is_comp_ref_allowed
Unexecuted instantiation: enc_intra_prediction.c:is_comp_ref_allowed
Unexecuted instantiation: enc_mode_config.c:is_comp_ref_allowed
Unexecuted instantiation: entropy_coding.c:is_comp_ref_allowed
Unexecuted instantiation: ec_process.c:is_comp_ref_allowed
Unexecuted instantiation: full_loop.c:is_comp_ref_allowed
Unexecuted instantiation: initial_rc_process.c:is_comp_ref_allowed
Unexecuted instantiation: inter_prediction.c:is_comp_ref_allowed
Unexecuted instantiation: intra_prediction.c:is_comp_ref_allowed
Unexecuted instantiation: md_rate_estimation.c:is_comp_ref_allowed
Unexecuted instantiation: mode_decision.c:is_comp_ref_allowed
Unexecuted instantiation: md_config_process.c:is_comp_ref_allowed
Unexecuted instantiation: md_process.c:is_comp_ref_allowed
Unexecuted instantiation: motion_estimation.c:is_comp_ref_allowed
Unexecuted instantiation: me_process.c:is_comp_ref_allowed
Unexecuted instantiation: packetization_process.c:is_comp_ref_allowed
Unexecuted instantiation: pic_analysis_process.c:is_comp_ref_allowed
Unexecuted instantiation: pcs.c:is_comp_ref_allowed
Unexecuted instantiation: pd_process.c:is_comp_ref_allowed
Unexecuted instantiation: pic_manager_process.c:is_comp_ref_allowed
Unexecuted instantiation: product_coding_loop.c:is_comp_ref_allowed
Unexecuted instantiation: rc_aq.c:is_comp_ref_allowed
Unexecuted instantiation: rc_process.c:is_comp_ref_allowed
Unexecuted instantiation: rc_rtc_cbr.c:is_comp_ref_allowed
Unexecuted instantiation: rc_vbr_cbr.c:is_comp_ref_allowed
Unexecuted instantiation: rd_cost.c:is_comp_ref_allowed
Unexecuted instantiation: reference_object.c:is_comp_ref_allowed
Unexecuted instantiation: resource_coordination_process.c:is_comp_ref_allowed
Unexecuted instantiation: rest_process.c:is_comp_ref_allowed
Unexecuted instantiation: restoration_pick.c:is_comp_ref_allowed
Unexecuted instantiation: src_ops_process.c:is_comp_ref_allowed
Unexecuted instantiation: super_res.c:is_comp_ref_allowed
Unexecuted instantiation: temporal_filtering.c:is_comp_ref_allowed
Unexecuted instantiation: transforms.c:is_comp_ref_allowed
Unexecuted instantiation: encode_txb_ref_c.c:is_comp_ref_allowed
Unexecuted instantiation: adaptive_mv_pred.c:is_comp_ref_allowed
Unexecuted instantiation: coding_loop.c:is_comp_ref_allowed
Unexecuted instantiation: coding_unit.c:is_comp_ref_allowed
Unexecuted instantiation: deblocking_filter.c:is_comp_ref_allowed
Unexecuted instantiation: global_me_cost.c:is_comp_ref_allowed
Unexecuted instantiation: rc_crf_cqp.c:is_comp_ref_allowed
287
288
0
static INLINE int is_interinter_compound_used(CompoundType type, BlockSize bsize) {
289
0
    const int comp_allowed = is_comp_ref_allowed(bsize);
290
0
    switch (type) {
291
0
    case COMPOUND_AVERAGE:
292
0
    case COMPOUND_DISTWTD:
293
0
    case COMPOUND_DIFFWTD:
294
0
        return comp_allowed;
295
0
    case COMPOUND_WEDGE:
296
0
        return comp_allowed && svt_aom_get_wedge_params_bits(bsize) > 0;
297
0
    default:
298
0
        assert(0);
299
0
        return 0;
300
0
    }
301
0
}
Unexecuted instantiation: enc_handle.c:is_interinter_compound_used
Unexecuted instantiation: enc_settings.c:is_interinter_compound_used
Unexecuted instantiation: av1me.c:is_interinter_compound_used
Unexecuted instantiation: cdef_process.c:is_interinter_compound_used
Unexecuted instantiation: dlf_process.c:is_interinter_compound_used
Unexecuted instantiation: enc_cdef.c:is_interinter_compound_used
Unexecuted instantiation: enc_dec_process.c:is_interinter_compound_used
Unexecuted instantiation: enc_inter_prediction.c:is_interinter_compound_used
Unexecuted instantiation: enc_intra_prediction.c:is_interinter_compound_used
Unexecuted instantiation: enc_mode_config.c:is_interinter_compound_used
Unexecuted instantiation: entropy_coding.c:is_interinter_compound_used
Unexecuted instantiation: ec_process.c:is_interinter_compound_used
Unexecuted instantiation: full_loop.c:is_interinter_compound_used
Unexecuted instantiation: initial_rc_process.c:is_interinter_compound_used
Unexecuted instantiation: inter_prediction.c:is_interinter_compound_used
Unexecuted instantiation: intra_prediction.c:is_interinter_compound_used
Unexecuted instantiation: md_rate_estimation.c:is_interinter_compound_used
Unexecuted instantiation: mode_decision.c:is_interinter_compound_used
Unexecuted instantiation: md_config_process.c:is_interinter_compound_used
Unexecuted instantiation: md_process.c:is_interinter_compound_used
Unexecuted instantiation: motion_estimation.c:is_interinter_compound_used
Unexecuted instantiation: me_process.c:is_interinter_compound_used
Unexecuted instantiation: packetization_process.c:is_interinter_compound_used
Unexecuted instantiation: palette.c:is_interinter_compound_used
Unexecuted instantiation: pic_analysis_process.c:is_interinter_compound_used
Unexecuted instantiation: pcs.c:is_interinter_compound_used
Unexecuted instantiation: pd_process.c:is_interinter_compound_used
Unexecuted instantiation: pic_manager_process.c:is_interinter_compound_used
Unexecuted instantiation: product_coding_loop.c:is_interinter_compound_used
Unexecuted instantiation: rc_aq.c:is_interinter_compound_used
Unexecuted instantiation: rc_process.c:is_interinter_compound_used
Unexecuted instantiation: rc_rtc_cbr.c:is_interinter_compound_used
Unexecuted instantiation: rc_vbr_cbr.c:is_interinter_compound_used
Unexecuted instantiation: rd_cost.c:is_interinter_compound_used
Unexecuted instantiation: reference_object.c:is_interinter_compound_used
Unexecuted instantiation: resize.c:is_interinter_compound_used
Unexecuted instantiation: resource_coordination_process.c:is_interinter_compound_used
Unexecuted instantiation: rest_process.c:is_interinter_compound_used
Unexecuted instantiation: restoration_pick.c:is_interinter_compound_used
Unexecuted instantiation: segmentation.c:is_interinter_compound_used
Unexecuted instantiation: src_ops_process.c:is_interinter_compound_used
Unexecuted instantiation: super_res.c:is_interinter_compound_used
Unexecuted instantiation: temporal_filtering.c:is_interinter_compound_used
Unexecuted instantiation: transforms.c:is_interinter_compound_used
Unexecuted instantiation: encode_txb_ref_c.c:is_interinter_compound_used
Unexecuted instantiation: adaptive_mv_pred.c:is_interinter_compound_used
Unexecuted instantiation: coding_loop.c:is_interinter_compound_used
Unexecuted instantiation: coding_unit.c:is_interinter_compound_used
Unexecuted instantiation: deblocking_filter.c:is_interinter_compound_used
Unexecuted instantiation: global_me_cost.c:is_interinter_compound_used
Unexecuted instantiation: pass2_strategy.c:is_interinter_compound_used
Unexecuted instantiation: rc_crf_cqp.c:is_interinter_compound_used
302
303
0
static INLINE int is_any_masked_compound_used(BlockSize bsize) {
304
0
    CompoundType comp_type;
305
0
    int          i;
306
0
    if (!is_comp_ref_allowed(bsize)) {
307
0
        return 0;
308
0
    }
309
0
    for (i = 0; i < COMPOUND_TYPES; i++) {
310
0
        comp_type = (CompoundType)i;
311
0
        if (svt_aom_is_masked_compound_type(comp_type) && is_interinter_compound_used(comp_type, bsize)) {
312
0
            return 1;
313
0
        }
314
0
    }
315
0
    return 0;
316
0
}
Unexecuted instantiation: enc_handle.c:is_any_masked_compound_used
Unexecuted instantiation: enc_settings.c:is_any_masked_compound_used
Unexecuted instantiation: av1me.c:is_any_masked_compound_used
Unexecuted instantiation: cdef_process.c:is_any_masked_compound_used
Unexecuted instantiation: dlf_process.c:is_any_masked_compound_used
Unexecuted instantiation: enc_cdef.c:is_any_masked_compound_used
Unexecuted instantiation: enc_dec_process.c:is_any_masked_compound_used
Unexecuted instantiation: enc_inter_prediction.c:is_any_masked_compound_used
Unexecuted instantiation: enc_intra_prediction.c:is_any_masked_compound_used
Unexecuted instantiation: enc_mode_config.c:is_any_masked_compound_used
Unexecuted instantiation: entropy_coding.c:is_any_masked_compound_used
Unexecuted instantiation: ec_process.c:is_any_masked_compound_used
Unexecuted instantiation: full_loop.c:is_any_masked_compound_used
Unexecuted instantiation: initial_rc_process.c:is_any_masked_compound_used
Unexecuted instantiation: inter_prediction.c:is_any_masked_compound_used
Unexecuted instantiation: intra_prediction.c:is_any_masked_compound_used
Unexecuted instantiation: md_rate_estimation.c:is_any_masked_compound_used
Unexecuted instantiation: mode_decision.c:is_any_masked_compound_used
Unexecuted instantiation: md_config_process.c:is_any_masked_compound_used
Unexecuted instantiation: md_process.c:is_any_masked_compound_used
Unexecuted instantiation: motion_estimation.c:is_any_masked_compound_used
Unexecuted instantiation: me_process.c:is_any_masked_compound_used
Unexecuted instantiation: packetization_process.c:is_any_masked_compound_used
Unexecuted instantiation: palette.c:is_any_masked_compound_used
Unexecuted instantiation: pic_analysis_process.c:is_any_masked_compound_used
Unexecuted instantiation: pcs.c:is_any_masked_compound_used
Unexecuted instantiation: pd_process.c:is_any_masked_compound_used
Unexecuted instantiation: pic_manager_process.c:is_any_masked_compound_used
Unexecuted instantiation: product_coding_loop.c:is_any_masked_compound_used
Unexecuted instantiation: rc_aq.c:is_any_masked_compound_used
Unexecuted instantiation: rc_process.c:is_any_masked_compound_used
Unexecuted instantiation: rc_rtc_cbr.c:is_any_masked_compound_used
Unexecuted instantiation: rc_vbr_cbr.c:is_any_masked_compound_used
Unexecuted instantiation: rd_cost.c:is_any_masked_compound_used
Unexecuted instantiation: reference_object.c:is_any_masked_compound_used
Unexecuted instantiation: resize.c:is_any_masked_compound_used
Unexecuted instantiation: resource_coordination_process.c:is_any_masked_compound_used
Unexecuted instantiation: rest_process.c:is_any_masked_compound_used
Unexecuted instantiation: restoration_pick.c:is_any_masked_compound_used
Unexecuted instantiation: segmentation.c:is_any_masked_compound_used
Unexecuted instantiation: src_ops_process.c:is_any_masked_compound_used
Unexecuted instantiation: super_res.c:is_any_masked_compound_used
Unexecuted instantiation: temporal_filtering.c:is_any_masked_compound_used
Unexecuted instantiation: transforms.c:is_any_masked_compound_used
Unexecuted instantiation: encode_txb_ref_c.c:is_any_masked_compound_used
Unexecuted instantiation: adaptive_mv_pred.c:is_any_masked_compound_used
Unexecuted instantiation: coding_loop.c:is_any_masked_compound_used
Unexecuted instantiation: coding_unit.c:is_any_masked_compound_used
Unexecuted instantiation: deblocking_filter.c:is_any_masked_compound_used
Unexecuted instantiation: global_me_cost.c:is_any_masked_compound_used
Unexecuted instantiation: pass2_strategy.c:is_any_masked_compound_used
Unexecuted instantiation: rc_crf_cqp.c:is_any_masked_compound_used
317
318
18.8k
static INLINE int bsize_to_tx_size_cat(BlockSize bsize) {
319
18.8k
    TxSize tx_size = blocksize_to_txsize[bsize];
320
18.8k
    assert(tx_size != TX_4X4);
321
18.8k
    int depth = 0;
322
68.1k
    while (tx_size != TX_4X4) {
323
49.2k
        depth++;
324
49.2k
        tx_size = eb_sub_tx_size_map[tx_size];
325
49.2k
        assert(depth < 10);
326
49.2k
    }
327
18.8k
    assert(depth <= MAX_TX_CATS);
328
18.8k
    return depth - 1;
329
18.8k
}
Unexecuted instantiation: enc_handle.c:bsize_to_tx_size_cat
Unexecuted instantiation: enc_settings.c:bsize_to_tx_size_cat
Unexecuted instantiation: av1me.c:bsize_to_tx_size_cat
Unexecuted instantiation: cdef_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: dlf_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: enc_cdef.c:bsize_to_tx_size_cat
Unexecuted instantiation: enc_dec_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: enc_inter_prediction.c:bsize_to_tx_size_cat
Unexecuted instantiation: enc_intra_prediction.c:bsize_to_tx_size_cat
Unexecuted instantiation: enc_mode_config.c:bsize_to_tx_size_cat
entropy_coding.c:bsize_to_tx_size_cat
Line
Count
Source
318
7.54k
static INLINE int bsize_to_tx_size_cat(BlockSize bsize) {
319
7.54k
    TxSize tx_size = blocksize_to_txsize[bsize];
320
7.54k
    assert(tx_size != TX_4X4);
321
7.54k
    int depth = 0;
322
25.9k
    while (tx_size != TX_4X4) {
323
18.3k
        depth++;
324
18.3k
        tx_size = eb_sub_tx_size_map[tx_size];
325
18.3k
        assert(depth < 10);
326
18.3k
    }
327
    assert(depth <= MAX_TX_CATS);
328
7.54k
    return depth - 1;
329
7.54k
}
Unexecuted instantiation: ec_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: full_loop.c:bsize_to_tx_size_cat
Unexecuted instantiation: initial_rc_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: inter_prediction.c:bsize_to_tx_size_cat
Unexecuted instantiation: intra_prediction.c:bsize_to_tx_size_cat
Unexecuted instantiation: md_rate_estimation.c:bsize_to_tx_size_cat
Unexecuted instantiation: mode_decision.c:bsize_to_tx_size_cat
Unexecuted instantiation: md_config_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: md_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: motion_estimation.c:bsize_to_tx_size_cat
Unexecuted instantiation: me_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: packetization_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: pic_analysis_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: pcs.c:bsize_to_tx_size_cat
Unexecuted instantiation: pd_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: pic_manager_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: product_coding_loop.c:bsize_to_tx_size_cat
Unexecuted instantiation: rc_aq.c:bsize_to_tx_size_cat
Unexecuted instantiation: rc_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: rc_rtc_cbr.c:bsize_to_tx_size_cat
Unexecuted instantiation: rc_vbr_cbr.c:bsize_to_tx_size_cat
rd_cost.c:bsize_to_tx_size_cat
Line
Count
Source
318
11.3k
static INLINE int bsize_to_tx_size_cat(BlockSize bsize) {
319
11.3k
    TxSize tx_size = blocksize_to_txsize[bsize];
320
11.3k
    assert(tx_size != TX_4X4);
321
11.3k
    int depth = 0;
322
42.1k
    while (tx_size != TX_4X4) {
323
30.8k
        depth++;
324
30.8k
        tx_size = eb_sub_tx_size_map[tx_size];
325
30.8k
        assert(depth < 10);
326
30.8k
    }
327
    assert(depth <= MAX_TX_CATS);
328
11.3k
    return depth - 1;
329
11.3k
}
Unexecuted instantiation: reference_object.c:bsize_to_tx_size_cat
Unexecuted instantiation: resource_coordination_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: rest_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: restoration_pick.c:bsize_to_tx_size_cat
Unexecuted instantiation: src_ops_process.c:bsize_to_tx_size_cat
Unexecuted instantiation: super_res.c:bsize_to_tx_size_cat
Unexecuted instantiation: temporal_filtering.c:bsize_to_tx_size_cat
Unexecuted instantiation: transforms.c:bsize_to_tx_size_cat
Unexecuted instantiation: encode_txb_ref_c.c:bsize_to_tx_size_cat
Unexecuted instantiation: adaptive_mv_pred.c:bsize_to_tx_size_cat
Unexecuted instantiation: coding_loop.c:bsize_to_tx_size_cat
Unexecuted instantiation: coding_unit.c:bsize_to_tx_size_cat
Unexecuted instantiation: deblocking_filter.c:bsize_to_tx_size_cat
Unexecuted instantiation: global_me_cost.c:bsize_to_tx_size_cat
Unexecuted instantiation: rc_crf_cqp.c:bsize_to_tx_size_cat
330
331
7.54k
static INLINE int bsize_to_max_depth(BlockSize bsize) {
332
7.54k
    TxSize tx_size = blocksize_to_txsize[bsize];
333
7.54k
    int    depth   = 0;
334
19.8k
    while (depth < MAX_TX_DEPTH && tx_size != TX_4X4) {
335
12.2k
        depth++;
336
12.2k
        tx_size = eb_sub_tx_size_map[tx_size];
337
12.2k
    }
338
7.54k
    return depth;
339
7.54k
}
Unexecuted instantiation: enc_handle.c:bsize_to_max_depth
Unexecuted instantiation: enc_settings.c:bsize_to_max_depth
Unexecuted instantiation: av1me.c:bsize_to_max_depth
Unexecuted instantiation: cdef_process.c:bsize_to_max_depth
Unexecuted instantiation: dlf_process.c:bsize_to_max_depth
Unexecuted instantiation: enc_cdef.c:bsize_to_max_depth
Unexecuted instantiation: enc_dec_process.c:bsize_to_max_depth
Unexecuted instantiation: enc_inter_prediction.c:bsize_to_max_depth
Unexecuted instantiation: enc_intra_prediction.c:bsize_to_max_depth
Unexecuted instantiation: enc_mode_config.c:bsize_to_max_depth
entropy_coding.c:bsize_to_max_depth
Line
Count
Source
331
7.54k
static INLINE int bsize_to_max_depth(BlockSize bsize) {
332
7.54k
    TxSize tx_size = blocksize_to_txsize[bsize];
333
7.54k
    int    depth   = 0;
334
19.8k
    while (depth < MAX_TX_DEPTH && tx_size != TX_4X4) {
335
12.2k
        depth++;
336
12.2k
        tx_size = eb_sub_tx_size_map[tx_size];
337
12.2k
    }
338
7.54k
    return depth;
339
7.54k
}
Unexecuted instantiation: ec_process.c:bsize_to_max_depth
Unexecuted instantiation: full_loop.c:bsize_to_max_depth
Unexecuted instantiation: initial_rc_process.c:bsize_to_max_depth
Unexecuted instantiation: inter_prediction.c:bsize_to_max_depth
Unexecuted instantiation: intra_prediction.c:bsize_to_max_depth
Unexecuted instantiation: md_rate_estimation.c:bsize_to_max_depth
Unexecuted instantiation: mode_decision.c:bsize_to_max_depth
Unexecuted instantiation: md_config_process.c:bsize_to_max_depth
Unexecuted instantiation: md_process.c:bsize_to_max_depth
Unexecuted instantiation: motion_estimation.c:bsize_to_max_depth
Unexecuted instantiation: me_process.c:bsize_to_max_depth
Unexecuted instantiation: packetization_process.c:bsize_to_max_depth
Unexecuted instantiation: pic_analysis_process.c:bsize_to_max_depth
Unexecuted instantiation: pcs.c:bsize_to_max_depth
Unexecuted instantiation: pd_process.c:bsize_to_max_depth
Unexecuted instantiation: pic_manager_process.c:bsize_to_max_depth
Unexecuted instantiation: product_coding_loop.c:bsize_to_max_depth
Unexecuted instantiation: rc_aq.c:bsize_to_max_depth
Unexecuted instantiation: rc_process.c:bsize_to_max_depth
Unexecuted instantiation: rc_rtc_cbr.c:bsize_to_max_depth
Unexecuted instantiation: rc_vbr_cbr.c:bsize_to_max_depth
Unexecuted instantiation: rd_cost.c:bsize_to_max_depth
Unexecuted instantiation: reference_object.c:bsize_to_max_depth
Unexecuted instantiation: resource_coordination_process.c:bsize_to_max_depth
Unexecuted instantiation: rest_process.c:bsize_to_max_depth
Unexecuted instantiation: restoration_pick.c:bsize_to_max_depth
Unexecuted instantiation: src_ops_process.c:bsize_to_max_depth
Unexecuted instantiation: super_res.c:bsize_to_max_depth
Unexecuted instantiation: temporal_filtering.c:bsize_to_max_depth
Unexecuted instantiation: transforms.c:bsize_to_max_depth
Unexecuted instantiation: encode_txb_ref_c.c:bsize_to_max_depth
Unexecuted instantiation: adaptive_mv_pred.c:bsize_to_max_depth
Unexecuted instantiation: coding_loop.c:bsize_to_max_depth
Unexecuted instantiation: coding_unit.c:bsize_to_max_depth
Unexecuted instantiation: deblocking_filter.c:bsize_to_max_depth
Unexecuted instantiation: global_me_cost.c:bsize_to_max_depth
Unexecuted instantiation: rc_crf_cqp.c:bsize_to_max_depth
340
341
0
static INLINE PredictionMode compound_ref0_mode(PredictionMode mode) {
342
0
    static PredictionMode lut[] = {
343
0
        MB_MODE_COUNT, // DC_PRED
344
0
        MB_MODE_COUNT, // V_PRED
345
0
        MB_MODE_COUNT, // H_PRED
346
0
        MB_MODE_COUNT, // D45_PRED
347
0
        MB_MODE_COUNT, // D135_PRED
348
0
        MB_MODE_COUNT, // D113_PRED
349
0
        MB_MODE_COUNT, // D157_PRED
350
0
        MB_MODE_COUNT, // D203_PRED
351
0
        MB_MODE_COUNT, // D67_PRED
352
0
        MB_MODE_COUNT, // SMOOTH_PRED
353
0
        MB_MODE_COUNT, // SMOOTH_V_PRED
354
0
        MB_MODE_COUNT, // SMOOTH_H_PRED
355
0
        MB_MODE_COUNT, // PAETH_PRED
356
0
        MB_MODE_COUNT, // NEARESTMV
357
0
        MB_MODE_COUNT, // NEARMV
358
0
        MB_MODE_COUNT, // GLOBALMV
359
0
        MB_MODE_COUNT, // NEWMV
360
0
        NEARESTMV, // NEAREST_NEARESTMV
361
0
        NEARMV, // NEAR_NEARMV
362
0
        NEARESTMV, // NEAREST_NEWMV
363
0
        NEWMV, // NEW_NEARESTMV
364
0
        NEARMV, // NEAR_NEWMV
365
0
        NEWMV, // NEW_NEARMV
366
0
        GLOBALMV, // GLOBAL_GLOBALMV
367
0
        NEWMV, // NEW_NEWMV
368
0
    };
369
0
    assert(NELEMENTS(lut) == MB_MODE_COUNT);
370
0
    assert(is_inter_compound_mode(mode));
371
0
    return lut[mode];
372
0
}
Unexecuted instantiation: enc_handle.c:compound_ref0_mode
Unexecuted instantiation: enc_settings.c:compound_ref0_mode
Unexecuted instantiation: av1me.c:compound_ref0_mode
Unexecuted instantiation: cdef_process.c:compound_ref0_mode
Unexecuted instantiation: dlf_process.c:compound_ref0_mode
Unexecuted instantiation: enc_cdef.c:compound_ref0_mode
Unexecuted instantiation: enc_dec_process.c:compound_ref0_mode
Unexecuted instantiation: enc_inter_prediction.c:compound_ref0_mode
Unexecuted instantiation: enc_intra_prediction.c:compound_ref0_mode
Unexecuted instantiation: enc_mode_config.c:compound_ref0_mode
Unexecuted instantiation: entropy_coding.c:compound_ref0_mode
Unexecuted instantiation: ec_process.c:compound_ref0_mode
Unexecuted instantiation: full_loop.c:compound_ref0_mode
Unexecuted instantiation: initial_rc_process.c:compound_ref0_mode
Unexecuted instantiation: inter_prediction.c:compound_ref0_mode
Unexecuted instantiation: intra_prediction.c:compound_ref0_mode
Unexecuted instantiation: md_rate_estimation.c:compound_ref0_mode
Unexecuted instantiation: mode_decision.c:compound_ref0_mode
Unexecuted instantiation: md_config_process.c:compound_ref0_mode
Unexecuted instantiation: md_process.c:compound_ref0_mode
Unexecuted instantiation: motion_estimation.c:compound_ref0_mode
Unexecuted instantiation: me_process.c:compound_ref0_mode
Unexecuted instantiation: packetization_process.c:compound_ref0_mode
Unexecuted instantiation: pic_analysis_process.c:compound_ref0_mode
Unexecuted instantiation: pcs.c:compound_ref0_mode
Unexecuted instantiation: pd_process.c:compound_ref0_mode
Unexecuted instantiation: pic_manager_process.c:compound_ref0_mode
Unexecuted instantiation: product_coding_loop.c:compound_ref0_mode
Unexecuted instantiation: rc_aq.c:compound_ref0_mode
Unexecuted instantiation: rc_process.c:compound_ref0_mode
Unexecuted instantiation: rc_rtc_cbr.c:compound_ref0_mode
Unexecuted instantiation: rc_vbr_cbr.c:compound_ref0_mode
Unexecuted instantiation: rd_cost.c:compound_ref0_mode
Unexecuted instantiation: reference_object.c:compound_ref0_mode
Unexecuted instantiation: resource_coordination_process.c:compound_ref0_mode
Unexecuted instantiation: rest_process.c:compound_ref0_mode
Unexecuted instantiation: restoration_pick.c:compound_ref0_mode
Unexecuted instantiation: src_ops_process.c:compound_ref0_mode
Unexecuted instantiation: super_res.c:compound_ref0_mode
Unexecuted instantiation: temporal_filtering.c:compound_ref0_mode
Unexecuted instantiation: transforms.c:compound_ref0_mode
Unexecuted instantiation: encode_txb_ref_c.c:compound_ref0_mode
Unexecuted instantiation: adaptive_mv_pred.c:compound_ref0_mode
Unexecuted instantiation: coding_loop.c:compound_ref0_mode
Unexecuted instantiation: coding_unit.c:compound_ref0_mode
Unexecuted instantiation: deblocking_filter.c:compound_ref0_mode
Unexecuted instantiation: global_me_cost.c:compound_ref0_mode
Unexecuted instantiation: rc_crf_cqp.c:compound_ref0_mode
373
374
0
static INLINE PredictionMode compound_ref1_mode(PredictionMode mode) {
375
0
    static PredictionMode lut[] = {
376
0
        MB_MODE_COUNT, // DC_PRED
377
0
        MB_MODE_COUNT, // V_PRED
378
0
        MB_MODE_COUNT, // H_PRED
379
0
        MB_MODE_COUNT, // D45_PRED
380
0
        MB_MODE_COUNT, // D135_PRED
381
0
        MB_MODE_COUNT, // D113_PRED
382
0
        MB_MODE_COUNT, // D157_PRED
383
0
        MB_MODE_COUNT, // D203_PRED
384
0
        MB_MODE_COUNT, // D67_PRED
385
0
        MB_MODE_COUNT, // SMOOTH_PRED
386
0
        MB_MODE_COUNT, // SMOOTH_V_PRED
387
0
        MB_MODE_COUNT, // SMOOTH_H_PRED
388
0
        MB_MODE_COUNT, // PAETH_PRED
389
0
        MB_MODE_COUNT, // NEARESTMV
390
0
        MB_MODE_COUNT, // NEARMV
391
0
        MB_MODE_COUNT, // GLOBALMV
392
0
        MB_MODE_COUNT, // NEWMV
393
0
        NEARESTMV, // NEAREST_NEARESTMV
394
0
        NEARMV, // NEAR_NEARMV
395
0
        NEWMV, // NEAREST_NEWMV
396
0
        NEARESTMV, // NEW_NEARESTMV
397
0
        NEWMV, // NEAR_NEWMV
398
0
        NEARMV, // NEW_NEARMV
399
0
        GLOBALMV, // GLOBAL_GLOBALMV
400
0
        NEWMV, // NEW_NEWMV
401
0
    };
402
0
    assert(NELEMENTS(lut) == MB_MODE_COUNT);
403
0
    assert(is_inter_compound_mode(mode));
404
0
    return lut[mode];
405
0
}
Unexecuted instantiation: enc_handle.c:compound_ref1_mode
Unexecuted instantiation: enc_settings.c:compound_ref1_mode
Unexecuted instantiation: av1me.c:compound_ref1_mode
Unexecuted instantiation: cdef_process.c:compound_ref1_mode
Unexecuted instantiation: dlf_process.c:compound_ref1_mode
Unexecuted instantiation: enc_cdef.c:compound_ref1_mode
Unexecuted instantiation: enc_dec_process.c:compound_ref1_mode
Unexecuted instantiation: enc_inter_prediction.c:compound_ref1_mode
Unexecuted instantiation: enc_intra_prediction.c:compound_ref1_mode
Unexecuted instantiation: enc_mode_config.c:compound_ref1_mode
Unexecuted instantiation: entropy_coding.c:compound_ref1_mode
Unexecuted instantiation: ec_process.c:compound_ref1_mode
Unexecuted instantiation: full_loop.c:compound_ref1_mode
Unexecuted instantiation: initial_rc_process.c:compound_ref1_mode
Unexecuted instantiation: inter_prediction.c:compound_ref1_mode
Unexecuted instantiation: intra_prediction.c:compound_ref1_mode
Unexecuted instantiation: md_rate_estimation.c:compound_ref1_mode
Unexecuted instantiation: mode_decision.c:compound_ref1_mode
Unexecuted instantiation: md_config_process.c:compound_ref1_mode
Unexecuted instantiation: md_process.c:compound_ref1_mode
Unexecuted instantiation: motion_estimation.c:compound_ref1_mode
Unexecuted instantiation: me_process.c:compound_ref1_mode
Unexecuted instantiation: packetization_process.c:compound_ref1_mode
Unexecuted instantiation: pic_analysis_process.c:compound_ref1_mode
Unexecuted instantiation: pcs.c:compound_ref1_mode
Unexecuted instantiation: pd_process.c:compound_ref1_mode
Unexecuted instantiation: pic_manager_process.c:compound_ref1_mode
Unexecuted instantiation: product_coding_loop.c:compound_ref1_mode
Unexecuted instantiation: rc_aq.c:compound_ref1_mode
Unexecuted instantiation: rc_process.c:compound_ref1_mode
Unexecuted instantiation: rc_rtc_cbr.c:compound_ref1_mode
Unexecuted instantiation: rc_vbr_cbr.c:compound_ref1_mode
Unexecuted instantiation: rd_cost.c:compound_ref1_mode
Unexecuted instantiation: reference_object.c:compound_ref1_mode
Unexecuted instantiation: resource_coordination_process.c:compound_ref1_mode
Unexecuted instantiation: rest_process.c:compound_ref1_mode
Unexecuted instantiation: restoration_pick.c:compound_ref1_mode
Unexecuted instantiation: src_ops_process.c:compound_ref1_mode
Unexecuted instantiation: super_res.c:compound_ref1_mode
Unexecuted instantiation: temporal_filtering.c:compound_ref1_mode
Unexecuted instantiation: transforms.c:compound_ref1_mode
Unexecuted instantiation: encode_txb_ref_c.c:compound_ref1_mode
Unexecuted instantiation: adaptive_mv_pred.c:compound_ref1_mode
Unexecuted instantiation: coding_loop.c:compound_ref1_mode
Unexecuted instantiation: coding_unit.c:compound_ref1_mode
Unexecuted instantiation: deblocking_filter.c:compound_ref1_mode
Unexecuted instantiation: global_me_cost.c:compound_ref1_mode
Unexecuted instantiation: rc_crf_cqp.c:compound_ref1_mode
406
407
0
static INLINE bool is_motion_variation_allowed_bsize(const BlockSize bsize) {
408
0
    return (block_size_wide[bsize] >= 8 && block_size_high[bsize] >= 8);
409
0
}
Unexecuted instantiation: enc_handle.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: enc_settings.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: av1me.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: cdef_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: dlf_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: enc_cdef.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: enc_dec_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: enc_inter_prediction.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: enc_intra_prediction.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: enc_mode_config.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: entropy_coding.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: ec_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: full_loop.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: initial_rc_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: inter_prediction.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: intra_prediction.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: md_rate_estimation.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: mode_decision.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: md_config_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: md_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: motion_estimation.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: me_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: packetization_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: pic_analysis_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: pcs.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: pd_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: pic_manager_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: product_coding_loop.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rc_aq.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rc_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rc_rtc_cbr.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rc_vbr_cbr.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rd_cost.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: reference_object.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: resource_coordination_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rest_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: restoration_pick.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: src_ops_process.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: super_res.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: temporal_filtering.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: transforms.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: encode_txb_ref_c.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: adaptive_mv_pred.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: coding_loop.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: coding_unit.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: deblocking_filter.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: global_me_cost.c:is_motion_variation_allowed_bsize
Unexecuted instantiation: rc_crf_cqp.c:is_motion_variation_allowed_bsize
410
411
0
static INLINE int is_global_mv_block(const PredictionMode mode, const BlockSize bsize, TransformationType type) {
412
0
    return (mode == GLOBALMV || mode == GLOBAL_GLOBALMV) && type > TRANSLATION &&
413
0
        is_motion_variation_allowed_bsize(bsize);
414
0
}
Unexecuted instantiation: enc_handle.c:is_global_mv_block
Unexecuted instantiation: enc_settings.c:is_global_mv_block
Unexecuted instantiation: av1me.c:is_global_mv_block
Unexecuted instantiation: cdef_process.c:is_global_mv_block
Unexecuted instantiation: dlf_process.c:is_global_mv_block
Unexecuted instantiation: enc_cdef.c:is_global_mv_block
Unexecuted instantiation: enc_dec_process.c:is_global_mv_block
Unexecuted instantiation: enc_inter_prediction.c:is_global_mv_block
Unexecuted instantiation: enc_intra_prediction.c:is_global_mv_block
Unexecuted instantiation: enc_mode_config.c:is_global_mv_block
Unexecuted instantiation: entropy_coding.c:is_global_mv_block
Unexecuted instantiation: ec_process.c:is_global_mv_block
Unexecuted instantiation: full_loop.c:is_global_mv_block
Unexecuted instantiation: initial_rc_process.c:is_global_mv_block
Unexecuted instantiation: inter_prediction.c:is_global_mv_block
Unexecuted instantiation: intra_prediction.c:is_global_mv_block
Unexecuted instantiation: md_rate_estimation.c:is_global_mv_block
Unexecuted instantiation: mode_decision.c:is_global_mv_block
Unexecuted instantiation: md_config_process.c:is_global_mv_block
Unexecuted instantiation: md_process.c:is_global_mv_block
Unexecuted instantiation: motion_estimation.c:is_global_mv_block
Unexecuted instantiation: me_process.c:is_global_mv_block
Unexecuted instantiation: packetization_process.c:is_global_mv_block
Unexecuted instantiation: pic_analysis_process.c:is_global_mv_block
Unexecuted instantiation: pcs.c:is_global_mv_block
Unexecuted instantiation: pd_process.c:is_global_mv_block
Unexecuted instantiation: pic_manager_process.c:is_global_mv_block
Unexecuted instantiation: product_coding_loop.c:is_global_mv_block
Unexecuted instantiation: rc_aq.c:is_global_mv_block
Unexecuted instantiation: rc_process.c:is_global_mv_block
Unexecuted instantiation: rc_rtc_cbr.c:is_global_mv_block
Unexecuted instantiation: rc_vbr_cbr.c:is_global_mv_block
Unexecuted instantiation: rd_cost.c:is_global_mv_block
Unexecuted instantiation: reference_object.c:is_global_mv_block
Unexecuted instantiation: resource_coordination_process.c:is_global_mv_block
Unexecuted instantiation: rest_process.c:is_global_mv_block
Unexecuted instantiation: restoration_pick.c:is_global_mv_block
Unexecuted instantiation: src_ops_process.c:is_global_mv_block
Unexecuted instantiation: super_res.c:is_global_mv_block
Unexecuted instantiation: temporal_filtering.c:is_global_mv_block
Unexecuted instantiation: transforms.c:is_global_mv_block
Unexecuted instantiation: encode_txb_ref_c.c:is_global_mv_block
Unexecuted instantiation: adaptive_mv_pred.c:is_global_mv_block
Unexecuted instantiation: coding_loop.c:is_global_mv_block
Unexecuted instantiation: coding_unit.c:is_global_mv_block
Unexecuted instantiation: deblocking_filter.c:is_global_mv_block
Unexecuted instantiation: global_me_cost.c:is_global_mv_block
Unexecuted instantiation: rc_crf_cqp.c:is_global_mv_block
415
416
0
static INLINE uint32_t have_nearmv_in_inter_mode(PredictionMode mode) {
417
0
    return (mode == NEARMV || mode == NEAR_NEARMV || mode == NEAR_NEWMV || mode == NEW_NEARMV);
418
0
}
Unexecuted instantiation: enc_handle.c:have_nearmv_in_inter_mode
Unexecuted instantiation: enc_settings.c:have_nearmv_in_inter_mode
Unexecuted instantiation: av1me.c:have_nearmv_in_inter_mode
Unexecuted instantiation: cdef_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: dlf_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: enc_cdef.c:have_nearmv_in_inter_mode
Unexecuted instantiation: enc_dec_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: enc_inter_prediction.c:have_nearmv_in_inter_mode
Unexecuted instantiation: enc_intra_prediction.c:have_nearmv_in_inter_mode
Unexecuted instantiation: enc_mode_config.c:have_nearmv_in_inter_mode
Unexecuted instantiation: entropy_coding.c:have_nearmv_in_inter_mode
Unexecuted instantiation: ec_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: full_loop.c:have_nearmv_in_inter_mode
Unexecuted instantiation: initial_rc_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: inter_prediction.c:have_nearmv_in_inter_mode
Unexecuted instantiation: intra_prediction.c:have_nearmv_in_inter_mode
Unexecuted instantiation: md_rate_estimation.c:have_nearmv_in_inter_mode
Unexecuted instantiation: mode_decision.c:have_nearmv_in_inter_mode
Unexecuted instantiation: md_config_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: md_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: motion_estimation.c:have_nearmv_in_inter_mode
Unexecuted instantiation: me_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: packetization_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: pic_analysis_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: pcs.c:have_nearmv_in_inter_mode
Unexecuted instantiation: pd_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: pic_manager_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: product_coding_loop.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rc_aq.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rc_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rc_rtc_cbr.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rc_vbr_cbr.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rd_cost.c:have_nearmv_in_inter_mode
Unexecuted instantiation: reference_object.c:have_nearmv_in_inter_mode
Unexecuted instantiation: resource_coordination_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rest_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: restoration_pick.c:have_nearmv_in_inter_mode
Unexecuted instantiation: src_ops_process.c:have_nearmv_in_inter_mode
Unexecuted instantiation: super_res.c:have_nearmv_in_inter_mode
Unexecuted instantiation: temporal_filtering.c:have_nearmv_in_inter_mode
Unexecuted instantiation: transforms.c:have_nearmv_in_inter_mode
Unexecuted instantiation: encode_txb_ref_c.c:have_nearmv_in_inter_mode
Unexecuted instantiation: adaptive_mv_pred.c:have_nearmv_in_inter_mode
Unexecuted instantiation: coding_loop.c:have_nearmv_in_inter_mode
Unexecuted instantiation: coding_unit.c:have_nearmv_in_inter_mode
Unexecuted instantiation: deblocking_filter.c:have_nearmv_in_inter_mode
Unexecuted instantiation: global_me_cost.c:have_nearmv_in_inter_mode
Unexecuted instantiation: rc_crf_cqp.c:have_nearmv_in_inter_mode
419
420
#define n_elements(x) (int32_t)(sizeof(x) / sizeof(x[0]))
421
422
0
static INLINE MvReferenceFrame comp_ref0(int32_t ref_idx) {
423
0
    static const MvReferenceFrame lut[] = {
424
0
        LAST_FRAME, // LAST_LAST2_FRAMES,
425
0
        LAST_FRAME, // LAST_LAST3_FRAMES,
426
0
        LAST_FRAME, // LAST_GOLDEN_FRAMES,
427
0
        BWDREF_FRAME, // BWDREF_ALTREF_FRAMES,
428
0
        LAST2_FRAME, // LAST2_LAST3_FRAMES
429
0
        LAST2_FRAME, // LAST2_GOLDEN_FRAMES,
430
0
        LAST3_FRAME, // LAST3_GOLDEN_FRAMES,
431
0
        BWDREF_FRAME, // BWDREF_ALTREF2_FRAMES,
432
0
        ALTREF2_FRAME, // ALTREF2_ALTREF_FRAMES,
433
0
    };
434
0
    assert(n_elements(lut) == TOTAL_UNIDIR_COMP_REFS);
435
0
    return lut[ref_idx];
436
0
}
Unexecuted instantiation: enc_handle.c:comp_ref0
Unexecuted instantiation: enc_settings.c:comp_ref0
Unexecuted instantiation: av1me.c:comp_ref0
Unexecuted instantiation: cdef_process.c:comp_ref0
Unexecuted instantiation: dlf_process.c:comp_ref0
Unexecuted instantiation: enc_cdef.c:comp_ref0
Unexecuted instantiation: enc_dec_process.c:comp_ref0
Unexecuted instantiation: enc_inter_prediction.c:comp_ref0
Unexecuted instantiation: enc_intra_prediction.c:comp_ref0
Unexecuted instantiation: enc_mode_config.c:comp_ref0
Unexecuted instantiation: entropy_coding.c:comp_ref0
Unexecuted instantiation: ec_process.c:comp_ref0
Unexecuted instantiation: full_loop.c:comp_ref0
Unexecuted instantiation: initial_rc_process.c:comp_ref0
Unexecuted instantiation: inter_prediction.c:comp_ref0
Unexecuted instantiation: intra_prediction.c:comp_ref0
Unexecuted instantiation: md_rate_estimation.c:comp_ref0
Unexecuted instantiation: mode_decision.c:comp_ref0
Unexecuted instantiation: md_config_process.c:comp_ref0
Unexecuted instantiation: md_process.c:comp_ref0
Unexecuted instantiation: motion_estimation.c:comp_ref0
Unexecuted instantiation: me_process.c:comp_ref0
Unexecuted instantiation: packetization_process.c:comp_ref0
Unexecuted instantiation: pic_analysis_process.c:comp_ref0
Unexecuted instantiation: pcs.c:comp_ref0
Unexecuted instantiation: pd_process.c:comp_ref0
Unexecuted instantiation: pic_manager_process.c:comp_ref0
Unexecuted instantiation: product_coding_loop.c:comp_ref0
Unexecuted instantiation: rc_aq.c:comp_ref0
Unexecuted instantiation: rc_process.c:comp_ref0
Unexecuted instantiation: rc_rtc_cbr.c:comp_ref0
Unexecuted instantiation: rc_vbr_cbr.c:comp_ref0
Unexecuted instantiation: rd_cost.c:comp_ref0
Unexecuted instantiation: reference_object.c:comp_ref0
Unexecuted instantiation: resource_coordination_process.c:comp_ref0
Unexecuted instantiation: rest_process.c:comp_ref0
Unexecuted instantiation: restoration_pick.c:comp_ref0
Unexecuted instantiation: src_ops_process.c:comp_ref0
Unexecuted instantiation: super_res.c:comp_ref0
Unexecuted instantiation: temporal_filtering.c:comp_ref0
Unexecuted instantiation: transforms.c:comp_ref0
Unexecuted instantiation: encode_txb_ref_c.c:comp_ref0
Unexecuted instantiation: adaptive_mv_pred.c:comp_ref0
Unexecuted instantiation: coding_loop.c:comp_ref0
Unexecuted instantiation: coding_unit.c:comp_ref0
Unexecuted instantiation: deblocking_filter.c:comp_ref0
Unexecuted instantiation: global_me_cost.c:comp_ref0
Unexecuted instantiation: rc_crf_cqp.c:comp_ref0
437
438
0
static INLINE MvReferenceFrame comp_ref1(int32_t ref_idx) {
439
0
    static const MvReferenceFrame lut[] = {
440
0
        LAST2_FRAME, // LAST_LAST2_FRAMES,
441
0
        LAST3_FRAME, // LAST_LAST3_FRAMES,
442
0
        GOLDEN_FRAME, // LAST_GOLDEN_FRAMES,
443
0
        ALTREF_FRAME, // BWDREF_ALTREF_FRAMES,
444
0
        LAST3_FRAME, // LAST2_LAST3_FRAMES
445
0
        GOLDEN_FRAME, // LAST2_GOLDEN_FRAMES,
446
0
        GOLDEN_FRAME, // LAST3_GOLDEN_FRAMES,
447
0
        ALTREF2_FRAME, // BWDREF_ALTREF2_FRAMES,
448
0
        ALTREF_FRAME, // ALTREF2_ALTREF_FRAMES,
449
0
    };
450
0
    assert(n_elements(lut) == TOTAL_UNIDIR_COMP_REFS);
451
0
    return lut[ref_idx];
452
0
}
Unexecuted instantiation: enc_handle.c:comp_ref1
Unexecuted instantiation: enc_settings.c:comp_ref1
Unexecuted instantiation: av1me.c:comp_ref1
Unexecuted instantiation: cdef_process.c:comp_ref1
Unexecuted instantiation: dlf_process.c:comp_ref1
Unexecuted instantiation: enc_cdef.c:comp_ref1
Unexecuted instantiation: enc_dec_process.c:comp_ref1
Unexecuted instantiation: enc_inter_prediction.c:comp_ref1
Unexecuted instantiation: enc_intra_prediction.c:comp_ref1
Unexecuted instantiation: enc_mode_config.c:comp_ref1
Unexecuted instantiation: entropy_coding.c:comp_ref1
Unexecuted instantiation: ec_process.c:comp_ref1
Unexecuted instantiation: full_loop.c:comp_ref1
Unexecuted instantiation: initial_rc_process.c:comp_ref1
Unexecuted instantiation: inter_prediction.c:comp_ref1
Unexecuted instantiation: intra_prediction.c:comp_ref1
Unexecuted instantiation: md_rate_estimation.c:comp_ref1
Unexecuted instantiation: mode_decision.c:comp_ref1
Unexecuted instantiation: md_config_process.c:comp_ref1
Unexecuted instantiation: md_process.c:comp_ref1
Unexecuted instantiation: motion_estimation.c:comp_ref1
Unexecuted instantiation: me_process.c:comp_ref1
Unexecuted instantiation: packetization_process.c:comp_ref1
Unexecuted instantiation: pic_analysis_process.c:comp_ref1
Unexecuted instantiation: pcs.c:comp_ref1
Unexecuted instantiation: pd_process.c:comp_ref1
Unexecuted instantiation: pic_manager_process.c:comp_ref1
Unexecuted instantiation: product_coding_loop.c:comp_ref1
Unexecuted instantiation: rc_aq.c:comp_ref1
Unexecuted instantiation: rc_process.c:comp_ref1
Unexecuted instantiation: rc_rtc_cbr.c:comp_ref1
Unexecuted instantiation: rc_vbr_cbr.c:comp_ref1
Unexecuted instantiation: rd_cost.c:comp_ref1
Unexecuted instantiation: reference_object.c:comp_ref1
Unexecuted instantiation: resource_coordination_process.c:comp_ref1
Unexecuted instantiation: rest_process.c:comp_ref1
Unexecuted instantiation: restoration_pick.c:comp_ref1
Unexecuted instantiation: src_ops_process.c:comp_ref1
Unexecuted instantiation: super_res.c:comp_ref1
Unexecuted instantiation: temporal_filtering.c:comp_ref1
Unexecuted instantiation: transforms.c:comp_ref1
Unexecuted instantiation: encode_txb_ref_c.c:comp_ref1
Unexecuted instantiation: adaptive_mv_pred.c:comp_ref1
Unexecuted instantiation: coding_loop.c:comp_ref1
Unexecuted instantiation: coding_unit.c:comp_ref1
Unexecuted instantiation: deblocking_filter.c:comp_ref1
Unexecuted instantiation: global_me_cost.c:comp_ref1
Unexecuted instantiation: rc_crf_cqp.c:comp_ref1
453
454
0
static INLINE int8_t get_uni_comp_ref_idx(const MvReferenceFrame* const rf) {
455
    // Single ref pred
456
0
    if (rf[1] <= INTRA_FRAME) {
457
0
        return -1;
458
0
    }
459
460
    // Bi-directional comp ref pred
461
0
    if ((rf[0] < BWDREF_FRAME) && (rf[1] >= BWDREF_FRAME)) {
462
0
        return -1;
463
0
    }
464
465
0
    for (int8_t ref_idx = 0; ref_idx < TOTAL_UNIDIR_COMP_REFS; ++ref_idx) {
466
0
        if (rf[0] == comp_ref0(ref_idx) && rf[1] == comp_ref1(ref_idx)) {
467
0
            return ref_idx;
468
0
        }
469
0
    }
470
0
    return -1;
471
0
}
Unexecuted instantiation: enc_handle.c:get_uni_comp_ref_idx
Unexecuted instantiation: enc_settings.c:get_uni_comp_ref_idx
Unexecuted instantiation: av1me.c:get_uni_comp_ref_idx
Unexecuted instantiation: cdef_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: dlf_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: enc_cdef.c:get_uni_comp_ref_idx
Unexecuted instantiation: enc_dec_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: enc_inter_prediction.c:get_uni_comp_ref_idx
Unexecuted instantiation: enc_intra_prediction.c:get_uni_comp_ref_idx
Unexecuted instantiation: enc_mode_config.c:get_uni_comp_ref_idx
Unexecuted instantiation: entropy_coding.c:get_uni_comp_ref_idx
Unexecuted instantiation: ec_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: full_loop.c:get_uni_comp_ref_idx
Unexecuted instantiation: initial_rc_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: inter_prediction.c:get_uni_comp_ref_idx
Unexecuted instantiation: intra_prediction.c:get_uni_comp_ref_idx
Unexecuted instantiation: md_rate_estimation.c:get_uni_comp_ref_idx
Unexecuted instantiation: mode_decision.c:get_uni_comp_ref_idx
Unexecuted instantiation: md_config_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: md_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: motion_estimation.c:get_uni_comp_ref_idx
Unexecuted instantiation: me_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: packetization_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: pic_analysis_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: pcs.c:get_uni_comp_ref_idx
Unexecuted instantiation: pd_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: pic_manager_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: product_coding_loop.c:get_uni_comp_ref_idx
Unexecuted instantiation: rc_aq.c:get_uni_comp_ref_idx
Unexecuted instantiation: rc_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: rc_rtc_cbr.c:get_uni_comp_ref_idx
Unexecuted instantiation: rc_vbr_cbr.c:get_uni_comp_ref_idx
Unexecuted instantiation: rd_cost.c:get_uni_comp_ref_idx
Unexecuted instantiation: reference_object.c:get_uni_comp_ref_idx
Unexecuted instantiation: resize.c:get_uni_comp_ref_idx
Unexecuted instantiation: resource_coordination_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: rest_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: restoration_pick.c:get_uni_comp_ref_idx
Unexecuted instantiation: src_ops_process.c:get_uni_comp_ref_idx
Unexecuted instantiation: super_res.c:get_uni_comp_ref_idx
Unexecuted instantiation: temporal_filtering.c:get_uni_comp_ref_idx
Unexecuted instantiation: transforms.c:get_uni_comp_ref_idx
Unexecuted instantiation: encode_txb_ref_c.c:get_uni_comp_ref_idx
Unexecuted instantiation: variance.c:get_uni_comp_ref_idx
Unexecuted instantiation: adaptive_mv_pred.c:get_uni_comp_ref_idx
Unexecuted instantiation: coding_loop.c:get_uni_comp_ref_idx
Unexecuted instantiation: coding_unit.c:get_uni_comp_ref_idx
Unexecuted instantiation: deblocking_filter.c:get_uni_comp_ref_idx
Unexecuted instantiation: global_me_cost.c:get_uni_comp_ref_idx
Unexecuted instantiation: rc_crf_cqp.c:get_uni_comp_ref_idx
472
473
0
static INLINE int8_t av1_ref_frame_type(const MvReferenceFrame* const rf) {
474
0
    if (rf[1] > INTRA_FRAME) {
475
0
        const int8_t uni_comp_ref_idx = get_uni_comp_ref_idx(rf);
476
0
        if (uni_comp_ref_idx >= 0) {
477
0
            assert((TOTAL_REFS_PER_FRAME + FWD_REFS * BWD_REFS + uni_comp_ref_idx) < MODE_CTX_REF_FRAMES);
478
0
            return TOTAL_REFS_PER_FRAME + FWD_REFS * BWD_REFS + uni_comp_ref_idx;
479
0
        } else {
480
0
            return TOTAL_REFS_PER_FRAME + FWD_RF_OFFSET(rf[0]) + BWD_RF_OFFSET(rf[1]) * FWD_REFS;
481
0
        }
482
0
    }
483
484
0
    return rf[0];
485
0
}
Unexecuted instantiation: enc_handle.c:av1_ref_frame_type
Unexecuted instantiation: enc_settings.c:av1_ref_frame_type
Unexecuted instantiation: av1me.c:av1_ref_frame_type
Unexecuted instantiation: cdef_process.c:av1_ref_frame_type
Unexecuted instantiation: dlf_process.c:av1_ref_frame_type
Unexecuted instantiation: enc_cdef.c:av1_ref_frame_type
Unexecuted instantiation: enc_dec_process.c:av1_ref_frame_type
Unexecuted instantiation: enc_inter_prediction.c:av1_ref_frame_type
Unexecuted instantiation: enc_intra_prediction.c:av1_ref_frame_type
Unexecuted instantiation: enc_mode_config.c:av1_ref_frame_type
Unexecuted instantiation: entropy_coding.c:av1_ref_frame_type
Unexecuted instantiation: ec_process.c:av1_ref_frame_type
Unexecuted instantiation: full_loop.c:av1_ref_frame_type
Unexecuted instantiation: initial_rc_process.c:av1_ref_frame_type
Unexecuted instantiation: inter_prediction.c:av1_ref_frame_type
Unexecuted instantiation: intra_prediction.c:av1_ref_frame_type
Unexecuted instantiation: md_rate_estimation.c:av1_ref_frame_type
Unexecuted instantiation: mode_decision.c:av1_ref_frame_type
Unexecuted instantiation: md_config_process.c:av1_ref_frame_type
Unexecuted instantiation: md_process.c:av1_ref_frame_type
Unexecuted instantiation: motion_estimation.c:av1_ref_frame_type
Unexecuted instantiation: me_process.c:av1_ref_frame_type
Unexecuted instantiation: packetization_process.c:av1_ref_frame_type
Unexecuted instantiation: pic_analysis_process.c:av1_ref_frame_type
Unexecuted instantiation: pcs.c:av1_ref_frame_type
Unexecuted instantiation: pd_process.c:av1_ref_frame_type
Unexecuted instantiation: pic_manager_process.c:av1_ref_frame_type
Unexecuted instantiation: product_coding_loop.c:av1_ref_frame_type
Unexecuted instantiation: rc_aq.c:av1_ref_frame_type
Unexecuted instantiation: rc_process.c:av1_ref_frame_type
Unexecuted instantiation: rc_rtc_cbr.c:av1_ref_frame_type
Unexecuted instantiation: rc_vbr_cbr.c:av1_ref_frame_type
Unexecuted instantiation: rd_cost.c:av1_ref_frame_type
Unexecuted instantiation: reference_object.c:av1_ref_frame_type
Unexecuted instantiation: resize.c:av1_ref_frame_type
Unexecuted instantiation: resource_coordination_process.c:av1_ref_frame_type
Unexecuted instantiation: rest_process.c:av1_ref_frame_type
Unexecuted instantiation: restoration_pick.c:av1_ref_frame_type
Unexecuted instantiation: src_ops_process.c:av1_ref_frame_type
Unexecuted instantiation: super_res.c:av1_ref_frame_type
Unexecuted instantiation: temporal_filtering.c:av1_ref_frame_type
Unexecuted instantiation: transforms.c:av1_ref_frame_type
Unexecuted instantiation: encode_txb_ref_c.c:av1_ref_frame_type
Unexecuted instantiation: variance.c:av1_ref_frame_type
Unexecuted instantiation: adaptive_mv_pred.c:av1_ref_frame_type
Unexecuted instantiation: coding_loop.c:av1_ref_frame_type
Unexecuted instantiation: coding_unit.c:av1_ref_frame_type
Unexecuted instantiation: deblocking_filter.c:av1_ref_frame_type
Unexecuted instantiation: global_me_cost.c:av1_ref_frame_type
Unexecuted instantiation: rc_crf_cqp.c:av1_ref_frame_type
486
487
static MvReferenceFrame ref_frame_map[TOTAL_COMP_REFS][2] = {
488
    {LAST_FRAME, BWDREF_FRAME},
489
    {LAST2_FRAME, BWDREF_FRAME},
490
    {LAST3_FRAME, BWDREF_FRAME},
491
    {GOLDEN_FRAME, BWDREF_FRAME},
492
    {LAST_FRAME, ALTREF2_FRAME},
493
    {LAST2_FRAME, ALTREF2_FRAME},
494
    {LAST3_FRAME, ALTREF2_FRAME},
495
    {GOLDEN_FRAME, ALTREF2_FRAME},
496
    {LAST_FRAME, ALTREF_FRAME},
497
    {LAST2_FRAME, ALTREF_FRAME},
498
    {LAST3_FRAME, ALTREF_FRAME},
499
    {GOLDEN_FRAME, ALTREF_FRAME},
500
    {LAST_FRAME, LAST2_FRAME},
501
    {LAST_FRAME, LAST3_FRAME},
502
    {LAST_FRAME, GOLDEN_FRAME},
503
    {BWDREF_FRAME, ALTREF_FRAME},
504
    // NOTE: Following reference frame pairs are not supported to be explicitly
505
    //       signalled, but they are possibly chosen by the use of skip_mode,
506
    //       which may use the most recent one-sided reference frame pair.
507
    {LAST2_FRAME, LAST3_FRAME},
508
    {LAST2_FRAME, GOLDEN_FRAME},
509
    {LAST3_FRAME, GOLDEN_FRAME},
510
    {BWDREF_FRAME, ALTREF2_FRAME},
511
    {ALTREF2_FRAME, ALTREF_FRAME}};
512
513
0
static INLINE void av1_set_ref_frame(MvReferenceFrame* rf, int8_t ref_frame_type) {
514
0
    if (ref_frame_type >= TOTAL_REFS_PER_FRAME) {
515
0
        rf[0] = ref_frame_map[ref_frame_type - TOTAL_REFS_PER_FRAME][0];
516
0
        rf[1] = ref_frame_map[ref_frame_type - TOTAL_REFS_PER_FRAME][1];
517
0
    } else {
518
0
        rf[0] = ref_frame_type;
519
0
        rf[1] = NONE_FRAME;
520
        // assert(ref_frame_type > NONE_FRAME); AMIR
521
0
    }
522
0
}
Unexecuted instantiation: enc_handle.c:av1_set_ref_frame
Unexecuted instantiation: enc_settings.c:av1_set_ref_frame
Unexecuted instantiation: av1me.c:av1_set_ref_frame
Unexecuted instantiation: cdef_process.c:av1_set_ref_frame
Unexecuted instantiation: dlf_process.c:av1_set_ref_frame
Unexecuted instantiation: enc_cdef.c:av1_set_ref_frame
Unexecuted instantiation: enc_dec_process.c:av1_set_ref_frame
Unexecuted instantiation: enc_inter_prediction.c:av1_set_ref_frame
Unexecuted instantiation: enc_intra_prediction.c:av1_set_ref_frame
Unexecuted instantiation: enc_mode_config.c:av1_set_ref_frame
Unexecuted instantiation: entropy_coding.c:av1_set_ref_frame
Unexecuted instantiation: ec_process.c:av1_set_ref_frame
Unexecuted instantiation: full_loop.c:av1_set_ref_frame
Unexecuted instantiation: initial_rc_process.c:av1_set_ref_frame
Unexecuted instantiation: inter_prediction.c:av1_set_ref_frame
Unexecuted instantiation: intra_prediction.c:av1_set_ref_frame
Unexecuted instantiation: md_rate_estimation.c:av1_set_ref_frame
Unexecuted instantiation: mode_decision.c:av1_set_ref_frame
Unexecuted instantiation: md_config_process.c:av1_set_ref_frame
Unexecuted instantiation: md_process.c:av1_set_ref_frame
Unexecuted instantiation: motion_estimation.c:av1_set_ref_frame
Unexecuted instantiation: me_process.c:av1_set_ref_frame
Unexecuted instantiation: packetization_process.c:av1_set_ref_frame
Unexecuted instantiation: pic_analysis_process.c:av1_set_ref_frame
Unexecuted instantiation: pcs.c:av1_set_ref_frame
Unexecuted instantiation: pd_process.c:av1_set_ref_frame
Unexecuted instantiation: pic_manager_process.c:av1_set_ref_frame
Unexecuted instantiation: product_coding_loop.c:av1_set_ref_frame
Unexecuted instantiation: rc_aq.c:av1_set_ref_frame
Unexecuted instantiation: rc_process.c:av1_set_ref_frame
Unexecuted instantiation: rc_rtc_cbr.c:av1_set_ref_frame
Unexecuted instantiation: rc_vbr_cbr.c:av1_set_ref_frame
Unexecuted instantiation: rd_cost.c:av1_set_ref_frame
Unexecuted instantiation: reference_object.c:av1_set_ref_frame
Unexecuted instantiation: resize.c:av1_set_ref_frame
Unexecuted instantiation: resource_coordination_process.c:av1_set_ref_frame
Unexecuted instantiation: rest_process.c:av1_set_ref_frame
Unexecuted instantiation: restoration_pick.c:av1_set_ref_frame
Unexecuted instantiation: src_ops_process.c:av1_set_ref_frame
Unexecuted instantiation: super_res.c:av1_set_ref_frame
Unexecuted instantiation: temporal_filtering.c:av1_set_ref_frame
Unexecuted instantiation: transforms.c:av1_set_ref_frame
Unexecuted instantiation: encode_txb_ref_c.c:av1_set_ref_frame
Unexecuted instantiation: variance.c:av1_set_ref_frame
Unexecuted instantiation: adaptive_mv_pred.c:av1_set_ref_frame
Unexecuted instantiation: coding_loop.c:av1_set_ref_frame
Unexecuted instantiation: coding_unit.c:av1_set_ref_frame
Unexecuted instantiation: deblocking_filter.c:av1_set_ref_frame
Unexecuted instantiation: global_me_cost.c:av1_set_ref_frame
Unexecuted instantiation: rc_crf_cqp.c:av1_set_ref_frame
523
524
/*
525
      |----------------------------------------------------------------|
526
      | ref_idx          0            1           2            3       |
527
      | List0            LAST        LAST2        LAST3        GOLD    |
528
      | List1            BWD         ALT2         ALT                  |
529
      |----------------------------------------------------------------|
530
*/
531
static uint8_t ref_type_to_list_idx[REFS_PER_FRAME + 1] = {0, 0, 0, 0, 0, 1, 1, 1};
532
533
7.11k
static INLINE uint8_t get_list_idx(uint8_t ref_type) {
534
7.11k
    return ref_type_to_list_idx[ref_type];
535
7.11k
}
Unexecuted instantiation: enc_handle.c:get_list_idx
Unexecuted instantiation: enc_settings.c:get_list_idx
Unexecuted instantiation: av1me.c:get_list_idx
Unexecuted instantiation: cdef_process.c:get_list_idx
Unexecuted instantiation: dlf_process.c:get_list_idx
Unexecuted instantiation: enc_cdef.c:get_list_idx
Unexecuted instantiation: enc_dec_process.c:get_list_idx
Unexecuted instantiation: enc_inter_prediction.c:get_list_idx
Unexecuted instantiation: enc_intra_prediction.c:get_list_idx
Unexecuted instantiation: enc_mode_config.c:get_list_idx
Unexecuted instantiation: entropy_coding.c:get_list_idx
ec_process.c:get_list_idx
Line
Count
Source
533
3.31k
static INLINE uint8_t get_list_idx(uint8_t ref_type) {
534
3.31k
    return ref_type_to_list_idx[ref_type];
535
3.31k
}
Unexecuted instantiation: full_loop.c:get_list_idx
Unexecuted instantiation: initial_rc_process.c:get_list_idx
Unexecuted instantiation: inter_prediction.c:get_list_idx
Unexecuted instantiation: intra_prediction.c:get_list_idx
Unexecuted instantiation: md_rate_estimation.c:get_list_idx
Unexecuted instantiation: mode_decision.c:get_list_idx
md_config_process.c:get_list_idx
Line
Count
Source
533
3.79k
static INLINE uint8_t get_list_idx(uint8_t ref_type) {
534
3.79k
    return ref_type_to_list_idx[ref_type];
535
3.79k
}
Unexecuted instantiation: md_process.c:get_list_idx
Unexecuted instantiation: motion_estimation.c:get_list_idx
Unexecuted instantiation: me_process.c:get_list_idx
Unexecuted instantiation: packetization_process.c:get_list_idx
Unexecuted instantiation: palette.c:get_list_idx
Unexecuted instantiation: pic_analysis_process.c:get_list_idx
Unexecuted instantiation: pcs.c:get_list_idx
Unexecuted instantiation: pd_process.c:get_list_idx
Unexecuted instantiation: pic_manager_process.c:get_list_idx
Unexecuted instantiation: product_coding_loop.c:get_list_idx
Unexecuted instantiation: rc_aq.c:get_list_idx
Unexecuted instantiation: rc_process.c:get_list_idx
Unexecuted instantiation: rc_rtc_cbr.c:get_list_idx
Unexecuted instantiation: rc_vbr_cbr.c:get_list_idx
Unexecuted instantiation: rd_cost.c:get_list_idx
Unexecuted instantiation: reference_object.c:get_list_idx
Unexecuted instantiation: resize.c:get_list_idx
Unexecuted instantiation: resource_coordination_process.c:get_list_idx
Unexecuted instantiation: rest_process.c:get_list_idx
Unexecuted instantiation: restoration_pick.c:get_list_idx
Unexecuted instantiation: segmentation.c:get_list_idx
Unexecuted instantiation: src_ops_process.c:get_list_idx
Unexecuted instantiation: super_res.c:get_list_idx
Unexecuted instantiation: temporal_filtering.c:get_list_idx
Unexecuted instantiation: transforms.c:get_list_idx
Unexecuted instantiation: encode_txb_ref_c.c:get_list_idx
Unexecuted instantiation: variance.c:get_list_idx
Unexecuted instantiation: adaptive_mv_pred.c:get_list_idx
Unexecuted instantiation: coding_loop.c:get_list_idx
Unexecuted instantiation: coding_unit.c:get_list_idx
Unexecuted instantiation: deblocking_filter.c:get_list_idx
Unexecuted instantiation: firstpass.c:get_list_idx
Unexecuted instantiation: global_me_cost.c:get_list_idx
Unexecuted instantiation: mcomp.c:get_list_idx
Unexecuted instantiation: pass2_strategy.c:get_list_idx
Unexecuted instantiation: rc_crf_cqp.c:get_list_idx
536
537
static uint8_t ref_type_to_ref_idx[REFS_PER_FRAME + 1] = {0, 0, 1, 2, 3, 0, 1, 2};
538
539
7.11k
static INLINE uint8_t get_ref_frame_idx(uint8_t ref_type) {
540
7.11k
    return ref_type_to_ref_idx[ref_type];
541
7.11k
};
Unexecuted instantiation: enc_handle.c:get_ref_frame_idx
Unexecuted instantiation: enc_settings.c:get_ref_frame_idx
Unexecuted instantiation: av1me.c:get_ref_frame_idx
Unexecuted instantiation: cdef_process.c:get_ref_frame_idx
Unexecuted instantiation: dlf_process.c:get_ref_frame_idx
Unexecuted instantiation: enc_cdef.c:get_ref_frame_idx
Unexecuted instantiation: enc_dec_process.c:get_ref_frame_idx
Unexecuted instantiation: enc_inter_prediction.c:get_ref_frame_idx
Unexecuted instantiation: enc_intra_prediction.c:get_ref_frame_idx
Unexecuted instantiation: enc_mode_config.c:get_ref_frame_idx
Unexecuted instantiation: entropy_coding.c:get_ref_frame_idx
ec_process.c:get_ref_frame_idx
Line
Count
Source
539
3.31k
static INLINE uint8_t get_ref_frame_idx(uint8_t ref_type) {
540
3.31k
    return ref_type_to_ref_idx[ref_type];
541
3.31k
};
Unexecuted instantiation: full_loop.c:get_ref_frame_idx
Unexecuted instantiation: initial_rc_process.c:get_ref_frame_idx
Unexecuted instantiation: inter_prediction.c:get_ref_frame_idx
Unexecuted instantiation: intra_prediction.c:get_ref_frame_idx
Unexecuted instantiation: md_rate_estimation.c:get_ref_frame_idx
Unexecuted instantiation: mode_decision.c:get_ref_frame_idx
md_config_process.c:get_ref_frame_idx
Line
Count
Source
539
3.79k
static INLINE uint8_t get_ref_frame_idx(uint8_t ref_type) {
540
3.79k
    return ref_type_to_ref_idx[ref_type];
541
3.79k
};
Unexecuted instantiation: md_process.c:get_ref_frame_idx
Unexecuted instantiation: motion_estimation.c:get_ref_frame_idx
Unexecuted instantiation: me_process.c:get_ref_frame_idx
Unexecuted instantiation: packetization_process.c:get_ref_frame_idx
Unexecuted instantiation: palette.c:get_ref_frame_idx
Unexecuted instantiation: pic_analysis_process.c:get_ref_frame_idx
Unexecuted instantiation: pcs.c:get_ref_frame_idx
Unexecuted instantiation: pd_process.c:get_ref_frame_idx
Unexecuted instantiation: pic_manager_process.c:get_ref_frame_idx
Unexecuted instantiation: product_coding_loop.c:get_ref_frame_idx
Unexecuted instantiation: rc_aq.c:get_ref_frame_idx
Unexecuted instantiation: rc_process.c:get_ref_frame_idx
Unexecuted instantiation: rc_rtc_cbr.c:get_ref_frame_idx
Unexecuted instantiation: rc_vbr_cbr.c:get_ref_frame_idx
Unexecuted instantiation: rd_cost.c:get_ref_frame_idx
Unexecuted instantiation: reference_object.c:get_ref_frame_idx
Unexecuted instantiation: resize.c:get_ref_frame_idx
Unexecuted instantiation: resource_coordination_process.c:get_ref_frame_idx
Unexecuted instantiation: rest_process.c:get_ref_frame_idx
Unexecuted instantiation: restoration_pick.c:get_ref_frame_idx
Unexecuted instantiation: segmentation.c:get_ref_frame_idx
Unexecuted instantiation: src_ops_process.c:get_ref_frame_idx
Unexecuted instantiation: super_res.c:get_ref_frame_idx
Unexecuted instantiation: temporal_filtering.c:get_ref_frame_idx
Unexecuted instantiation: transforms.c:get_ref_frame_idx
Unexecuted instantiation: encode_txb_ref_c.c:get_ref_frame_idx
Unexecuted instantiation: variance.c:get_ref_frame_idx
Unexecuted instantiation: adaptive_mv_pred.c:get_ref_frame_idx
Unexecuted instantiation: coding_loop.c:get_ref_frame_idx
Unexecuted instantiation: coding_unit.c:get_ref_frame_idx
Unexecuted instantiation: deblocking_filter.c:get_ref_frame_idx
Unexecuted instantiation: firstpass.c:get_ref_frame_idx
Unexecuted instantiation: global_me_cost.c:get_ref_frame_idx
Unexecuted instantiation: mcomp.c:get_ref_frame_idx
Unexecuted instantiation: pass2_strategy.c:get_ref_frame_idx
Unexecuted instantiation: rc_crf_cqp.c:get_ref_frame_idx
542
#if CONFIG_ENABLE_OBMC
543
int svt_av1_skip_u4x4_pred_in_obmc(BlockSize bsize, int dir, int subsampling_x, int subsampling_y);
544
#endif
545
int     svt_aom_get_relative_dist_enc(SeqHeader* seq_header, int ref_hint, int order_hint);
546
int16_t svt_aom_mode_context_analyzer(int16_t mode_context, const MvReferenceFrame* const rf);
547
548
#ifdef __cplusplus
549
}
550
#endif
551
#endif //EbInterPrediction_h