Coverage Report

Created: 2026-02-14 07:09

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/aom/av1/common/mv.h
Line
Count
Source
1
/*
2
 * Copyright (c) 2016, Alliance for Open Media. All rights reserved.
3
 *
4
 * This source code is subject to the terms of the BSD 2 Clause License and
5
 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6
 * was not distributed with this source code in the LICENSE file, you can
7
 * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8
 * Media Patent License 1.0 was not distributed with this source code in the
9
 * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10
 */
11
12
#ifndef AOM_AV1_COMMON_MV_H_
13
#define AOM_AV1_COMMON_MV_H_
14
15
#include <stdlib.h>
16
17
#include "av1/common/common.h"
18
#include "av1/common/common_data.h"
19
#include "aom_dsp/aom_filter.h"
20
#include "aom_dsp/flow_estimation/flow_estimation.h"
21
22
#ifdef __cplusplus
23
extern "C" {
24
#endif
25
26
1.19M
#define INVALID_MV 0x80008000
27
0
#define INVALID_MV_ROW_COL -32768
28
0
#define GET_MV_RAWPEL(x) (((x) + 3 + ((x) >= 0)) >> 3)
29
31.3M
#define GET_MV_SUBPEL(x) ((x)*8)
30
31
#define MARK_MV_INVALID(mv)                \
32
0
  do {                                     \
33
0
    ((int_mv *)(mv))->as_int = INVALID_MV; \
34
0
  } while (0)
35
0
#define CHECK_MV_EQUAL(x, y) (((x).row == (y).row) && ((x).col == (y).col))
36
37
// The motion vector in units of full pixel
38
typedef struct fullpel_mv {
39
  int16_t row;
40
  int16_t col;
41
} FULLPEL_MV;
42
43
// The motion vector in units of 1/8-pel
44
typedef struct mv {
45
  int16_t row;
46
  int16_t col;
47
} MV;
48
49
static const MV kZeroMv = { 0, 0 };
50
static const FULLPEL_MV kZeroFullMv = { 0, 0 };
51
52
typedef union int_mv {
53
  uint32_t as_int;
54
  MV as_mv;
55
  FULLPEL_MV as_fullmv;
56
} int_mv; /* facilitates faster equality tests and copies */
57
58
typedef struct mv32 {
59
  int32_t row;
60
  int32_t col;
61
} MV32;
62
63
// The mv limit for fullpel mvs
64
typedef struct {
65
  int col_min;
66
  int col_max;
67
  int row_min;
68
  int row_max;
69
} FullMvLimits;
70
71
// The mv limit for subpel mvs
72
typedef struct {
73
  int col_min;
74
  int col_max;
75
  int row_min;
76
  int row_max;
77
} SubpelMvLimits;
78
79
0
static inline FULLPEL_MV get_fullmv_from_mv(const MV *subpel_mv) {
80
0
  const FULLPEL_MV full_mv = { (int16_t)GET_MV_RAWPEL(subpel_mv->row),
81
0
                               (int16_t)GET_MV_RAWPEL(subpel_mv->col) };
82
0
  return full_mv;
83
0
}
Unexecuted instantiation: av1_dx_iface.c:get_fullmv_from_mv
Unexecuted instantiation: decodeframe.c:get_fullmv_from_mv
Unexecuted instantiation: decodemv.c:get_fullmv_from_mv
Unexecuted instantiation: decoder.c:get_fullmv_from_mv
Unexecuted instantiation: decodetxb.c:get_fullmv_from_mv
Unexecuted instantiation: detokenize.c:get_fullmv_from_mv
Unexecuted instantiation: obu.c:get_fullmv_from_mv
Unexecuted instantiation: av1_cx_iface.c:get_fullmv_from_mv
Unexecuted instantiation: allintra_vis.c:get_fullmv_from_mv
Unexecuted instantiation: av1_quantize.c:get_fullmv_from_mv
Unexecuted instantiation: bitstream.c:get_fullmv_from_mv
Unexecuted instantiation: context_tree.c:get_fullmv_from_mv
Unexecuted instantiation: encodeframe.c:get_fullmv_from_mv
Unexecuted instantiation: encodeframe_utils.c:get_fullmv_from_mv
Unexecuted instantiation: encodemb.c:get_fullmv_from_mv
Unexecuted instantiation: encodemv.c:get_fullmv_from_mv
Unexecuted instantiation: encoder.c:get_fullmv_from_mv
Unexecuted instantiation: encoder_utils.c:get_fullmv_from_mv
Unexecuted instantiation: encodetxb.c:get_fullmv_from_mv
Unexecuted instantiation: ethread.c:get_fullmv_from_mv
Unexecuted instantiation: firstpass.c:get_fullmv_from_mv
Unexecuted instantiation: global_motion_facade.c:get_fullmv_from_mv
Unexecuted instantiation: hash.c:get_fullmv_from_mv
Unexecuted instantiation: hash_motion.c:get_fullmv_from_mv
Unexecuted instantiation: hybrid_fwd_txfm.c:get_fullmv_from_mv
Unexecuted instantiation: level.c:get_fullmv_from_mv
Unexecuted instantiation: lookahead.c:get_fullmv_from_mv
Unexecuted instantiation: mcomp.c:get_fullmv_from_mv
Unexecuted instantiation: mv_prec.c:get_fullmv_from_mv
Unexecuted instantiation: palette.c:get_fullmv_from_mv
Unexecuted instantiation: partition_search.c:get_fullmv_from_mv
Unexecuted instantiation: partition_strategy.c:get_fullmv_from_mv
Unexecuted instantiation: pass2_strategy.c:get_fullmv_from_mv
Unexecuted instantiation: pickcdef.c:get_fullmv_from_mv
Unexecuted instantiation: picklpf.c:get_fullmv_from_mv
Unexecuted instantiation: pickrst.c:get_fullmv_from_mv
Unexecuted instantiation: ratectrl.c:get_fullmv_from_mv
Unexecuted instantiation: rd.c:get_fullmv_from_mv
Unexecuted instantiation: rdopt.c:get_fullmv_from_mv
Unexecuted instantiation: nonrd_pickmode.c:get_fullmv_from_mv
Unexecuted instantiation: nonrd_opt.c:get_fullmv_from_mv
Unexecuted instantiation: reconinter_enc.c:get_fullmv_from_mv
Unexecuted instantiation: segmentation.c:get_fullmv_from_mv
Unexecuted instantiation: speed_features.c:get_fullmv_from_mv
Unexecuted instantiation: superres_scale.c:get_fullmv_from_mv
Unexecuted instantiation: svc_layercontext.c:get_fullmv_from_mv
Unexecuted instantiation: temporal_filter.c:get_fullmv_from_mv
Unexecuted instantiation: tokenize.c:get_fullmv_from_mv
Unexecuted instantiation: tpl_model.c:get_fullmv_from_mv
Unexecuted instantiation: tx_search.c:get_fullmv_from_mv
Unexecuted instantiation: txb_rdopt.c:get_fullmv_from_mv
Unexecuted instantiation: intra_mode_search.c:get_fullmv_from_mv
Unexecuted instantiation: var_based_part.c:get_fullmv_from_mv
Unexecuted instantiation: av1_noise_estimate.c:get_fullmv_from_mv
Unexecuted instantiation: dwt.c:get_fullmv_from_mv
Unexecuted instantiation: aom_dsp_rtcd.c:get_fullmv_from_mv
Unexecuted instantiation: av1_rtcd.c:get_fullmv_from_mv
Unexecuted instantiation: aom_convolve.c:get_fullmv_from_mv
Unexecuted instantiation: blend_a64_mask.c:get_fullmv_from_mv
Unexecuted instantiation: avg.c:get_fullmv_from_mv
Unexecuted instantiation: blk_sse_sum.c:get_fullmv_from_mv
Unexecuted instantiation: fwd_txfm.c:get_fullmv_from_mv
Unexecuted instantiation: psnr.c:get_fullmv_from_mv
Unexecuted instantiation: quantize.c:get_fullmv_from_mv
Unexecuted instantiation: sad.c:get_fullmv_from_mv
Unexecuted instantiation: sad_av1.c:get_fullmv_from_mv
Unexecuted instantiation: subtract.c:get_fullmv_from_mv
Unexecuted instantiation: sse.c:get_fullmv_from_mv
Unexecuted instantiation: sum_squares.c:get_fullmv_from_mv
Unexecuted instantiation: variance.c:get_fullmv_from_mv
Unexecuted instantiation: pyramid.c:get_fullmv_from_mv
Unexecuted instantiation: noise_util.c:get_fullmv_from_mv
Unexecuted instantiation: alloccommon.c:get_fullmv_from_mv
Unexecuted instantiation: av1_loopfilter.c:get_fullmv_from_mv
Unexecuted instantiation: blockd.c:get_fullmv_from_mv
Unexecuted instantiation: cdef.c:get_fullmv_from_mv
Unexecuted instantiation: cdef_block.c:get_fullmv_from_mv
Unexecuted instantiation: cfl.c:get_fullmv_from_mv
Unexecuted instantiation: debugmodes.c:get_fullmv_from_mv
Unexecuted instantiation: entropy.c:get_fullmv_from_mv
Unexecuted instantiation: entropymode.c:get_fullmv_from_mv
Unexecuted instantiation: entropymv.c:get_fullmv_from_mv
Unexecuted instantiation: idct.c:get_fullmv_from_mv
Unexecuted instantiation: mvref_common.c:get_fullmv_from_mv
Unexecuted instantiation: pred_common.c:get_fullmv_from_mv
Unexecuted instantiation: quant_common.c:get_fullmv_from_mv
Unexecuted instantiation: reconinter.c:get_fullmv_from_mv
Unexecuted instantiation: reconintra.c:get_fullmv_from_mv
Unexecuted instantiation: resize.c:get_fullmv_from_mv
Unexecuted instantiation: restoration.c:get_fullmv_from_mv
Unexecuted instantiation: scale.c:get_fullmv_from_mv
Unexecuted instantiation: scan.c:get_fullmv_from_mv
Unexecuted instantiation: seg_common.c:get_fullmv_from_mv
Unexecuted instantiation: thread_common.c:get_fullmv_from_mv
Unexecuted instantiation: tile_common.c:get_fullmv_from_mv
Unexecuted instantiation: txb_common.c:get_fullmv_from_mv
Unexecuted instantiation: warped_motion.c:get_fullmv_from_mv
Unexecuted instantiation: aq_complexity.c:get_fullmv_from_mv
Unexecuted instantiation: aq_cyclicrefresh.c:get_fullmv_from_mv
Unexecuted instantiation: aq_variance.c:get_fullmv_from_mv
Unexecuted instantiation: av1_fwd_txfm2d.c:get_fullmv_from_mv
Unexecuted instantiation: cnn.c:get_fullmv_from_mv
Unexecuted instantiation: compound_type.c:get_fullmv_from_mv
Unexecuted instantiation: encode_strategy.c:get_fullmv_from_mv
Unexecuted instantiation: global_motion.c:get_fullmv_from_mv
Unexecuted instantiation: gop_structure.c:get_fullmv_from_mv
Unexecuted instantiation: interp_search.c:get_fullmv_from_mv
Unexecuted instantiation: ml.c:get_fullmv_from_mv
Unexecuted instantiation: motion_search_facade.c:get_fullmv_from_mv
Unexecuted instantiation: wedge_utils.c:get_fullmv_from_mv
Unexecuted instantiation: blend_a64_hmask.c:get_fullmv_from_mv
Unexecuted instantiation: blend_a64_vmask.c:get_fullmv_from_mv
Unexecuted instantiation: intrapred.c:get_fullmv_from_mv
Unexecuted instantiation: loopfilter.c:get_fullmv_from_mv
Unexecuted instantiation: fft.c:get_fullmv_from_mv
Unexecuted instantiation: corner_match.c:get_fullmv_from_mv
Unexecuted instantiation: disflow.c:get_fullmv_from_mv
Unexecuted instantiation: av1_inv_txfm2d.c:get_fullmv_from_mv
Unexecuted instantiation: av1_txfm.c:get_fullmv_from_mv
Unexecuted instantiation: convolve.c:get_fullmv_from_mv
Unexecuted instantiation: av1_fwd_txfm1d.c:get_fullmv_from_mv
Unexecuted instantiation: av1_inv_txfm1d.c:get_fullmv_from_mv
84
85
12.5k
static inline MV get_mv_from_fullmv(const FULLPEL_MV *full_mv) {
86
12.5k
  const MV subpel_mv = { (int16_t)GET_MV_SUBPEL(full_mv->row),
87
12.5k
                         (int16_t)GET_MV_SUBPEL(full_mv->col) };
88
12.5k
  return subpel_mv;
89
12.5k
}
Unexecuted instantiation: av1_dx_iface.c:get_mv_from_fullmv
Unexecuted instantiation: decodeframe.c:get_mv_from_fullmv
decodemv.c:get_mv_from_fullmv
Line
Count
Source
85
12.5k
static inline MV get_mv_from_fullmv(const FULLPEL_MV *full_mv) {
86
12.5k
  const MV subpel_mv = { (int16_t)GET_MV_SUBPEL(full_mv->row),
87
12.5k
                         (int16_t)GET_MV_SUBPEL(full_mv->col) };
88
12.5k
  return subpel_mv;
89
12.5k
}
Unexecuted instantiation: decoder.c:get_mv_from_fullmv
Unexecuted instantiation: decodetxb.c:get_mv_from_fullmv
Unexecuted instantiation: detokenize.c:get_mv_from_fullmv
Unexecuted instantiation: obu.c:get_mv_from_fullmv
Unexecuted instantiation: av1_cx_iface.c:get_mv_from_fullmv
Unexecuted instantiation: allintra_vis.c:get_mv_from_fullmv
Unexecuted instantiation: av1_quantize.c:get_mv_from_fullmv
Unexecuted instantiation: bitstream.c:get_mv_from_fullmv
Unexecuted instantiation: context_tree.c:get_mv_from_fullmv
Unexecuted instantiation: encodeframe.c:get_mv_from_fullmv
Unexecuted instantiation: encodeframe_utils.c:get_mv_from_fullmv
Unexecuted instantiation: encodemb.c:get_mv_from_fullmv
Unexecuted instantiation: encodemv.c:get_mv_from_fullmv
Unexecuted instantiation: encoder.c:get_mv_from_fullmv
Unexecuted instantiation: encoder_utils.c:get_mv_from_fullmv
Unexecuted instantiation: encodetxb.c:get_mv_from_fullmv
Unexecuted instantiation: ethread.c:get_mv_from_fullmv
Unexecuted instantiation: firstpass.c:get_mv_from_fullmv
Unexecuted instantiation: global_motion_facade.c:get_mv_from_fullmv
Unexecuted instantiation: hash.c:get_mv_from_fullmv
Unexecuted instantiation: hash_motion.c:get_mv_from_fullmv
Unexecuted instantiation: hybrid_fwd_txfm.c:get_mv_from_fullmv
Unexecuted instantiation: level.c:get_mv_from_fullmv
Unexecuted instantiation: lookahead.c:get_mv_from_fullmv
Unexecuted instantiation: mcomp.c:get_mv_from_fullmv
Unexecuted instantiation: mv_prec.c:get_mv_from_fullmv
Unexecuted instantiation: palette.c:get_mv_from_fullmv
Unexecuted instantiation: partition_search.c:get_mv_from_fullmv
Unexecuted instantiation: partition_strategy.c:get_mv_from_fullmv
Unexecuted instantiation: pass2_strategy.c:get_mv_from_fullmv
Unexecuted instantiation: pickcdef.c:get_mv_from_fullmv
Unexecuted instantiation: picklpf.c:get_mv_from_fullmv
Unexecuted instantiation: pickrst.c:get_mv_from_fullmv
Unexecuted instantiation: ratectrl.c:get_mv_from_fullmv
Unexecuted instantiation: rd.c:get_mv_from_fullmv
Unexecuted instantiation: rdopt.c:get_mv_from_fullmv
Unexecuted instantiation: nonrd_pickmode.c:get_mv_from_fullmv
Unexecuted instantiation: nonrd_opt.c:get_mv_from_fullmv
Unexecuted instantiation: reconinter_enc.c:get_mv_from_fullmv
Unexecuted instantiation: segmentation.c:get_mv_from_fullmv
Unexecuted instantiation: speed_features.c:get_mv_from_fullmv
Unexecuted instantiation: superres_scale.c:get_mv_from_fullmv
Unexecuted instantiation: svc_layercontext.c:get_mv_from_fullmv
Unexecuted instantiation: temporal_filter.c:get_mv_from_fullmv
Unexecuted instantiation: tokenize.c:get_mv_from_fullmv
Unexecuted instantiation: tpl_model.c:get_mv_from_fullmv
Unexecuted instantiation: tx_search.c:get_mv_from_fullmv
Unexecuted instantiation: txb_rdopt.c:get_mv_from_fullmv
Unexecuted instantiation: intra_mode_search.c:get_mv_from_fullmv
Unexecuted instantiation: var_based_part.c:get_mv_from_fullmv
Unexecuted instantiation: av1_noise_estimate.c:get_mv_from_fullmv
Unexecuted instantiation: dwt.c:get_mv_from_fullmv
Unexecuted instantiation: aom_dsp_rtcd.c:get_mv_from_fullmv
Unexecuted instantiation: av1_rtcd.c:get_mv_from_fullmv
Unexecuted instantiation: aom_convolve.c:get_mv_from_fullmv
Unexecuted instantiation: blend_a64_mask.c:get_mv_from_fullmv
Unexecuted instantiation: avg.c:get_mv_from_fullmv
Unexecuted instantiation: blk_sse_sum.c:get_mv_from_fullmv
Unexecuted instantiation: fwd_txfm.c:get_mv_from_fullmv
Unexecuted instantiation: psnr.c:get_mv_from_fullmv
Unexecuted instantiation: quantize.c:get_mv_from_fullmv
Unexecuted instantiation: sad.c:get_mv_from_fullmv
Unexecuted instantiation: sad_av1.c:get_mv_from_fullmv
Unexecuted instantiation: subtract.c:get_mv_from_fullmv
Unexecuted instantiation: sse.c:get_mv_from_fullmv
Unexecuted instantiation: sum_squares.c:get_mv_from_fullmv
Unexecuted instantiation: variance.c:get_mv_from_fullmv
Unexecuted instantiation: pyramid.c:get_mv_from_fullmv
Unexecuted instantiation: noise_util.c:get_mv_from_fullmv
Unexecuted instantiation: alloccommon.c:get_mv_from_fullmv
Unexecuted instantiation: av1_loopfilter.c:get_mv_from_fullmv
Unexecuted instantiation: blockd.c:get_mv_from_fullmv
Unexecuted instantiation: cdef.c:get_mv_from_fullmv
Unexecuted instantiation: cdef_block.c:get_mv_from_fullmv
Unexecuted instantiation: cfl.c:get_mv_from_fullmv
Unexecuted instantiation: debugmodes.c:get_mv_from_fullmv
Unexecuted instantiation: entropy.c:get_mv_from_fullmv
Unexecuted instantiation: entropymode.c:get_mv_from_fullmv
Unexecuted instantiation: entropymv.c:get_mv_from_fullmv
Unexecuted instantiation: idct.c:get_mv_from_fullmv
Unexecuted instantiation: mvref_common.c:get_mv_from_fullmv
Unexecuted instantiation: pred_common.c:get_mv_from_fullmv
Unexecuted instantiation: quant_common.c:get_mv_from_fullmv
Unexecuted instantiation: reconinter.c:get_mv_from_fullmv
Unexecuted instantiation: reconintra.c:get_mv_from_fullmv
Unexecuted instantiation: resize.c:get_mv_from_fullmv
Unexecuted instantiation: restoration.c:get_mv_from_fullmv
Unexecuted instantiation: scale.c:get_mv_from_fullmv
Unexecuted instantiation: scan.c:get_mv_from_fullmv
Unexecuted instantiation: seg_common.c:get_mv_from_fullmv
Unexecuted instantiation: thread_common.c:get_mv_from_fullmv
Unexecuted instantiation: tile_common.c:get_mv_from_fullmv
Unexecuted instantiation: txb_common.c:get_mv_from_fullmv
Unexecuted instantiation: warped_motion.c:get_mv_from_fullmv
Unexecuted instantiation: aq_complexity.c:get_mv_from_fullmv
Unexecuted instantiation: aq_cyclicrefresh.c:get_mv_from_fullmv
Unexecuted instantiation: aq_variance.c:get_mv_from_fullmv
Unexecuted instantiation: av1_fwd_txfm2d.c:get_mv_from_fullmv
Unexecuted instantiation: cnn.c:get_mv_from_fullmv
Unexecuted instantiation: compound_type.c:get_mv_from_fullmv
Unexecuted instantiation: encode_strategy.c:get_mv_from_fullmv
Unexecuted instantiation: global_motion.c:get_mv_from_fullmv
Unexecuted instantiation: gop_structure.c:get_mv_from_fullmv
Unexecuted instantiation: interp_search.c:get_mv_from_fullmv
Unexecuted instantiation: ml.c:get_mv_from_fullmv
Unexecuted instantiation: motion_search_facade.c:get_mv_from_fullmv
Unexecuted instantiation: wedge_utils.c:get_mv_from_fullmv
Unexecuted instantiation: blend_a64_hmask.c:get_mv_from_fullmv
Unexecuted instantiation: blend_a64_vmask.c:get_mv_from_fullmv
Unexecuted instantiation: intrapred.c:get_mv_from_fullmv
Unexecuted instantiation: loopfilter.c:get_mv_from_fullmv
Unexecuted instantiation: fft.c:get_mv_from_fullmv
Unexecuted instantiation: corner_match.c:get_mv_from_fullmv
Unexecuted instantiation: disflow.c:get_mv_from_fullmv
Unexecuted instantiation: av1_inv_txfm2d.c:get_mv_from_fullmv
Unexecuted instantiation: av1_txfm.c:get_mv_from_fullmv
Unexecuted instantiation: convolve.c:get_mv_from_fullmv
Unexecuted instantiation: av1_fwd_txfm1d.c:get_mv_from_fullmv
Unexecuted instantiation: av1_inv_txfm1d.c:get_mv_from_fullmv
90
91
12.5k
static inline void convert_fullmv_to_mv(int_mv *mv) {
92
12.5k
  mv->as_mv = get_mv_from_fullmv(&mv->as_fullmv);
93
12.5k
}
Unexecuted instantiation: av1_dx_iface.c:convert_fullmv_to_mv
Unexecuted instantiation: decodeframe.c:convert_fullmv_to_mv
decodemv.c:convert_fullmv_to_mv
Line
Count
Source
91
12.5k
static inline void convert_fullmv_to_mv(int_mv *mv) {
92
12.5k
  mv->as_mv = get_mv_from_fullmv(&mv->as_fullmv);
93
12.5k
}
Unexecuted instantiation: decoder.c:convert_fullmv_to_mv
Unexecuted instantiation: decodetxb.c:convert_fullmv_to_mv
Unexecuted instantiation: detokenize.c:convert_fullmv_to_mv
Unexecuted instantiation: obu.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_cx_iface.c:convert_fullmv_to_mv
Unexecuted instantiation: allintra_vis.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_quantize.c:convert_fullmv_to_mv
Unexecuted instantiation: bitstream.c:convert_fullmv_to_mv
Unexecuted instantiation: context_tree.c:convert_fullmv_to_mv
Unexecuted instantiation: encodeframe.c:convert_fullmv_to_mv
Unexecuted instantiation: encodeframe_utils.c:convert_fullmv_to_mv
Unexecuted instantiation: encodemb.c:convert_fullmv_to_mv
Unexecuted instantiation: encodemv.c:convert_fullmv_to_mv
Unexecuted instantiation: encoder.c:convert_fullmv_to_mv
Unexecuted instantiation: encoder_utils.c:convert_fullmv_to_mv
Unexecuted instantiation: encodetxb.c:convert_fullmv_to_mv
Unexecuted instantiation: ethread.c:convert_fullmv_to_mv
Unexecuted instantiation: firstpass.c:convert_fullmv_to_mv
Unexecuted instantiation: global_motion_facade.c:convert_fullmv_to_mv
Unexecuted instantiation: hash.c:convert_fullmv_to_mv
Unexecuted instantiation: hash_motion.c:convert_fullmv_to_mv
Unexecuted instantiation: hybrid_fwd_txfm.c:convert_fullmv_to_mv
Unexecuted instantiation: level.c:convert_fullmv_to_mv
Unexecuted instantiation: lookahead.c:convert_fullmv_to_mv
Unexecuted instantiation: mcomp.c:convert_fullmv_to_mv
Unexecuted instantiation: mv_prec.c:convert_fullmv_to_mv
Unexecuted instantiation: palette.c:convert_fullmv_to_mv
Unexecuted instantiation: partition_search.c:convert_fullmv_to_mv
Unexecuted instantiation: partition_strategy.c:convert_fullmv_to_mv
Unexecuted instantiation: pass2_strategy.c:convert_fullmv_to_mv
Unexecuted instantiation: pickcdef.c:convert_fullmv_to_mv
Unexecuted instantiation: picklpf.c:convert_fullmv_to_mv
Unexecuted instantiation: pickrst.c:convert_fullmv_to_mv
Unexecuted instantiation: ratectrl.c:convert_fullmv_to_mv
Unexecuted instantiation: rd.c:convert_fullmv_to_mv
Unexecuted instantiation: rdopt.c:convert_fullmv_to_mv
Unexecuted instantiation: nonrd_pickmode.c:convert_fullmv_to_mv
Unexecuted instantiation: nonrd_opt.c:convert_fullmv_to_mv
Unexecuted instantiation: reconinter_enc.c:convert_fullmv_to_mv
Unexecuted instantiation: segmentation.c:convert_fullmv_to_mv
Unexecuted instantiation: speed_features.c:convert_fullmv_to_mv
Unexecuted instantiation: superres_scale.c:convert_fullmv_to_mv
Unexecuted instantiation: svc_layercontext.c:convert_fullmv_to_mv
Unexecuted instantiation: temporal_filter.c:convert_fullmv_to_mv
Unexecuted instantiation: tokenize.c:convert_fullmv_to_mv
Unexecuted instantiation: tpl_model.c:convert_fullmv_to_mv
Unexecuted instantiation: tx_search.c:convert_fullmv_to_mv
Unexecuted instantiation: txb_rdopt.c:convert_fullmv_to_mv
Unexecuted instantiation: intra_mode_search.c:convert_fullmv_to_mv
Unexecuted instantiation: var_based_part.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_noise_estimate.c:convert_fullmv_to_mv
Unexecuted instantiation: dwt.c:convert_fullmv_to_mv
Unexecuted instantiation: aom_dsp_rtcd.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_rtcd.c:convert_fullmv_to_mv
Unexecuted instantiation: aom_convolve.c:convert_fullmv_to_mv
Unexecuted instantiation: blend_a64_mask.c:convert_fullmv_to_mv
Unexecuted instantiation: avg.c:convert_fullmv_to_mv
Unexecuted instantiation: blk_sse_sum.c:convert_fullmv_to_mv
Unexecuted instantiation: fwd_txfm.c:convert_fullmv_to_mv
Unexecuted instantiation: psnr.c:convert_fullmv_to_mv
Unexecuted instantiation: quantize.c:convert_fullmv_to_mv
Unexecuted instantiation: sad.c:convert_fullmv_to_mv
Unexecuted instantiation: sad_av1.c:convert_fullmv_to_mv
Unexecuted instantiation: subtract.c:convert_fullmv_to_mv
Unexecuted instantiation: sse.c:convert_fullmv_to_mv
Unexecuted instantiation: sum_squares.c:convert_fullmv_to_mv
Unexecuted instantiation: variance.c:convert_fullmv_to_mv
Unexecuted instantiation: pyramid.c:convert_fullmv_to_mv
Unexecuted instantiation: noise_util.c:convert_fullmv_to_mv
Unexecuted instantiation: alloccommon.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_loopfilter.c:convert_fullmv_to_mv
Unexecuted instantiation: blockd.c:convert_fullmv_to_mv
Unexecuted instantiation: cdef.c:convert_fullmv_to_mv
Unexecuted instantiation: cdef_block.c:convert_fullmv_to_mv
Unexecuted instantiation: cfl.c:convert_fullmv_to_mv
Unexecuted instantiation: debugmodes.c:convert_fullmv_to_mv
Unexecuted instantiation: entropy.c:convert_fullmv_to_mv
Unexecuted instantiation: entropymode.c:convert_fullmv_to_mv
Unexecuted instantiation: entropymv.c:convert_fullmv_to_mv
Unexecuted instantiation: idct.c:convert_fullmv_to_mv
Unexecuted instantiation: mvref_common.c:convert_fullmv_to_mv
Unexecuted instantiation: pred_common.c:convert_fullmv_to_mv
Unexecuted instantiation: quant_common.c:convert_fullmv_to_mv
Unexecuted instantiation: reconinter.c:convert_fullmv_to_mv
Unexecuted instantiation: reconintra.c:convert_fullmv_to_mv
Unexecuted instantiation: resize.c:convert_fullmv_to_mv
Unexecuted instantiation: restoration.c:convert_fullmv_to_mv
Unexecuted instantiation: scale.c:convert_fullmv_to_mv
Unexecuted instantiation: scan.c:convert_fullmv_to_mv
Unexecuted instantiation: seg_common.c:convert_fullmv_to_mv
Unexecuted instantiation: thread_common.c:convert_fullmv_to_mv
Unexecuted instantiation: tile_common.c:convert_fullmv_to_mv
Unexecuted instantiation: txb_common.c:convert_fullmv_to_mv
Unexecuted instantiation: warped_motion.c:convert_fullmv_to_mv
Unexecuted instantiation: aq_complexity.c:convert_fullmv_to_mv
Unexecuted instantiation: aq_cyclicrefresh.c:convert_fullmv_to_mv
Unexecuted instantiation: aq_variance.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_fwd_txfm2d.c:convert_fullmv_to_mv
Unexecuted instantiation: cnn.c:convert_fullmv_to_mv
Unexecuted instantiation: compound_type.c:convert_fullmv_to_mv
Unexecuted instantiation: encode_strategy.c:convert_fullmv_to_mv
Unexecuted instantiation: global_motion.c:convert_fullmv_to_mv
Unexecuted instantiation: gop_structure.c:convert_fullmv_to_mv
Unexecuted instantiation: interp_search.c:convert_fullmv_to_mv
Unexecuted instantiation: ml.c:convert_fullmv_to_mv
Unexecuted instantiation: motion_search_facade.c:convert_fullmv_to_mv
Unexecuted instantiation: wedge_utils.c:convert_fullmv_to_mv
Unexecuted instantiation: blend_a64_hmask.c:convert_fullmv_to_mv
Unexecuted instantiation: blend_a64_vmask.c:convert_fullmv_to_mv
Unexecuted instantiation: intrapred.c:convert_fullmv_to_mv
Unexecuted instantiation: loopfilter.c:convert_fullmv_to_mv
Unexecuted instantiation: fft.c:convert_fullmv_to_mv
Unexecuted instantiation: corner_match.c:convert_fullmv_to_mv
Unexecuted instantiation: disflow.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_inv_txfm2d.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_txfm.c:convert_fullmv_to_mv
Unexecuted instantiation: convolve.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_fwd_txfm1d.c:convert_fullmv_to_mv
Unexecuted instantiation: av1_inv_txfm1d.c:convert_fullmv_to_mv
94
95
// Bits of precision used for the model
96
971k
#define WARPEDMODEL_PREC_BITS 16
97
98
8.77k
#define WARPEDMODEL_TRANS_CLAMP (128 << WARPEDMODEL_PREC_BITS)
99
17.5k
#define WARPEDMODEL_NONDIAGAFFINE_CLAMP (1 << (WARPEDMODEL_PREC_BITS - 3))
100
101
// Bits of subpel precision for warped interpolation
102
5.92M
#define WARPEDPIXEL_PREC_BITS 6
103
5.92M
#define WARPEDPIXEL_PREC_SHIFTS (1 << WARPEDPIXEL_PREC_BITS)
104
105
426k
#define WARP_PARAM_REDUCE_BITS 6
106
107
#define WARPEDDIFF_PREC_BITS (WARPEDMODEL_PREC_BITS - WARPEDPIXEL_PREC_BITS)
108
109
typedef struct {
110
  int global_warp_allowed;
111
  int local_warp_allowed;
112
} WarpTypesAllowed;
113
114
// The order of values in the wmmat matrix below is best described
115
// by the affine transformation:
116
//      [x'     (m2 m3 m0   [x
117
//  z .  y'  =   m4 m5 m1 *  y
118
//       1]       0  0 1)    1]
119
typedef struct {
120
  int32_t wmmat[MAX_PARAMDIM];
121
  int16_t alpha, beta, gamma, delta;
122
  TransformationType wmtype;
123
  int8_t invalid;
124
} WarpedMotionParams;
125
126
/* clang-format off */
127
static const WarpedMotionParams default_warp_params = {
128
  { 0, 0, (1 << WARPEDMODEL_PREC_BITS), 0, 0, (1 << WARPEDMODEL_PREC_BITS) },
129
  0, 0, 0, 0,
130
  IDENTITY,
131
  0,
132
};
133
/* clang-format on */
134
135
// The following constants describe the various precisions
136
// of different parameters in the global motion experiment.
137
//
138
// Given the general homography:
139
//      [x'     (a  b  c   [x
140
//  z .  y'  =   d  e  f *  y
141
//       1]      g  h  i)    1]
142
//
143
// Constants using the name ALPHA here are related to parameters
144
// a, b, d, e. Constants using the name TRANS are related
145
// to parameters c and f.
146
//
147
// Anything ending in PREC_BITS is the number of bits of precision
148
// to maintain when converting from double to integer.
149
//
150
// The ABS parameters are used to create an upper and lower bound
151
// for each parameter. In other words, after a parameter is integerized
152
// it is clamped between -(1 << ABS_XXX_BITS) and (1 << ABS_XXX_BITS).
153
//
154
// XXX_PREC_DIFF and XXX_DECODE_FACTOR
155
// are computed once here to prevent repetitive
156
// computation on the decoder side. These are
157
// to allow the global motion parameters to be encoded in a lower
158
// precision than the warped model precision. This means that they
159
// need to be changed to warped precision when they are decoded.
160
//
161
// XX_MIN, XX_MAX are also computed to avoid repeated computation
162
163
139k
#define SUBEXPFIN_K 3
164
59.8k
#define GM_TRANS_PREC_BITS 6
165
32.8k
#define GM_ABS_TRANS_BITS 12
166
5.74k
#define GM_ABS_TRANS_ONLY_BITS (GM_ABS_TRANS_BITS - GM_TRANS_PREC_BITS + 3)
167
54.1k
#define GM_TRANS_PREC_DIFF (WARPEDMODEL_PREC_BITS - GM_TRANS_PREC_BITS)
168
33.1k
#define GM_TRANS_ONLY_PREC_DIFF (WARPEDMODEL_PREC_BITS - 3)
169
27.0k
#define GM_TRANS_DECODE_FACTOR (1 << GM_TRANS_PREC_DIFF)
170
5.74k
#define GM_TRANS_ONLY_DECODE_FACTOR (1 << GM_TRANS_ONLY_PREC_DIFF)
171
172
184k
#define GM_ALPHA_PREC_BITS 15
173
73.8k
#define GM_ABS_ALPHA_BITS 12
174
147k
#define GM_ALPHA_PREC_DIFF (WARPEDMODEL_PREC_BITS - GM_ALPHA_PREC_BITS)
175
73.8k
#define GM_ALPHA_DECODE_FACTOR (1 << GM_ALPHA_PREC_DIFF)
176
177
0
#define GM_TRANS_MAX (1 << GM_ABS_TRANS_BITS)
178
73.8k
#define GM_ALPHA_MAX (1 << GM_ABS_ALPHA_BITS)
179
180
0
#define GM_TRANS_MIN -GM_TRANS_MAX
181
0
#define GM_ALPHA_MIN -GM_ALPHA_MAX
182
183
36.7k
static inline int block_center_x(int mi_col, BLOCK_SIZE bs) {
184
36.7k
  const int bw = block_size_wide[bs];
185
36.7k
  return mi_col * MI_SIZE + bw / 2 - 1;
186
36.7k
}
Unexecuted instantiation: av1_dx_iface.c:block_center_x
Unexecuted instantiation: decodeframe.c:block_center_x
decodemv.c:block_center_x
Line
Count
Source
183
9.85k
static inline int block_center_x(int mi_col, BLOCK_SIZE bs) {
184
9.85k
  const int bw = block_size_wide[bs];
185
9.85k
  return mi_col * MI_SIZE + bw / 2 - 1;
186
9.85k
}
Unexecuted instantiation: decoder.c:block_center_x
Unexecuted instantiation: decodetxb.c:block_center_x
Unexecuted instantiation: detokenize.c:block_center_x
Unexecuted instantiation: obu.c:block_center_x
Unexecuted instantiation: av1_cx_iface.c:block_center_x
Unexecuted instantiation: allintra_vis.c:block_center_x
Unexecuted instantiation: av1_quantize.c:block_center_x
Unexecuted instantiation: bitstream.c:block_center_x
Unexecuted instantiation: context_tree.c:block_center_x
Unexecuted instantiation: encodeframe.c:block_center_x
Unexecuted instantiation: encodeframe_utils.c:block_center_x
Unexecuted instantiation: encodemb.c:block_center_x
Unexecuted instantiation: encodemv.c:block_center_x
Unexecuted instantiation: encoder.c:block_center_x
Unexecuted instantiation: encoder_utils.c:block_center_x
Unexecuted instantiation: encodetxb.c:block_center_x
Unexecuted instantiation: ethread.c:block_center_x
Unexecuted instantiation: firstpass.c:block_center_x
Unexecuted instantiation: global_motion_facade.c:block_center_x
Unexecuted instantiation: hash.c:block_center_x
Unexecuted instantiation: hash_motion.c:block_center_x
Unexecuted instantiation: hybrid_fwd_txfm.c:block_center_x
Unexecuted instantiation: level.c:block_center_x
Unexecuted instantiation: lookahead.c:block_center_x
Unexecuted instantiation: mcomp.c:block_center_x
Unexecuted instantiation: mv_prec.c:block_center_x
Unexecuted instantiation: palette.c:block_center_x
Unexecuted instantiation: partition_search.c:block_center_x
Unexecuted instantiation: partition_strategy.c:block_center_x
Unexecuted instantiation: pass2_strategy.c:block_center_x
Unexecuted instantiation: pickcdef.c:block_center_x
Unexecuted instantiation: picklpf.c:block_center_x
Unexecuted instantiation: pickrst.c:block_center_x
Unexecuted instantiation: ratectrl.c:block_center_x
Unexecuted instantiation: rd.c:block_center_x
Unexecuted instantiation: rdopt.c:block_center_x
Unexecuted instantiation: nonrd_pickmode.c:block_center_x
Unexecuted instantiation: nonrd_opt.c:block_center_x
Unexecuted instantiation: reconinter_enc.c:block_center_x
Unexecuted instantiation: segmentation.c:block_center_x
Unexecuted instantiation: speed_features.c:block_center_x
Unexecuted instantiation: superres_scale.c:block_center_x
Unexecuted instantiation: svc_layercontext.c:block_center_x
Unexecuted instantiation: temporal_filter.c:block_center_x
Unexecuted instantiation: tokenize.c:block_center_x
Unexecuted instantiation: tpl_model.c:block_center_x
Unexecuted instantiation: tx_search.c:block_center_x
Unexecuted instantiation: txb_rdopt.c:block_center_x
Unexecuted instantiation: intra_mode_search.c:block_center_x
Unexecuted instantiation: var_based_part.c:block_center_x
Unexecuted instantiation: av1_noise_estimate.c:block_center_x
Unexecuted instantiation: dwt.c:block_center_x
Unexecuted instantiation: aom_dsp_rtcd.c:block_center_x
Unexecuted instantiation: av1_rtcd.c:block_center_x
Unexecuted instantiation: aom_convolve.c:block_center_x
Unexecuted instantiation: blend_a64_mask.c:block_center_x
Unexecuted instantiation: avg.c:block_center_x
Unexecuted instantiation: blk_sse_sum.c:block_center_x
Unexecuted instantiation: fwd_txfm.c:block_center_x
Unexecuted instantiation: psnr.c:block_center_x
Unexecuted instantiation: quantize.c:block_center_x
Unexecuted instantiation: sad.c:block_center_x
Unexecuted instantiation: sad_av1.c:block_center_x
Unexecuted instantiation: subtract.c:block_center_x
Unexecuted instantiation: sse.c:block_center_x
Unexecuted instantiation: sum_squares.c:block_center_x
Unexecuted instantiation: variance.c:block_center_x
Unexecuted instantiation: pyramid.c:block_center_x
Unexecuted instantiation: noise_util.c:block_center_x
Unexecuted instantiation: alloccommon.c:block_center_x
Unexecuted instantiation: av1_loopfilter.c:block_center_x
Unexecuted instantiation: blockd.c:block_center_x
Unexecuted instantiation: cdef.c:block_center_x
Unexecuted instantiation: cdef_block.c:block_center_x
Unexecuted instantiation: cfl.c:block_center_x
Unexecuted instantiation: debugmodes.c:block_center_x
Unexecuted instantiation: entropy.c:block_center_x
Unexecuted instantiation: entropymode.c:block_center_x
Unexecuted instantiation: entropymv.c:block_center_x
Unexecuted instantiation: idct.c:block_center_x
mvref_common.c:block_center_x
Line
Count
Source
183
26.9k
static inline int block_center_x(int mi_col, BLOCK_SIZE bs) {
184
26.9k
  const int bw = block_size_wide[bs];
185
26.9k
  return mi_col * MI_SIZE + bw / 2 - 1;
186
26.9k
}
Unexecuted instantiation: pred_common.c:block_center_x
Unexecuted instantiation: quant_common.c:block_center_x
Unexecuted instantiation: reconinter.c:block_center_x
Unexecuted instantiation: reconintra.c:block_center_x
Unexecuted instantiation: resize.c:block_center_x
Unexecuted instantiation: restoration.c:block_center_x
Unexecuted instantiation: scale.c:block_center_x
Unexecuted instantiation: scan.c:block_center_x
Unexecuted instantiation: seg_common.c:block_center_x
Unexecuted instantiation: thread_common.c:block_center_x
Unexecuted instantiation: tile_common.c:block_center_x
Unexecuted instantiation: txb_common.c:block_center_x
Unexecuted instantiation: warped_motion.c:block_center_x
Unexecuted instantiation: aq_complexity.c:block_center_x
Unexecuted instantiation: aq_cyclicrefresh.c:block_center_x
Unexecuted instantiation: aq_variance.c:block_center_x
Unexecuted instantiation: av1_fwd_txfm2d.c:block_center_x
Unexecuted instantiation: cnn.c:block_center_x
Unexecuted instantiation: compound_type.c:block_center_x
Unexecuted instantiation: encode_strategy.c:block_center_x
Unexecuted instantiation: global_motion.c:block_center_x
Unexecuted instantiation: gop_structure.c:block_center_x
Unexecuted instantiation: interp_search.c:block_center_x
Unexecuted instantiation: ml.c:block_center_x
Unexecuted instantiation: motion_search_facade.c:block_center_x
Unexecuted instantiation: wedge_utils.c:block_center_x
Unexecuted instantiation: blend_a64_hmask.c:block_center_x
Unexecuted instantiation: blend_a64_vmask.c:block_center_x
Unexecuted instantiation: intrapred.c:block_center_x
Unexecuted instantiation: loopfilter.c:block_center_x
Unexecuted instantiation: fft.c:block_center_x
Unexecuted instantiation: corner_match.c:block_center_x
Unexecuted instantiation: disflow.c:block_center_x
Unexecuted instantiation: av1_inv_txfm2d.c:block_center_x
Unexecuted instantiation: av1_txfm.c:block_center_x
Unexecuted instantiation: convolve.c:block_center_x
Unexecuted instantiation: av1_fwd_txfm1d.c:block_center_x
Unexecuted instantiation: av1_inv_txfm1d.c:block_center_x
187
188
36.7k
static inline int block_center_y(int mi_row, BLOCK_SIZE bs) {
189
36.7k
  const int bh = block_size_high[bs];
190
36.7k
  return mi_row * MI_SIZE + bh / 2 - 1;
191
36.7k
}
Unexecuted instantiation: av1_dx_iface.c:block_center_y
Unexecuted instantiation: decodeframe.c:block_center_y
decodemv.c:block_center_y
Line
Count
Source
188
9.85k
static inline int block_center_y(int mi_row, BLOCK_SIZE bs) {
189
9.85k
  const int bh = block_size_high[bs];
190
9.85k
  return mi_row * MI_SIZE + bh / 2 - 1;
191
9.85k
}
Unexecuted instantiation: decoder.c:block_center_y
Unexecuted instantiation: decodetxb.c:block_center_y
Unexecuted instantiation: detokenize.c:block_center_y
Unexecuted instantiation: obu.c:block_center_y
Unexecuted instantiation: av1_cx_iface.c:block_center_y
Unexecuted instantiation: allintra_vis.c:block_center_y
Unexecuted instantiation: av1_quantize.c:block_center_y
Unexecuted instantiation: bitstream.c:block_center_y
Unexecuted instantiation: context_tree.c:block_center_y
Unexecuted instantiation: encodeframe.c:block_center_y
Unexecuted instantiation: encodeframe_utils.c:block_center_y
Unexecuted instantiation: encodemb.c:block_center_y
Unexecuted instantiation: encodemv.c:block_center_y
Unexecuted instantiation: encoder.c:block_center_y
Unexecuted instantiation: encoder_utils.c:block_center_y
Unexecuted instantiation: encodetxb.c:block_center_y
Unexecuted instantiation: ethread.c:block_center_y
Unexecuted instantiation: firstpass.c:block_center_y
Unexecuted instantiation: global_motion_facade.c:block_center_y
Unexecuted instantiation: hash.c:block_center_y
Unexecuted instantiation: hash_motion.c:block_center_y
Unexecuted instantiation: hybrid_fwd_txfm.c:block_center_y
Unexecuted instantiation: level.c:block_center_y
Unexecuted instantiation: lookahead.c:block_center_y
Unexecuted instantiation: mcomp.c:block_center_y
Unexecuted instantiation: mv_prec.c:block_center_y
Unexecuted instantiation: palette.c:block_center_y
Unexecuted instantiation: partition_search.c:block_center_y
Unexecuted instantiation: partition_strategy.c:block_center_y
Unexecuted instantiation: pass2_strategy.c:block_center_y
Unexecuted instantiation: pickcdef.c:block_center_y
Unexecuted instantiation: picklpf.c:block_center_y
Unexecuted instantiation: pickrst.c:block_center_y
Unexecuted instantiation: ratectrl.c:block_center_y
Unexecuted instantiation: rd.c:block_center_y
Unexecuted instantiation: rdopt.c:block_center_y
Unexecuted instantiation: nonrd_pickmode.c:block_center_y
Unexecuted instantiation: nonrd_opt.c:block_center_y
Unexecuted instantiation: reconinter_enc.c:block_center_y
Unexecuted instantiation: segmentation.c:block_center_y
Unexecuted instantiation: speed_features.c:block_center_y
Unexecuted instantiation: superres_scale.c:block_center_y
Unexecuted instantiation: svc_layercontext.c:block_center_y
Unexecuted instantiation: temporal_filter.c:block_center_y
Unexecuted instantiation: tokenize.c:block_center_y
Unexecuted instantiation: tpl_model.c:block_center_y
Unexecuted instantiation: tx_search.c:block_center_y
Unexecuted instantiation: txb_rdopt.c:block_center_y
Unexecuted instantiation: intra_mode_search.c:block_center_y
Unexecuted instantiation: var_based_part.c:block_center_y
Unexecuted instantiation: av1_noise_estimate.c:block_center_y
Unexecuted instantiation: dwt.c:block_center_y
Unexecuted instantiation: aom_dsp_rtcd.c:block_center_y
Unexecuted instantiation: av1_rtcd.c:block_center_y
Unexecuted instantiation: aom_convolve.c:block_center_y
Unexecuted instantiation: blend_a64_mask.c:block_center_y
Unexecuted instantiation: avg.c:block_center_y
Unexecuted instantiation: blk_sse_sum.c:block_center_y
Unexecuted instantiation: fwd_txfm.c:block_center_y
Unexecuted instantiation: psnr.c:block_center_y
Unexecuted instantiation: quantize.c:block_center_y
Unexecuted instantiation: sad.c:block_center_y
Unexecuted instantiation: sad_av1.c:block_center_y
Unexecuted instantiation: subtract.c:block_center_y
Unexecuted instantiation: sse.c:block_center_y
Unexecuted instantiation: sum_squares.c:block_center_y
Unexecuted instantiation: variance.c:block_center_y
Unexecuted instantiation: pyramid.c:block_center_y
Unexecuted instantiation: noise_util.c:block_center_y
Unexecuted instantiation: alloccommon.c:block_center_y
Unexecuted instantiation: av1_loopfilter.c:block_center_y
Unexecuted instantiation: blockd.c:block_center_y
Unexecuted instantiation: cdef.c:block_center_y
Unexecuted instantiation: cdef_block.c:block_center_y
Unexecuted instantiation: cfl.c:block_center_y
Unexecuted instantiation: debugmodes.c:block_center_y
Unexecuted instantiation: entropy.c:block_center_y
Unexecuted instantiation: entropymode.c:block_center_y
Unexecuted instantiation: entropymv.c:block_center_y
Unexecuted instantiation: idct.c:block_center_y
mvref_common.c:block_center_y
Line
Count
Source
188
26.9k
static inline int block_center_y(int mi_row, BLOCK_SIZE bs) {
189
26.9k
  const int bh = block_size_high[bs];
190
26.9k
  return mi_row * MI_SIZE + bh / 2 - 1;
191
26.9k
}
Unexecuted instantiation: pred_common.c:block_center_y
Unexecuted instantiation: quant_common.c:block_center_y
Unexecuted instantiation: reconinter.c:block_center_y
Unexecuted instantiation: reconintra.c:block_center_y
Unexecuted instantiation: resize.c:block_center_y
Unexecuted instantiation: restoration.c:block_center_y
Unexecuted instantiation: scale.c:block_center_y
Unexecuted instantiation: scan.c:block_center_y
Unexecuted instantiation: seg_common.c:block_center_y
Unexecuted instantiation: thread_common.c:block_center_y
Unexecuted instantiation: tile_common.c:block_center_y
Unexecuted instantiation: txb_common.c:block_center_y
Unexecuted instantiation: warped_motion.c:block_center_y
Unexecuted instantiation: aq_complexity.c:block_center_y
Unexecuted instantiation: aq_cyclicrefresh.c:block_center_y
Unexecuted instantiation: aq_variance.c:block_center_y
Unexecuted instantiation: av1_fwd_txfm2d.c:block_center_y
Unexecuted instantiation: cnn.c:block_center_y
Unexecuted instantiation: compound_type.c:block_center_y
Unexecuted instantiation: encode_strategy.c:block_center_y
Unexecuted instantiation: global_motion.c:block_center_y
Unexecuted instantiation: gop_structure.c:block_center_y
Unexecuted instantiation: interp_search.c:block_center_y
Unexecuted instantiation: ml.c:block_center_y
Unexecuted instantiation: motion_search_facade.c:block_center_y
Unexecuted instantiation: wedge_utils.c:block_center_y
Unexecuted instantiation: blend_a64_hmask.c:block_center_y
Unexecuted instantiation: blend_a64_vmask.c:block_center_y
Unexecuted instantiation: intrapred.c:block_center_y
Unexecuted instantiation: loopfilter.c:block_center_y
Unexecuted instantiation: fft.c:block_center_y
Unexecuted instantiation: corner_match.c:block_center_y
Unexecuted instantiation: disflow.c:block_center_y
Unexecuted instantiation: av1_inv_txfm2d.c:block_center_y
Unexecuted instantiation: av1_txfm.c:block_center_y
Unexecuted instantiation: convolve.c:block_center_y
Unexecuted instantiation: av1_fwd_txfm1d.c:block_center_y
Unexecuted instantiation: av1_inv_txfm1d.c:block_center_y
192
193
73.5k
static inline int convert_to_trans_prec(int allow_hp, int coor) {
194
73.5k
  if (allow_hp)
195
23.0k
    return ROUND_POWER_OF_TWO_SIGNED(coor, WARPEDMODEL_PREC_BITS - 3);
196
50.4k
  else
197
50.4k
    return ROUND_POWER_OF_TWO_SIGNED(coor, WARPEDMODEL_PREC_BITS - 2) * 2;
198
73.5k
}
Unexecuted instantiation: av1_dx_iface.c:convert_to_trans_prec
Unexecuted instantiation: decodeframe.c:convert_to_trans_prec
decodemv.c:convert_to_trans_prec
Line
Count
Source
193
19.7k
static inline int convert_to_trans_prec(int allow_hp, int coor) {
194
19.7k
  if (allow_hp)
195
7.30k
    return ROUND_POWER_OF_TWO_SIGNED(coor, WARPEDMODEL_PREC_BITS - 3);
196
12.4k
  else
197
12.4k
    return ROUND_POWER_OF_TWO_SIGNED(coor, WARPEDMODEL_PREC_BITS - 2) * 2;
198
19.7k
}
Unexecuted instantiation: decoder.c:convert_to_trans_prec
Unexecuted instantiation: decodetxb.c:convert_to_trans_prec
Unexecuted instantiation: detokenize.c:convert_to_trans_prec
Unexecuted instantiation: obu.c:convert_to_trans_prec
Unexecuted instantiation: av1_cx_iface.c:convert_to_trans_prec
Unexecuted instantiation: allintra_vis.c:convert_to_trans_prec
Unexecuted instantiation: av1_quantize.c:convert_to_trans_prec
Unexecuted instantiation: bitstream.c:convert_to_trans_prec
Unexecuted instantiation: context_tree.c:convert_to_trans_prec
Unexecuted instantiation: encodeframe.c:convert_to_trans_prec
Unexecuted instantiation: encodeframe_utils.c:convert_to_trans_prec
Unexecuted instantiation: encodemb.c:convert_to_trans_prec
Unexecuted instantiation: encodemv.c:convert_to_trans_prec
Unexecuted instantiation: encoder.c:convert_to_trans_prec
Unexecuted instantiation: encoder_utils.c:convert_to_trans_prec
Unexecuted instantiation: encodetxb.c:convert_to_trans_prec
Unexecuted instantiation: ethread.c:convert_to_trans_prec
Unexecuted instantiation: firstpass.c:convert_to_trans_prec
Unexecuted instantiation: global_motion_facade.c:convert_to_trans_prec
Unexecuted instantiation: hash.c:convert_to_trans_prec
Unexecuted instantiation: hash_motion.c:convert_to_trans_prec
Unexecuted instantiation: hybrid_fwd_txfm.c:convert_to_trans_prec
Unexecuted instantiation: level.c:convert_to_trans_prec
Unexecuted instantiation: lookahead.c:convert_to_trans_prec
Unexecuted instantiation: mcomp.c:convert_to_trans_prec
Unexecuted instantiation: mv_prec.c:convert_to_trans_prec
Unexecuted instantiation: palette.c:convert_to_trans_prec
Unexecuted instantiation: partition_search.c:convert_to_trans_prec
Unexecuted instantiation: partition_strategy.c:convert_to_trans_prec
Unexecuted instantiation: pass2_strategy.c:convert_to_trans_prec
Unexecuted instantiation: pickcdef.c:convert_to_trans_prec
Unexecuted instantiation: picklpf.c:convert_to_trans_prec
Unexecuted instantiation: pickrst.c:convert_to_trans_prec
Unexecuted instantiation: ratectrl.c:convert_to_trans_prec
Unexecuted instantiation: rd.c:convert_to_trans_prec
Unexecuted instantiation: rdopt.c:convert_to_trans_prec
Unexecuted instantiation: nonrd_pickmode.c:convert_to_trans_prec
Unexecuted instantiation: nonrd_opt.c:convert_to_trans_prec
Unexecuted instantiation: reconinter_enc.c:convert_to_trans_prec
Unexecuted instantiation: segmentation.c:convert_to_trans_prec
Unexecuted instantiation: speed_features.c:convert_to_trans_prec
Unexecuted instantiation: superres_scale.c:convert_to_trans_prec
Unexecuted instantiation: svc_layercontext.c:convert_to_trans_prec
Unexecuted instantiation: temporal_filter.c:convert_to_trans_prec
Unexecuted instantiation: tokenize.c:convert_to_trans_prec
Unexecuted instantiation: tpl_model.c:convert_to_trans_prec
Unexecuted instantiation: tx_search.c:convert_to_trans_prec
Unexecuted instantiation: txb_rdopt.c:convert_to_trans_prec
Unexecuted instantiation: intra_mode_search.c:convert_to_trans_prec
Unexecuted instantiation: var_based_part.c:convert_to_trans_prec
Unexecuted instantiation: av1_noise_estimate.c:convert_to_trans_prec
Unexecuted instantiation: dwt.c:convert_to_trans_prec
Unexecuted instantiation: aom_dsp_rtcd.c:convert_to_trans_prec
Unexecuted instantiation: av1_rtcd.c:convert_to_trans_prec
Unexecuted instantiation: aom_convolve.c:convert_to_trans_prec
Unexecuted instantiation: blend_a64_mask.c:convert_to_trans_prec
Unexecuted instantiation: avg.c:convert_to_trans_prec
Unexecuted instantiation: blk_sse_sum.c:convert_to_trans_prec
Unexecuted instantiation: fwd_txfm.c:convert_to_trans_prec
Unexecuted instantiation: psnr.c:convert_to_trans_prec
Unexecuted instantiation: quantize.c:convert_to_trans_prec
Unexecuted instantiation: sad.c:convert_to_trans_prec
Unexecuted instantiation: sad_av1.c:convert_to_trans_prec
Unexecuted instantiation: subtract.c:convert_to_trans_prec
Unexecuted instantiation: sse.c:convert_to_trans_prec
Unexecuted instantiation: sum_squares.c:convert_to_trans_prec
Unexecuted instantiation: variance.c:convert_to_trans_prec
Unexecuted instantiation: pyramid.c:convert_to_trans_prec
Unexecuted instantiation: noise_util.c:convert_to_trans_prec
Unexecuted instantiation: alloccommon.c:convert_to_trans_prec
Unexecuted instantiation: av1_loopfilter.c:convert_to_trans_prec
Unexecuted instantiation: blockd.c:convert_to_trans_prec
Unexecuted instantiation: cdef.c:convert_to_trans_prec
Unexecuted instantiation: cdef_block.c:convert_to_trans_prec
Unexecuted instantiation: cfl.c:convert_to_trans_prec
Unexecuted instantiation: debugmodes.c:convert_to_trans_prec
Unexecuted instantiation: entropy.c:convert_to_trans_prec
Unexecuted instantiation: entropymode.c:convert_to_trans_prec
Unexecuted instantiation: entropymv.c:convert_to_trans_prec
Unexecuted instantiation: idct.c:convert_to_trans_prec
mvref_common.c:convert_to_trans_prec
Line
Count
Source
193
53.8k
static inline int convert_to_trans_prec(int allow_hp, int coor) {
194
53.8k
  if (allow_hp)
195
15.7k
    return ROUND_POWER_OF_TWO_SIGNED(coor, WARPEDMODEL_PREC_BITS - 3);
196
38.0k
  else
197
38.0k
    return ROUND_POWER_OF_TWO_SIGNED(coor, WARPEDMODEL_PREC_BITS - 2) * 2;
198
53.8k
}
Unexecuted instantiation: pred_common.c:convert_to_trans_prec
Unexecuted instantiation: quant_common.c:convert_to_trans_prec
Unexecuted instantiation: reconinter.c:convert_to_trans_prec
Unexecuted instantiation: reconintra.c:convert_to_trans_prec
Unexecuted instantiation: resize.c:convert_to_trans_prec
Unexecuted instantiation: restoration.c:convert_to_trans_prec
Unexecuted instantiation: scale.c:convert_to_trans_prec
Unexecuted instantiation: scan.c:convert_to_trans_prec
Unexecuted instantiation: seg_common.c:convert_to_trans_prec
Unexecuted instantiation: thread_common.c:convert_to_trans_prec
Unexecuted instantiation: tile_common.c:convert_to_trans_prec
Unexecuted instantiation: txb_common.c:convert_to_trans_prec
Unexecuted instantiation: warped_motion.c:convert_to_trans_prec
Unexecuted instantiation: aq_complexity.c:convert_to_trans_prec
Unexecuted instantiation: aq_cyclicrefresh.c:convert_to_trans_prec
Unexecuted instantiation: aq_variance.c:convert_to_trans_prec
Unexecuted instantiation: av1_fwd_txfm2d.c:convert_to_trans_prec
Unexecuted instantiation: cnn.c:convert_to_trans_prec
Unexecuted instantiation: compound_type.c:convert_to_trans_prec
Unexecuted instantiation: encode_strategy.c:convert_to_trans_prec
Unexecuted instantiation: global_motion.c:convert_to_trans_prec
Unexecuted instantiation: gop_structure.c:convert_to_trans_prec
Unexecuted instantiation: interp_search.c:convert_to_trans_prec
Unexecuted instantiation: ml.c:convert_to_trans_prec
Unexecuted instantiation: motion_search_facade.c:convert_to_trans_prec
Unexecuted instantiation: wedge_utils.c:convert_to_trans_prec
Unexecuted instantiation: blend_a64_hmask.c:convert_to_trans_prec
Unexecuted instantiation: blend_a64_vmask.c:convert_to_trans_prec
Unexecuted instantiation: intrapred.c:convert_to_trans_prec
Unexecuted instantiation: loopfilter.c:convert_to_trans_prec
Unexecuted instantiation: fft.c:convert_to_trans_prec
Unexecuted instantiation: corner_match.c:convert_to_trans_prec
Unexecuted instantiation: disflow.c:convert_to_trans_prec
Unexecuted instantiation: av1_inv_txfm2d.c:convert_to_trans_prec
Unexecuted instantiation: av1_txfm.c:convert_to_trans_prec
Unexecuted instantiation: convolve.c:convert_to_trans_prec
Unexecuted instantiation: av1_fwd_txfm1d.c:convert_to_trans_prec
Unexecuted instantiation: av1_inv_txfm1d.c:convert_to_trans_prec
199
31.0k
static inline void integer_mv_precision(MV *mv) {
200
31.0k
  int mod = (mv->row % 8);
201
31.0k
  if (mod != 0) {
202
7.11k
    mv->row -= mod;
203
7.11k
    if (abs(mod) > 4) {
204
3.22k
      if (mod > 0) {
205
1.84k
        mv->row += 8;
206
1.84k
      } else {
207
1.37k
        mv->row -= 8;
208
1.37k
      }
209
3.22k
    }
210
7.11k
  }
211
212
31.0k
  mod = (mv->col % 8);
213
31.0k
  if (mod != 0) {
214
6.52k
    mv->col -= mod;
215
6.52k
    if (abs(mod) > 4) {
216
3.63k
      if (mod > 0) {
217
1.92k
        mv->col += 8;
218
1.92k
      } else {
219
1.71k
        mv->col -= 8;
220
1.71k
      }
221
3.63k
    }
222
6.52k
  }
223
31.0k
}
Unexecuted instantiation: av1_dx_iface.c:integer_mv_precision
Unexecuted instantiation: decodeframe.c:integer_mv_precision
decodemv.c:integer_mv_precision
Line
Count
Source
199
6.23k
static inline void integer_mv_precision(MV *mv) {
200
6.23k
  int mod = (mv->row % 8);
201
6.23k
  if (mod != 0) {
202
1.02k
    mv->row -= mod;
203
1.02k
    if (abs(mod) > 4) {
204
541
      if (mod > 0) {
205
255
        mv->row += 8;
206
286
      } else {
207
286
        mv->row -= 8;
208
286
      }
209
541
    }
210
1.02k
  }
211
212
6.23k
  mod = (mv->col % 8);
213
6.23k
  if (mod != 0) {
214
777
    mv->col -= mod;
215
777
    if (abs(mod) > 4) {
216
489
      if (mod > 0) {
217
242
        mv->col += 8;
218
247
      } else {
219
247
        mv->col -= 8;
220
247
      }
221
489
    }
222
777
  }
223
6.23k
}
Unexecuted instantiation: decoder.c:integer_mv_precision
Unexecuted instantiation: decodetxb.c:integer_mv_precision
Unexecuted instantiation: detokenize.c:integer_mv_precision
Unexecuted instantiation: obu.c:integer_mv_precision
Unexecuted instantiation: av1_cx_iface.c:integer_mv_precision
Unexecuted instantiation: allintra_vis.c:integer_mv_precision
Unexecuted instantiation: av1_quantize.c:integer_mv_precision
Unexecuted instantiation: bitstream.c:integer_mv_precision
Unexecuted instantiation: context_tree.c:integer_mv_precision
Unexecuted instantiation: encodeframe.c:integer_mv_precision
Unexecuted instantiation: encodeframe_utils.c:integer_mv_precision
Unexecuted instantiation: encodemb.c:integer_mv_precision
Unexecuted instantiation: encodemv.c:integer_mv_precision
Unexecuted instantiation: encoder.c:integer_mv_precision
Unexecuted instantiation: encoder_utils.c:integer_mv_precision
Unexecuted instantiation: encodetxb.c:integer_mv_precision
Unexecuted instantiation: ethread.c:integer_mv_precision
Unexecuted instantiation: firstpass.c:integer_mv_precision
Unexecuted instantiation: global_motion_facade.c:integer_mv_precision
Unexecuted instantiation: hash.c:integer_mv_precision
Unexecuted instantiation: hash_motion.c:integer_mv_precision
Unexecuted instantiation: hybrid_fwd_txfm.c:integer_mv_precision
Unexecuted instantiation: level.c:integer_mv_precision
Unexecuted instantiation: lookahead.c:integer_mv_precision
Unexecuted instantiation: mcomp.c:integer_mv_precision
Unexecuted instantiation: mv_prec.c:integer_mv_precision
Unexecuted instantiation: palette.c:integer_mv_precision
Unexecuted instantiation: partition_search.c:integer_mv_precision
Unexecuted instantiation: partition_strategy.c:integer_mv_precision
Unexecuted instantiation: pass2_strategy.c:integer_mv_precision
Unexecuted instantiation: pickcdef.c:integer_mv_precision
Unexecuted instantiation: picklpf.c:integer_mv_precision
Unexecuted instantiation: pickrst.c:integer_mv_precision
Unexecuted instantiation: ratectrl.c:integer_mv_precision
Unexecuted instantiation: rd.c:integer_mv_precision
Unexecuted instantiation: rdopt.c:integer_mv_precision
Unexecuted instantiation: nonrd_pickmode.c:integer_mv_precision
Unexecuted instantiation: nonrd_opt.c:integer_mv_precision
Unexecuted instantiation: reconinter_enc.c:integer_mv_precision
Unexecuted instantiation: segmentation.c:integer_mv_precision
Unexecuted instantiation: speed_features.c:integer_mv_precision
Unexecuted instantiation: superres_scale.c:integer_mv_precision
Unexecuted instantiation: svc_layercontext.c:integer_mv_precision
Unexecuted instantiation: temporal_filter.c:integer_mv_precision
Unexecuted instantiation: tokenize.c:integer_mv_precision
Unexecuted instantiation: tpl_model.c:integer_mv_precision
Unexecuted instantiation: tx_search.c:integer_mv_precision
Unexecuted instantiation: txb_rdopt.c:integer_mv_precision
Unexecuted instantiation: intra_mode_search.c:integer_mv_precision
Unexecuted instantiation: var_based_part.c:integer_mv_precision
Unexecuted instantiation: av1_noise_estimate.c:integer_mv_precision
Unexecuted instantiation: dwt.c:integer_mv_precision
Unexecuted instantiation: aom_dsp_rtcd.c:integer_mv_precision
Unexecuted instantiation: av1_rtcd.c:integer_mv_precision
Unexecuted instantiation: aom_convolve.c:integer_mv_precision
Unexecuted instantiation: blend_a64_mask.c:integer_mv_precision
Unexecuted instantiation: avg.c:integer_mv_precision
Unexecuted instantiation: blk_sse_sum.c:integer_mv_precision
Unexecuted instantiation: fwd_txfm.c:integer_mv_precision
Unexecuted instantiation: psnr.c:integer_mv_precision
Unexecuted instantiation: quantize.c:integer_mv_precision
Unexecuted instantiation: sad.c:integer_mv_precision
Unexecuted instantiation: sad_av1.c:integer_mv_precision
Unexecuted instantiation: subtract.c:integer_mv_precision
Unexecuted instantiation: sse.c:integer_mv_precision
Unexecuted instantiation: sum_squares.c:integer_mv_precision
Unexecuted instantiation: variance.c:integer_mv_precision
Unexecuted instantiation: pyramid.c:integer_mv_precision
Unexecuted instantiation: noise_util.c:integer_mv_precision
Unexecuted instantiation: alloccommon.c:integer_mv_precision
Unexecuted instantiation: av1_loopfilter.c:integer_mv_precision
Unexecuted instantiation: blockd.c:integer_mv_precision
Unexecuted instantiation: cdef.c:integer_mv_precision
Unexecuted instantiation: cdef_block.c:integer_mv_precision
Unexecuted instantiation: cfl.c:integer_mv_precision
Unexecuted instantiation: debugmodes.c:integer_mv_precision
Unexecuted instantiation: entropy.c:integer_mv_precision
Unexecuted instantiation: entropymode.c:integer_mv_precision
Unexecuted instantiation: entropymv.c:integer_mv_precision
Unexecuted instantiation: idct.c:integer_mv_precision
mvref_common.c:integer_mv_precision
Line
Count
Source
199
24.8k
static inline void integer_mv_precision(MV *mv) {
200
24.8k
  int mod = (mv->row % 8);
201
24.8k
  if (mod != 0) {
202
6.09k
    mv->row -= mod;
203
6.09k
    if (abs(mod) > 4) {
204
2.67k
      if (mod > 0) {
205
1.58k
        mv->row += 8;
206
1.58k
      } else {
207
1.09k
        mv->row -= 8;
208
1.09k
      }
209
2.67k
    }
210
6.09k
  }
211
212
24.8k
  mod = (mv->col % 8);
213
24.8k
  if (mod != 0) {
214
5.75k
    mv->col -= mod;
215
5.75k
    if (abs(mod) > 4) {
216
3.14k
      if (mod > 0) {
217
1.67k
        mv->col += 8;
218
1.67k
      } else {
219
1.46k
        mv->col -= 8;
220
1.46k
      }
221
3.14k
    }
222
5.75k
  }
223
24.8k
}
Unexecuted instantiation: pred_common.c:integer_mv_precision
Unexecuted instantiation: quant_common.c:integer_mv_precision
Unexecuted instantiation: reconinter.c:integer_mv_precision
Unexecuted instantiation: reconintra.c:integer_mv_precision
Unexecuted instantiation: resize.c:integer_mv_precision
Unexecuted instantiation: restoration.c:integer_mv_precision
Unexecuted instantiation: scale.c:integer_mv_precision
Unexecuted instantiation: scan.c:integer_mv_precision
Unexecuted instantiation: seg_common.c:integer_mv_precision
Unexecuted instantiation: thread_common.c:integer_mv_precision
Unexecuted instantiation: tile_common.c:integer_mv_precision
Unexecuted instantiation: txb_common.c:integer_mv_precision
Unexecuted instantiation: warped_motion.c:integer_mv_precision
Unexecuted instantiation: aq_complexity.c:integer_mv_precision
Unexecuted instantiation: aq_cyclicrefresh.c:integer_mv_precision
Unexecuted instantiation: aq_variance.c:integer_mv_precision
Unexecuted instantiation: av1_fwd_txfm2d.c:integer_mv_precision
Unexecuted instantiation: cnn.c:integer_mv_precision
Unexecuted instantiation: compound_type.c:integer_mv_precision
Unexecuted instantiation: encode_strategy.c:integer_mv_precision
Unexecuted instantiation: global_motion.c:integer_mv_precision
Unexecuted instantiation: gop_structure.c:integer_mv_precision
Unexecuted instantiation: interp_search.c:integer_mv_precision
Unexecuted instantiation: ml.c:integer_mv_precision
Unexecuted instantiation: motion_search_facade.c:integer_mv_precision
Unexecuted instantiation: wedge_utils.c:integer_mv_precision
Unexecuted instantiation: blend_a64_hmask.c:integer_mv_precision
Unexecuted instantiation: blend_a64_vmask.c:integer_mv_precision
Unexecuted instantiation: intrapred.c:integer_mv_precision
Unexecuted instantiation: loopfilter.c:integer_mv_precision
Unexecuted instantiation: fft.c:integer_mv_precision
Unexecuted instantiation: corner_match.c:integer_mv_precision
Unexecuted instantiation: disflow.c:integer_mv_precision
Unexecuted instantiation: av1_inv_txfm2d.c:integer_mv_precision
Unexecuted instantiation: av1_txfm.c:integer_mv_precision
Unexecuted instantiation: convolve.c:integer_mv_precision
Unexecuted instantiation: av1_fwd_txfm1d.c:integer_mv_precision
Unexecuted instantiation: av1_inv_txfm1d.c:integer_mv_precision
224
// Convert a global motion vector into a motion vector at the centre of the
225
// given block.
226
//
227
// The resulting motion vector will have three fractional bits of precision. If
228
// allow_hp is zero, the bottom bit will always be zero. If CONFIG_AMVR and
229
// is_integer is true, the bottom three bits will be zero (so the motion vector
230
// represents an integer)
231
static inline int_mv gm_get_motion_vector(const WarpedMotionParams *gm,
232
                                          int allow_hp, BLOCK_SIZE bsize,
233
                                          int mi_col, int mi_row,
234
78.8k
                                          int is_integer) {
235
78.8k
  int_mv res;
236
237
78.8k
  if (gm->wmtype == IDENTITY) {
238
31.2k
    res.as_int = 0;
239
31.2k
    return res;
240
31.2k
  }
241
242
47.6k
  const int32_t *mat = gm->wmmat;
243
47.6k
  int x, y, tx, ty;
244
245
47.6k
  if (gm->wmtype == TRANSLATION) {
246
    // All global motion vectors are stored with WARPEDMODEL_PREC_BITS (16)
247
    // bits of fractional precision. The offset for a translation is stored in
248
    // entries 0 and 1. For translations, all but the top three (two if
249
    // cm->features.allow_high_precision_mv is false) fractional bits are always
250
    // zero.
251
    //
252
    // After the right shifts, there are 3 fractional bits of precision. If
253
    // allow_hp is false, the bottom bit is always zero (so we don't need a
254
    // call to convert_to_trans_prec here)
255
    //
256
    // Note: There is an AV1 specification bug here:
257
    //
258
    // gm->wmmat[0] is supposed to be the horizontal translation, and so should
259
    // go into res.as_mv.col, and gm->wmmat[1] is supposed to be the vertical
260
    // translation and so should go into res.as_mv.row
261
    //
262
    // However, in the spec, these assignments are accidentally reversed, and so
263
    // we must keep this incorrect logic to match the spec.
264
    //
265
    // See also: https://crbug.com/aomedia/3328
266
10.8k
    res.as_mv.row = gm->wmmat[0] >> GM_TRANS_ONLY_PREC_DIFF;
267
10.8k
    res.as_mv.col = gm->wmmat[1] >> GM_TRANS_ONLY_PREC_DIFF;
268
10.8k
    assert(IMPLIES(1 & (res.as_mv.row | res.as_mv.col), allow_hp));
269
10.8k
    if (is_integer) {
270
3.77k
      integer_mv_precision(&res.as_mv);
271
3.77k
    }
272
10.8k
    return res;
273
10.8k
  }
274
275
36.7k
  x = block_center_x(mi_col, bsize);
276
36.7k
  y = block_center_y(mi_row, bsize);
277
278
36.7k
  if (gm->wmtype == ROTZOOM) {
279
22.5k
    assert(gm->wmmat[5] == gm->wmmat[2]);
280
22.5k
    assert(gm->wmmat[4] == -gm->wmmat[3]);
281
22.5k
  }
282
283
36.7k
  const int xc =
284
36.7k
      (mat[2] - (1 << WARPEDMODEL_PREC_BITS)) * x + mat[3] * y + mat[0];
285
36.7k
  const int yc =
286
36.7k
      mat[4] * x + (mat[5] - (1 << WARPEDMODEL_PREC_BITS)) * y + mat[1];
287
36.7k
  tx = convert_to_trans_prec(allow_hp, xc);
288
36.7k
  ty = convert_to_trans_prec(allow_hp, yc);
289
290
36.7k
  res.as_mv.row = ty;
291
36.7k
  res.as_mv.col = tx;
292
293
36.7k
  if (is_integer) {
294
5.75k
    integer_mv_precision(&res.as_mv);
295
5.75k
  }
296
36.7k
  return res;
297
47.6k
}
Unexecuted instantiation: av1_dx_iface.c:gm_get_motion_vector
Unexecuted instantiation: decodeframe.c:gm_get_motion_vector
decodemv.c:gm_get_motion_vector
Line
Count
Source
234
19.3k
                                          int is_integer) {
235
19.3k
  int_mv res;
236
237
19.3k
  if (gm->wmtype == IDENTITY) {
238
7.18k
    res.as_int = 0;
239
7.18k
    return res;
240
7.18k
  }
241
242
12.1k
  const int32_t *mat = gm->wmmat;
243
12.1k
  int x, y, tx, ty;
244
245
12.1k
  if (gm->wmtype == TRANSLATION) {
246
    // All global motion vectors are stored with WARPEDMODEL_PREC_BITS (16)
247
    // bits of fractional precision. The offset for a translation is stored in
248
    // entries 0 and 1. For translations, all but the top three (two if
249
    // cm->features.allow_high_precision_mv is false) fractional bits are always
250
    // zero.
251
    //
252
    // After the right shifts, there are 3 fractional bits of precision. If
253
    // allow_hp is false, the bottom bit is always zero (so we don't need a
254
    // call to convert_to_trans_prec here)
255
    //
256
    // Note: There is an AV1 specification bug here:
257
    //
258
    // gm->wmmat[0] is supposed to be the horizontal translation, and so should
259
    // go into res.as_mv.col, and gm->wmmat[1] is supposed to be the vertical
260
    // translation and so should go into res.as_mv.row
261
    //
262
    // However, in the spec, these assignments are accidentally reversed, and so
263
    // we must keep this incorrect logic to match the spec.
264
    //
265
    // See also: https://crbug.com/aomedia/3328
266
2.28k
    res.as_mv.row = gm->wmmat[0] >> GM_TRANS_ONLY_PREC_DIFF;
267
2.28k
    res.as_mv.col = gm->wmmat[1] >> GM_TRANS_ONLY_PREC_DIFF;
268
2.28k
    assert(IMPLIES(1 & (res.as_mv.row | res.as_mv.col), allow_hp));
269
2.28k
    if (is_integer) {
270
828
      integer_mv_precision(&res.as_mv);
271
828
    }
272
2.28k
    return res;
273
2.28k
  }
274
275
9.85k
  x = block_center_x(mi_col, bsize);
276
9.85k
  y = block_center_y(mi_row, bsize);
277
278
9.85k
  if (gm->wmtype == ROTZOOM) {
279
5.52k
    assert(gm->wmmat[5] == gm->wmmat[2]);
280
5.52k
    assert(gm->wmmat[4] == -gm->wmmat[3]);
281
5.52k
  }
282
283
9.85k
  const int xc =
284
9.85k
      (mat[2] - (1 << WARPEDMODEL_PREC_BITS)) * x + mat[3] * y + mat[0];
285
9.85k
  const int yc =
286
9.85k
      mat[4] * x + (mat[5] - (1 << WARPEDMODEL_PREC_BITS)) * y + mat[1];
287
9.85k
  tx = convert_to_trans_prec(allow_hp, xc);
288
9.85k
  ty = convert_to_trans_prec(allow_hp, yc);
289
290
9.85k
  res.as_mv.row = ty;
291
9.85k
  res.as_mv.col = tx;
292
293
9.85k
  if (is_integer) {
294
606
    integer_mv_precision(&res.as_mv);
295
606
  }
296
9.85k
  return res;
297
12.1k
}
Unexecuted instantiation: decoder.c:gm_get_motion_vector
Unexecuted instantiation: decodetxb.c:gm_get_motion_vector
Unexecuted instantiation: detokenize.c:gm_get_motion_vector
Unexecuted instantiation: obu.c:gm_get_motion_vector
Unexecuted instantiation: av1_cx_iface.c:gm_get_motion_vector
Unexecuted instantiation: allintra_vis.c:gm_get_motion_vector
Unexecuted instantiation: av1_quantize.c:gm_get_motion_vector
Unexecuted instantiation: bitstream.c:gm_get_motion_vector
Unexecuted instantiation: context_tree.c:gm_get_motion_vector
Unexecuted instantiation: encodeframe.c:gm_get_motion_vector
Unexecuted instantiation: encodeframe_utils.c:gm_get_motion_vector
Unexecuted instantiation: encodemb.c:gm_get_motion_vector
Unexecuted instantiation: encodemv.c:gm_get_motion_vector
Unexecuted instantiation: encoder.c:gm_get_motion_vector
Unexecuted instantiation: encoder_utils.c:gm_get_motion_vector
Unexecuted instantiation: encodetxb.c:gm_get_motion_vector
Unexecuted instantiation: ethread.c:gm_get_motion_vector
Unexecuted instantiation: firstpass.c:gm_get_motion_vector
Unexecuted instantiation: global_motion_facade.c:gm_get_motion_vector
Unexecuted instantiation: hash.c:gm_get_motion_vector
Unexecuted instantiation: hash_motion.c:gm_get_motion_vector
Unexecuted instantiation: hybrid_fwd_txfm.c:gm_get_motion_vector
Unexecuted instantiation: level.c:gm_get_motion_vector
Unexecuted instantiation: lookahead.c:gm_get_motion_vector
Unexecuted instantiation: mcomp.c:gm_get_motion_vector
Unexecuted instantiation: mv_prec.c:gm_get_motion_vector
Unexecuted instantiation: palette.c:gm_get_motion_vector
Unexecuted instantiation: partition_search.c:gm_get_motion_vector
Unexecuted instantiation: partition_strategy.c:gm_get_motion_vector
Unexecuted instantiation: pass2_strategy.c:gm_get_motion_vector
Unexecuted instantiation: pickcdef.c:gm_get_motion_vector
Unexecuted instantiation: picklpf.c:gm_get_motion_vector
Unexecuted instantiation: pickrst.c:gm_get_motion_vector
Unexecuted instantiation: ratectrl.c:gm_get_motion_vector
Unexecuted instantiation: rd.c:gm_get_motion_vector
Unexecuted instantiation: rdopt.c:gm_get_motion_vector
Unexecuted instantiation: nonrd_pickmode.c:gm_get_motion_vector
Unexecuted instantiation: nonrd_opt.c:gm_get_motion_vector
Unexecuted instantiation: reconinter_enc.c:gm_get_motion_vector
Unexecuted instantiation: segmentation.c:gm_get_motion_vector
Unexecuted instantiation: speed_features.c:gm_get_motion_vector
Unexecuted instantiation: superres_scale.c:gm_get_motion_vector
Unexecuted instantiation: svc_layercontext.c:gm_get_motion_vector
Unexecuted instantiation: temporal_filter.c:gm_get_motion_vector
Unexecuted instantiation: tokenize.c:gm_get_motion_vector
Unexecuted instantiation: tpl_model.c:gm_get_motion_vector
Unexecuted instantiation: tx_search.c:gm_get_motion_vector
Unexecuted instantiation: txb_rdopt.c:gm_get_motion_vector
Unexecuted instantiation: intra_mode_search.c:gm_get_motion_vector
Unexecuted instantiation: var_based_part.c:gm_get_motion_vector
Unexecuted instantiation: av1_noise_estimate.c:gm_get_motion_vector
Unexecuted instantiation: dwt.c:gm_get_motion_vector
Unexecuted instantiation: aom_dsp_rtcd.c:gm_get_motion_vector
Unexecuted instantiation: av1_rtcd.c:gm_get_motion_vector
Unexecuted instantiation: aom_convolve.c:gm_get_motion_vector
Unexecuted instantiation: blend_a64_mask.c:gm_get_motion_vector
Unexecuted instantiation: avg.c:gm_get_motion_vector
Unexecuted instantiation: blk_sse_sum.c:gm_get_motion_vector
Unexecuted instantiation: fwd_txfm.c:gm_get_motion_vector
Unexecuted instantiation: psnr.c:gm_get_motion_vector
Unexecuted instantiation: quantize.c:gm_get_motion_vector
Unexecuted instantiation: sad.c:gm_get_motion_vector
Unexecuted instantiation: sad_av1.c:gm_get_motion_vector
Unexecuted instantiation: subtract.c:gm_get_motion_vector
Unexecuted instantiation: sse.c:gm_get_motion_vector
Unexecuted instantiation: sum_squares.c:gm_get_motion_vector
Unexecuted instantiation: variance.c:gm_get_motion_vector
Unexecuted instantiation: pyramid.c:gm_get_motion_vector
Unexecuted instantiation: noise_util.c:gm_get_motion_vector
Unexecuted instantiation: alloccommon.c:gm_get_motion_vector
Unexecuted instantiation: av1_loopfilter.c:gm_get_motion_vector
Unexecuted instantiation: blockd.c:gm_get_motion_vector
Unexecuted instantiation: cdef.c:gm_get_motion_vector
Unexecuted instantiation: cdef_block.c:gm_get_motion_vector
Unexecuted instantiation: cfl.c:gm_get_motion_vector
Unexecuted instantiation: debugmodes.c:gm_get_motion_vector
Unexecuted instantiation: entropy.c:gm_get_motion_vector
Unexecuted instantiation: entropymode.c:gm_get_motion_vector
Unexecuted instantiation: entropymv.c:gm_get_motion_vector
Unexecuted instantiation: idct.c:gm_get_motion_vector
mvref_common.c:gm_get_motion_vector
Line
Count
Source
234
59.5k
                                          int is_integer) {
235
59.5k
  int_mv res;
236
237
59.5k
  if (gm->wmtype == IDENTITY) {
238
24.0k
    res.as_int = 0;
239
24.0k
    return res;
240
24.0k
  }
241
242
35.5k
  const int32_t *mat = gm->wmmat;
243
35.5k
  int x, y, tx, ty;
244
245
35.5k
  if (gm->wmtype == TRANSLATION) {
246
    // All global motion vectors are stored with WARPEDMODEL_PREC_BITS (16)
247
    // bits of fractional precision. The offset for a translation is stored in
248
    // entries 0 and 1. For translations, all but the top three (two if
249
    // cm->features.allow_high_precision_mv is false) fractional bits are always
250
    // zero.
251
    //
252
    // After the right shifts, there are 3 fractional bits of precision. If
253
    // allow_hp is false, the bottom bit is always zero (so we don't need a
254
    // call to convert_to_trans_prec here)
255
    //
256
    // Note: There is an AV1 specification bug here:
257
    //
258
    // gm->wmmat[0] is supposed to be the horizontal translation, and so should
259
    // go into res.as_mv.col, and gm->wmmat[1] is supposed to be the vertical
260
    // translation and so should go into res.as_mv.row
261
    //
262
    // However, in the spec, these assignments are accidentally reversed, and so
263
    // we must keep this incorrect logic to match the spec.
264
    //
265
    // See also: https://crbug.com/aomedia/3328
266
8.56k
    res.as_mv.row = gm->wmmat[0] >> GM_TRANS_ONLY_PREC_DIFF;
267
8.56k
    res.as_mv.col = gm->wmmat[1] >> GM_TRANS_ONLY_PREC_DIFF;
268
8.56k
    assert(IMPLIES(1 & (res.as_mv.row | res.as_mv.col), allow_hp));
269
8.56k
    if (is_integer) {
270
2.94k
      integer_mv_precision(&res.as_mv);
271
2.94k
    }
272
8.56k
    return res;
273
8.56k
  }
274
275
26.9k
  x = block_center_x(mi_col, bsize);
276
26.9k
  y = block_center_y(mi_row, bsize);
277
278
26.9k
  if (gm->wmtype == ROTZOOM) {
279
17.0k
    assert(gm->wmmat[5] == gm->wmmat[2]);
280
17.0k
    assert(gm->wmmat[4] == -gm->wmmat[3]);
281
17.0k
  }
282
283
26.9k
  const int xc =
284
26.9k
      (mat[2] - (1 << WARPEDMODEL_PREC_BITS)) * x + mat[3] * y + mat[0];
285
26.9k
  const int yc =
286
26.9k
      mat[4] * x + (mat[5] - (1 << WARPEDMODEL_PREC_BITS)) * y + mat[1];
287
26.9k
  tx = convert_to_trans_prec(allow_hp, xc);
288
26.9k
  ty = convert_to_trans_prec(allow_hp, yc);
289
290
26.9k
  res.as_mv.row = ty;
291
26.9k
  res.as_mv.col = tx;
292
293
26.9k
  if (is_integer) {
294
5.14k
    integer_mv_precision(&res.as_mv);
295
5.14k
  }
296
26.9k
  return res;
297
35.5k
}
Unexecuted instantiation: pred_common.c:gm_get_motion_vector
Unexecuted instantiation: quant_common.c:gm_get_motion_vector
Unexecuted instantiation: reconinter.c:gm_get_motion_vector
Unexecuted instantiation: reconintra.c:gm_get_motion_vector
Unexecuted instantiation: resize.c:gm_get_motion_vector
Unexecuted instantiation: restoration.c:gm_get_motion_vector
Unexecuted instantiation: scale.c:gm_get_motion_vector
Unexecuted instantiation: scan.c:gm_get_motion_vector
Unexecuted instantiation: seg_common.c:gm_get_motion_vector
Unexecuted instantiation: thread_common.c:gm_get_motion_vector
Unexecuted instantiation: tile_common.c:gm_get_motion_vector
Unexecuted instantiation: txb_common.c:gm_get_motion_vector
Unexecuted instantiation: warped_motion.c:gm_get_motion_vector
Unexecuted instantiation: aq_complexity.c:gm_get_motion_vector
Unexecuted instantiation: aq_cyclicrefresh.c:gm_get_motion_vector
Unexecuted instantiation: aq_variance.c:gm_get_motion_vector
Unexecuted instantiation: av1_fwd_txfm2d.c:gm_get_motion_vector
Unexecuted instantiation: cnn.c:gm_get_motion_vector
Unexecuted instantiation: compound_type.c:gm_get_motion_vector
Unexecuted instantiation: encode_strategy.c:gm_get_motion_vector
Unexecuted instantiation: global_motion.c:gm_get_motion_vector
Unexecuted instantiation: gop_structure.c:gm_get_motion_vector
Unexecuted instantiation: interp_search.c:gm_get_motion_vector
Unexecuted instantiation: ml.c:gm_get_motion_vector
Unexecuted instantiation: motion_search_facade.c:gm_get_motion_vector
Unexecuted instantiation: wedge_utils.c:gm_get_motion_vector
Unexecuted instantiation: blend_a64_hmask.c:gm_get_motion_vector
Unexecuted instantiation: blend_a64_vmask.c:gm_get_motion_vector
Unexecuted instantiation: intrapred.c:gm_get_motion_vector
Unexecuted instantiation: loopfilter.c:gm_get_motion_vector
Unexecuted instantiation: fft.c:gm_get_motion_vector
Unexecuted instantiation: corner_match.c:gm_get_motion_vector
Unexecuted instantiation: disflow.c:gm_get_motion_vector
Unexecuted instantiation: av1_inv_txfm2d.c:gm_get_motion_vector
Unexecuted instantiation: av1_txfm.c:gm_get_motion_vector
Unexecuted instantiation: convolve.c:gm_get_motion_vector
Unexecuted instantiation: av1_fwd_txfm1d.c:gm_get_motion_vector
Unexecuted instantiation: av1_inv_txfm1d.c:gm_get_motion_vector
298
299
0
static inline TransformationType get_wmtype(const WarpedMotionParams *gm) {
300
0
  if (gm->wmmat[5] == (1 << WARPEDMODEL_PREC_BITS) && !gm->wmmat[4] &&
301
0
      gm->wmmat[2] == (1 << WARPEDMODEL_PREC_BITS) && !gm->wmmat[3]) {
302
0
    return ((!gm->wmmat[1] && !gm->wmmat[0]) ? IDENTITY : TRANSLATION);
303
0
  }
304
0
  if (gm->wmmat[2] == gm->wmmat[5] && gm->wmmat[3] == -gm->wmmat[4])
305
0
    return ROTZOOM;
306
0
  else
307
0
    return AFFINE;
308
0
}
Unexecuted instantiation: av1_dx_iface.c:get_wmtype
Unexecuted instantiation: decodeframe.c:get_wmtype
Unexecuted instantiation: decodemv.c:get_wmtype
Unexecuted instantiation: decoder.c:get_wmtype
Unexecuted instantiation: decodetxb.c:get_wmtype
Unexecuted instantiation: detokenize.c:get_wmtype
Unexecuted instantiation: obu.c:get_wmtype
Unexecuted instantiation: av1_cx_iface.c:get_wmtype
Unexecuted instantiation: allintra_vis.c:get_wmtype
Unexecuted instantiation: av1_quantize.c:get_wmtype
Unexecuted instantiation: bitstream.c:get_wmtype
Unexecuted instantiation: context_tree.c:get_wmtype
Unexecuted instantiation: encodeframe.c:get_wmtype
Unexecuted instantiation: encodeframe_utils.c:get_wmtype
Unexecuted instantiation: encodemb.c:get_wmtype
Unexecuted instantiation: encodemv.c:get_wmtype
Unexecuted instantiation: encoder.c:get_wmtype
Unexecuted instantiation: encoder_utils.c:get_wmtype
Unexecuted instantiation: encodetxb.c:get_wmtype
Unexecuted instantiation: ethread.c:get_wmtype
Unexecuted instantiation: firstpass.c:get_wmtype
Unexecuted instantiation: global_motion_facade.c:get_wmtype
Unexecuted instantiation: hash.c:get_wmtype
Unexecuted instantiation: hash_motion.c:get_wmtype
Unexecuted instantiation: hybrid_fwd_txfm.c:get_wmtype
Unexecuted instantiation: level.c:get_wmtype
Unexecuted instantiation: lookahead.c:get_wmtype
Unexecuted instantiation: mcomp.c:get_wmtype
Unexecuted instantiation: mv_prec.c:get_wmtype
Unexecuted instantiation: palette.c:get_wmtype
Unexecuted instantiation: partition_search.c:get_wmtype
Unexecuted instantiation: partition_strategy.c:get_wmtype
Unexecuted instantiation: pass2_strategy.c:get_wmtype
Unexecuted instantiation: pickcdef.c:get_wmtype
Unexecuted instantiation: picklpf.c:get_wmtype
Unexecuted instantiation: pickrst.c:get_wmtype
Unexecuted instantiation: ratectrl.c:get_wmtype
Unexecuted instantiation: rd.c:get_wmtype
Unexecuted instantiation: rdopt.c:get_wmtype
Unexecuted instantiation: nonrd_pickmode.c:get_wmtype
Unexecuted instantiation: nonrd_opt.c:get_wmtype
Unexecuted instantiation: reconinter_enc.c:get_wmtype
Unexecuted instantiation: segmentation.c:get_wmtype
Unexecuted instantiation: speed_features.c:get_wmtype
Unexecuted instantiation: superres_scale.c:get_wmtype
Unexecuted instantiation: svc_layercontext.c:get_wmtype
Unexecuted instantiation: temporal_filter.c:get_wmtype
Unexecuted instantiation: tokenize.c:get_wmtype
Unexecuted instantiation: tpl_model.c:get_wmtype
Unexecuted instantiation: tx_search.c:get_wmtype
Unexecuted instantiation: txb_rdopt.c:get_wmtype
Unexecuted instantiation: intra_mode_search.c:get_wmtype
Unexecuted instantiation: var_based_part.c:get_wmtype
Unexecuted instantiation: av1_noise_estimate.c:get_wmtype
Unexecuted instantiation: dwt.c:get_wmtype
Unexecuted instantiation: aom_dsp_rtcd.c:get_wmtype
Unexecuted instantiation: av1_rtcd.c:get_wmtype
Unexecuted instantiation: aom_convolve.c:get_wmtype
Unexecuted instantiation: blend_a64_mask.c:get_wmtype
Unexecuted instantiation: avg.c:get_wmtype
Unexecuted instantiation: blk_sse_sum.c:get_wmtype
Unexecuted instantiation: fwd_txfm.c:get_wmtype
Unexecuted instantiation: psnr.c:get_wmtype
Unexecuted instantiation: quantize.c:get_wmtype
Unexecuted instantiation: sad.c:get_wmtype
Unexecuted instantiation: sad_av1.c:get_wmtype
Unexecuted instantiation: subtract.c:get_wmtype
Unexecuted instantiation: sse.c:get_wmtype
Unexecuted instantiation: sum_squares.c:get_wmtype
Unexecuted instantiation: variance.c:get_wmtype
Unexecuted instantiation: pyramid.c:get_wmtype
Unexecuted instantiation: noise_util.c:get_wmtype
Unexecuted instantiation: alloccommon.c:get_wmtype
Unexecuted instantiation: av1_loopfilter.c:get_wmtype
Unexecuted instantiation: blockd.c:get_wmtype
Unexecuted instantiation: cdef.c:get_wmtype
Unexecuted instantiation: cdef_block.c:get_wmtype
Unexecuted instantiation: cfl.c:get_wmtype
Unexecuted instantiation: debugmodes.c:get_wmtype
Unexecuted instantiation: entropy.c:get_wmtype
Unexecuted instantiation: entropymode.c:get_wmtype
Unexecuted instantiation: entropymv.c:get_wmtype
Unexecuted instantiation: idct.c:get_wmtype
Unexecuted instantiation: mvref_common.c:get_wmtype
Unexecuted instantiation: pred_common.c:get_wmtype
Unexecuted instantiation: quant_common.c:get_wmtype
Unexecuted instantiation: reconinter.c:get_wmtype
Unexecuted instantiation: reconintra.c:get_wmtype
Unexecuted instantiation: resize.c:get_wmtype
Unexecuted instantiation: restoration.c:get_wmtype
Unexecuted instantiation: scale.c:get_wmtype
Unexecuted instantiation: scan.c:get_wmtype
Unexecuted instantiation: seg_common.c:get_wmtype
Unexecuted instantiation: thread_common.c:get_wmtype
Unexecuted instantiation: tile_common.c:get_wmtype
Unexecuted instantiation: txb_common.c:get_wmtype
Unexecuted instantiation: warped_motion.c:get_wmtype
Unexecuted instantiation: aq_complexity.c:get_wmtype
Unexecuted instantiation: aq_cyclicrefresh.c:get_wmtype
Unexecuted instantiation: aq_variance.c:get_wmtype
Unexecuted instantiation: av1_fwd_txfm2d.c:get_wmtype
Unexecuted instantiation: cnn.c:get_wmtype
Unexecuted instantiation: compound_type.c:get_wmtype
Unexecuted instantiation: encode_strategy.c:get_wmtype
Unexecuted instantiation: global_motion.c:get_wmtype
Unexecuted instantiation: gop_structure.c:get_wmtype
Unexecuted instantiation: interp_search.c:get_wmtype
Unexecuted instantiation: ml.c:get_wmtype
Unexecuted instantiation: motion_search_facade.c:get_wmtype
Unexecuted instantiation: wedge_utils.c:get_wmtype
Unexecuted instantiation: blend_a64_hmask.c:get_wmtype
Unexecuted instantiation: blend_a64_vmask.c:get_wmtype
Unexecuted instantiation: intrapred.c:get_wmtype
Unexecuted instantiation: loopfilter.c:get_wmtype
Unexecuted instantiation: fft.c:get_wmtype
Unexecuted instantiation: corner_match.c:get_wmtype
Unexecuted instantiation: disflow.c:get_wmtype
Unexecuted instantiation: av1_inv_txfm2d.c:get_wmtype
Unexecuted instantiation: av1_txfm.c:get_wmtype
Unexecuted instantiation: convolve.c:get_wmtype
Unexecuted instantiation: av1_fwd_txfm1d.c:get_wmtype
Unexecuted instantiation: av1_inv_txfm1d.c:get_wmtype
309
310
typedef struct candidate_mv {
311
  int_mv this_mv;
312
  int_mv comp_mv;
313
} CANDIDATE_MV;
314
315
0
static inline int is_zero_mv(const MV *mv) {
316
0
  return *((const uint32_t *)mv) == 0;
317
0
}
Unexecuted instantiation: av1_dx_iface.c:is_zero_mv
Unexecuted instantiation: decodeframe.c:is_zero_mv
Unexecuted instantiation: decodemv.c:is_zero_mv
Unexecuted instantiation: decoder.c:is_zero_mv
Unexecuted instantiation: decodetxb.c:is_zero_mv
Unexecuted instantiation: detokenize.c:is_zero_mv
Unexecuted instantiation: obu.c:is_zero_mv
Unexecuted instantiation: av1_cx_iface.c:is_zero_mv
Unexecuted instantiation: allintra_vis.c:is_zero_mv
Unexecuted instantiation: av1_quantize.c:is_zero_mv
Unexecuted instantiation: bitstream.c:is_zero_mv
Unexecuted instantiation: context_tree.c:is_zero_mv
Unexecuted instantiation: encodeframe.c:is_zero_mv
Unexecuted instantiation: encodeframe_utils.c:is_zero_mv
Unexecuted instantiation: encodemb.c:is_zero_mv
Unexecuted instantiation: encodemv.c:is_zero_mv
Unexecuted instantiation: encoder.c:is_zero_mv
Unexecuted instantiation: encoder_utils.c:is_zero_mv
Unexecuted instantiation: encodetxb.c:is_zero_mv
Unexecuted instantiation: ethread.c:is_zero_mv
Unexecuted instantiation: firstpass.c:is_zero_mv
Unexecuted instantiation: global_motion_facade.c:is_zero_mv
Unexecuted instantiation: hash.c:is_zero_mv
Unexecuted instantiation: hash_motion.c:is_zero_mv
Unexecuted instantiation: hybrid_fwd_txfm.c:is_zero_mv
Unexecuted instantiation: level.c:is_zero_mv
Unexecuted instantiation: lookahead.c:is_zero_mv
Unexecuted instantiation: mcomp.c:is_zero_mv
Unexecuted instantiation: mv_prec.c:is_zero_mv
Unexecuted instantiation: palette.c:is_zero_mv
Unexecuted instantiation: partition_search.c:is_zero_mv
Unexecuted instantiation: partition_strategy.c:is_zero_mv
Unexecuted instantiation: pass2_strategy.c:is_zero_mv
Unexecuted instantiation: pickcdef.c:is_zero_mv
Unexecuted instantiation: picklpf.c:is_zero_mv
Unexecuted instantiation: pickrst.c:is_zero_mv
Unexecuted instantiation: ratectrl.c:is_zero_mv
Unexecuted instantiation: rd.c:is_zero_mv
Unexecuted instantiation: rdopt.c:is_zero_mv
Unexecuted instantiation: nonrd_pickmode.c:is_zero_mv
Unexecuted instantiation: nonrd_opt.c:is_zero_mv
Unexecuted instantiation: reconinter_enc.c:is_zero_mv
Unexecuted instantiation: segmentation.c:is_zero_mv
Unexecuted instantiation: speed_features.c:is_zero_mv
Unexecuted instantiation: superres_scale.c:is_zero_mv
Unexecuted instantiation: svc_layercontext.c:is_zero_mv
Unexecuted instantiation: temporal_filter.c:is_zero_mv
Unexecuted instantiation: tokenize.c:is_zero_mv
Unexecuted instantiation: tpl_model.c:is_zero_mv
Unexecuted instantiation: tx_search.c:is_zero_mv
Unexecuted instantiation: txb_rdopt.c:is_zero_mv
Unexecuted instantiation: intra_mode_search.c:is_zero_mv
Unexecuted instantiation: var_based_part.c:is_zero_mv
Unexecuted instantiation: av1_noise_estimate.c:is_zero_mv
Unexecuted instantiation: dwt.c:is_zero_mv
Unexecuted instantiation: aom_dsp_rtcd.c:is_zero_mv
Unexecuted instantiation: av1_rtcd.c:is_zero_mv
Unexecuted instantiation: aom_convolve.c:is_zero_mv
Unexecuted instantiation: blend_a64_mask.c:is_zero_mv
Unexecuted instantiation: avg.c:is_zero_mv
Unexecuted instantiation: blk_sse_sum.c:is_zero_mv
Unexecuted instantiation: fwd_txfm.c:is_zero_mv
Unexecuted instantiation: psnr.c:is_zero_mv
Unexecuted instantiation: quantize.c:is_zero_mv
Unexecuted instantiation: sad.c:is_zero_mv
Unexecuted instantiation: sad_av1.c:is_zero_mv
Unexecuted instantiation: subtract.c:is_zero_mv
Unexecuted instantiation: sse.c:is_zero_mv
Unexecuted instantiation: sum_squares.c:is_zero_mv
Unexecuted instantiation: variance.c:is_zero_mv
Unexecuted instantiation: pyramid.c:is_zero_mv
Unexecuted instantiation: noise_util.c:is_zero_mv
Unexecuted instantiation: alloccommon.c:is_zero_mv
Unexecuted instantiation: av1_loopfilter.c:is_zero_mv
Unexecuted instantiation: blockd.c:is_zero_mv
Unexecuted instantiation: cdef.c:is_zero_mv
Unexecuted instantiation: cdef_block.c:is_zero_mv
Unexecuted instantiation: cfl.c:is_zero_mv
Unexecuted instantiation: debugmodes.c:is_zero_mv
Unexecuted instantiation: entropy.c:is_zero_mv
Unexecuted instantiation: entropymode.c:is_zero_mv
Unexecuted instantiation: entropymv.c:is_zero_mv
Unexecuted instantiation: idct.c:is_zero_mv
Unexecuted instantiation: mvref_common.c:is_zero_mv
Unexecuted instantiation: pred_common.c:is_zero_mv
Unexecuted instantiation: quant_common.c:is_zero_mv
Unexecuted instantiation: reconinter.c:is_zero_mv
Unexecuted instantiation: reconintra.c:is_zero_mv
Unexecuted instantiation: resize.c:is_zero_mv
Unexecuted instantiation: restoration.c:is_zero_mv
Unexecuted instantiation: scale.c:is_zero_mv
Unexecuted instantiation: scan.c:is_zero_mv
Unexecuted instantiation: seg_common.c:is_zero_mv
Unexecuted instantiation: thread_common.c:is_zero_mv
Unexecuted instantiation: tile_common.c:is_zero_mv
Unexecuted instantiation: txb_common.c:is_zero_mv
Unexecuted instantiation: warped_motion.c:is_zero_mv
Unexecuted instantiation: aq_complexity.c:is_zero_mv
Unexecuted instantiation: aq_cyclicrefresh.c:is_zero_mv
Unexecuted instantiation: aq_variance.c:is_zero_mv
Unexecuted instantiation: av1_fwd_txfm2d.c:is_zero_mv
Unexecuted instantiation: cnn.c:is_zero_mv
Unexecuted instantiation: compound_type.c:is_zero_mv
Unexecuted instantiation: encode_strategy.c:is_zero_mv
Unexecuted instantiation: global_motion.c:is_zero_mv
Unexecuted instantiation: gop_structure.c:is_zero_mv
Unexecuted instantiation: interp_search.c:is_zero_mv
Unexecuted instantiation: ml.c:is_zero_mv
Unexecuted instantiation: motion_search_facade.c:is_zero_mv
Unexecuted instantiation: wedge_utils.c:is_zero_mv
Unexecuted instantiation: blend_a64_hmask.c:is_zero_mv
Unexecuted instantiation: blend_a64_vmask.c:is_zero_mv
Unexecuted instantiation: intrapred.c:is_zero_mv
Unexecuted instantiation: loopfilter.c:is_zero_mv
Unexecuted instantiation: fft.c:is_zero_mv
Unexecuted instantiation: corner_match.c:is_zero_mv
Unexecuted instantiation: disflow.c:is_zero_mv
Unexecuted instantiation: av1_inv_txfm2d.c:is_zero_mv
Unexecuted instantiation: av1_txfm.c:is_zero_mv
Unexecuted instantiation: convolve.c:is_zero_mv
Unexecuted instantiation: av1_fwd_txfm1d.c:is_zero_mv
Unexecuted instantiation: av1_inv_txfm1d.c:is_zero_mv
318
319
0
static inline int is_equal_mv(const MV *a, const MV *b) {
320
0
  return *((const uint32_t *)a) == *((const uint32_t *)b);
321
0
}
Unexecuted instantiation: av1_dx_iface.c:is_equal_mv
Unexecuted instantiation: decodeframe.c:is_equal_mv
Unexecuted instantiation: decodemv.c:is_equal_mv
Unexecuted instantiation: decoder.c:is_equal_mv
Unexecuted instantiation: decodetxb.c:is_equal_mv
Unexecuted instantiation: detokenize.c:is_equal_mv
Unexecuted instantiation: obu.c:is_equal_mv
Unexecuted instantiation: av1_cx_iface.c:is_equal_mv
Unexecuted instantiation: allintra_vis.c:is_equal_mv
Unexecuted instantiation: av1_quantize.c:is_equal_mv
Unexecuted instantiation: bitstream.c:is_equal_mv
Unexecuted instantiation: context_tree.c:is_equal_mv
Unexecuted instantiation: encodeframe.c:is_equal_mv
Unexecuted instantiation: encodeframe_utils.c:is_equal_mv
Unexecuted instantiation: encodemb.c:is_equal_mv
Unexecuted instantiation: encodemv.c:is_equal_mv
Unexecuted instantiation: encoder.c:is_equal_mv
Unexecuted instantiation: encoder_utils.c:is_equal_mv
Unexecuted instantiation: encodetxb.c:is_equal_mv
Unexecuted instantiation: ethread.c:is_equal_mv
Unexecuted instantiation: firstpass.c:is_equal_mv
Unexecuted instantiation: global_motion_facade.c:is_equal_mv
Unexecuted instantiation: hash.c:is_equal_mv
Unexecuted instantiation: hash_motion.c:is_equal_mv
Unexecuted instantiation: hybrid_fwd_txfm.c:is_equal_mv
Unexecuted instantiation: level.c:is_equal_mv
Unexecuted instantiation: lookahead.c:is_equal_mv
Unexecuted instantiation: mcomp.c:is_equal_mv
Unexecuted instantiation: mv_prec.c:is_equal_mv
Unexecuted instantiation: palette.c:is_equal_mv
Unexecuted instantiation: partition_search.c:is_equal_mv
Unexecuted instantiation: partition_strategy.c:is_equal_mv
Unexecuted instantiation: pass2_strategy.c:is_equal_mv
Unexecuted instantiation: pickcdef.c:is_equal_mv
Unexecuted instantiation: picklpf.c:is_equal_mv
Unexecuted instantiation: pickrst.c:is_equal_mv
Unexecuted instantiation: ratectrl.c:is_equal_mv
Unexecuted instantiation: rd.c:is_equal_mv
Unexecuted instantiation: rdopt.c:is_equal_mv
Unexecuted instantiation: nonrd_pickmode.c:is_equal_mv
Unexecuted instantiation: nonrd_opt.c:is_equal_mv
Unexecuted instantiation: reconinter_enc.c:is_equal_mv
Unexecuted instantiation: segmentation.c:is_equal_mv
Unexecuted instantiation: speed_features.c:is_equal_mv
Unexecuted instantiation: superres_scale.c:is_equal_mv
Unexecuted instantiation: svc_layercontext.c:is_equal_mv
Unexecuted instantiation: temporal_filter.c:is_equal_mv
Unexecuted instantiation: tokenize.c:is_equal_mv
Unexecuted instantiation: tpl_model.c:is_equal_mv
Unexecuted instantiation: tx_search.c:is_equal_mv
Unexecuted instantiation: txb_rdopt.c:is_equal_mv
Unexecuted instantiation: intra_mode_search.c:is_equal_mv
Unexecuted instantiation: var_based_part.c:is_equal_mv
Unexecuted instantiation: av1_noise_estimate.c:is_equal_mv
Unexecuted instantiation: dwt.c:is_equal_mv
Unexecuted instantiation: aom_dsp_rtcd.c:is_equal_mv
Unexecuted instantiation: av1_rtcd.c:is_equal_mv
Unexecuted instantiation: aom_convolve.c:is_equal_mv
Unexecuted instantiation: blend_a64_mask.c:is_equal_mv
Unexecuted instantiation: avg.c:is_equal_mv
Unexecuted instantiation: blk_sse_sum.c:is_equal_mv
Unexecuted instantiation: fwd_txfm.c:is_equal_mv
Unexecuted instantiation: psnr.c:is_equal_mv
Unexecuted instantiation: quantize.c:is_equal_mv
Unexecuted instantiation: sad.c:is_equal_mv
Unexecuted instantiation: sad_av1.c:is_equal_mv
Unexecuted instantiation: subtract.c:is_equal_mv
Unexecuted instantiation: sse.c:is_equal_mv
Unexecuted instantiation: sum_squares.c:is_equal_mv
Unexecuted instantiation: variance.c:is_equal_mv
Unexecuted instantiation: pyramid.c:is_equal_mv
Unexecuted instantiation: noise_util.c:is_equal_mv
Unexecuted instantiation: alloccommon.c:is_equal_mv
Unexecuted instantiation: av1_loopfilter.c:is_equal_mv
Unexecuted instantiation: blockd.c:is_equal_mv
Unexecuted instantiation: cdef.c:is_equal_mv
Unexecuted instantiation: cdef_block.c:is_equal_mv
Unexecuted instantiation: cfl.c:is_equal_mv
Unexecuted instantiation: debugmodes.c:is_equal_mv
Unexecuted instantiation: entropy.c:is_equal_mv
Unexecuted instantiation: entropymode.c:is_equal_mv
Unexecuted instantiation: entropymv.c:is_equal_mv
Unexecuted instantiation: idct.c:is_equal_mv
Unexecuted instantiation: mvref_common.c:is_equal_mv
Unexecuted instantiation: pred_common.c:is_equal_mv
Unexecuted instantiation: quant_common.c:is_equal_mv
Unexecuted instantiation: reconinter.c:is_equal_mv
Unexecuted instantiation: reconintra.c:is_equal_mv
Unexecuted instantiation: resize.c:is_equal_mv
Unexecuted instantiation: restoration.c:is_equal_mv
Unexecuted instantiation: scale.c:is_equal_mv
Unexecuted instantiation: scan.c:is_equal_mv
Unexecuted instantiation: seg_common.c:is_equal_mv
Unexecuted instantiation: thread_common.c:is_equal_mv
Unexecuted instantiation: tile_common.c:is_equal_mv
Unexecuted instantiation: txb_common.c:is_equal_mv
Unexecuted instantiation: warped_motion.c:is_equal_mv
Unexecuted instantiation: aq_complexity.c:is_equal_mv
Unexecuted instantiation: aq_cyclicrefresh.c:is_equal_mv
Unexecuted instantiation: aq_variance.c:is_equal_mv
Unexecuted instantiation: av1_fwd_txfm2d.c:is_equal_mv
Unexecuted instantiation: cnn.c:is_equal_mv
Unexecuted instantiation: compound_type.c:is_equal_mv
Unexecuted instantiation: encode_strategy.c:is_equal_mv
Unexecuted instantiation: global_motion.c:is_equal_mv
Unexecuted instantiation: gop_structure.c:is_equal_mv
Unexecuted instantiation: interp_search.c:is_equal_mv
Unexecuted instantiation: ml.c:is_equal_mv
Unexecuted instantiation: motion_search_facade.c:is_equal_mv
Unexecuted instantiation: wedge_utils.c:is_equal_mv
Unexecuted instantiation: blend_a64_hmask.c:is_equal_mv
Unexecuted instantiation: blend_a64_vmask.c:is_equal_mv
Unexecuted instantiation: intrapred.c:is_equal_mv
Unexecuted instantiation: loopfilter.c:is_equal_mv
Unexecuted instantiation: fft.c:is_equal_mv
Unexecuted instantiation: corner_match.c:is_equal_mv
Unexecuted instantiation: disflow.c:is_equal_mv
Unexecuted instantiation: av1_inv_txfm2d.c:is_equal_mv
Unexecuted instantiation: av1_txfm.c:is_equal_mv
Unexecuted instantiation: convolve.c:is_equal_mv
Unexecuted instantiation: av1_fwd_txfm1d.c:is_equal_mv
Unexecuted instantiation: av1_inv_txfm1d.c:is_equal_mv
322
323
739k
static inline void clamp_mv(MV *mv, const SubpelMvLimits *mv_limits) {
324
739k
  mv->col = clamp(mv->col, mv_limits->col_min, mv_limits->col_max);
325
739k
  mv->row = clamp(mv->row, mv_limits->row_min, mv_limits->row_max);
326
739k
}
Unexecuted instantiation: av1_dx_iface.c:clamp_mv
decodeframe.c:clamp_mv
Line
Count
Source
323
324k
static inline void clamp_mv(MV *mv, const SubpelMvLimits *mv_limits) {
324
324k
  mv->col = clamp(mv->col, mv_limits->col_min, mv_limits->col_max);
325
324k
  mv->row = clamp(mv->row, mv_limits->row_min, mv_limits->row_max);
326
324k
}
Unexecuted instantiation: decodemv.c:clamp_mv
Unexecuted instantiation: decoder.c:clamp_mv
Unexecuted instantiation: decodetxb.c:clamp_mv
Unexecuted instantiation: detokenize.c:clamp_mv
Unexecuted instantiation: obu.c:clamp_mv
Unexecuted instantiation: av1_cx_iface.c:clamp_mv
Unexecuted instantiation: allintra_vis.c:clamp_mv
Unexecuted instantiation: av1_quantize.c:clamp_mv
Unexecuted instantiation: bitstream.c:clamp_mv
Unexecuted instantiation: context_tree.c:clamp_mv
Unexecuted instantiation: encodeframe.c:clamp_mv
Unexecuted instantiation: encodeframe_utils.c:clamp_mv
Unexecuted instantiation: encodemb.c:clamp_mv
Unexecuted instantiation: encodemv.c:clamp_mv
Unexecuted instantiation: encoder.c:clamp_mv
Unexecuted instantiation: encoder_utils.c:clamp_mv
Unexecuted instantiation: encodetxb.c:clamp_mv
Unexecuted instantiation: ethread.c:clamp_mv
Unexecuted instantiation: firstpass.c:clamp_mv
Unexecuted instantiation: global_motion_facade.c:clamp_mv
Unexecuted instantiation: hash.c:clamp_mv
Unexecuted instantiation: hash_motion.c:clamp_mv
Unexecuted instantiation: hybrid_fwd_txfm.c:clamp_mv
Unexecuted instantiation: level.c:clamp_mv
Unexecuted instantiation: lookahead.c:clamp_mv
Unexecuted instantiation: mcomp.c:clamp_mv
Unexecuted instantiation: mv_prec.c:clamp_mv
Unexecuted instantiation: palette.c:clamp_mv
Unexecuted instantiation: partition_search.c:clamp_mv
Unexecuted instantiation: partition_strategy.c:clamp_mv
Unexecuted instantiation: pass2_strategy.c:clamp_mv
Unexecuted instantiation: pickcdef.c:clamp_mv
Unexecuted instantiation: picklpf.c:clamp_mv
Unexecuted instantiation: pickrst.c:clamp_mv
Unexecuted instantiation: ratectrl.c:clamp_mv
Unexecuted instantiation: rd.c:clamp_mv
Unexecuted instantiation: rdopt.c:clamp_mv
Unexecuted instantiation: nonrd_pickmode.c:clamp_mv
Unexecuted instantiation: nonrd_opt.c:clamp_mv
Unexecuted instantiation: reconinter_enc.c:clamp_mv
Unexecuted instantiation: segmentation.c:clamp_mv
Unexecuted instantiation: speed_features.c:clamp_mv
Unexecuted instantiation: superres_scale.c:clamp_mv
Unexecuted instantiation: svc_layercontext.c:clamp_mv
Unexecuted instantiation: temporal_filter.c:clamp_mv
Unexecuted instantiation: tokenize.c:clamp_mv
Unexecuted instantiation: tpl_model.c:clamp_mv
Unexecuted instantiation: tx_search.c:clamp_mv
Unexecuted instantiation: txb_rdopt.c:clamp_mv
Unexecuted instantiation: intra_mode_search.c:clamp_mv
Unexecuted instantiation: var_based_part.c:clamp_mv
Unexecuted instantiation: av1_noise_estimate.c:clamp_mv
Unexecuted instantiation: dwt.c:clamp_mv
Unexecuted instantiation: aom_dsp_rtcd.c:clamp_mv
Unexecuted instantiation: av1_rtcd.c:clamp_mv
Unexecuted instantiation: aom_convolve.c:clamp_mv
Unexecuted instantiation: blend_a64_mask.c:clamp_mv
Unexecuted instantiation: avg.c:clamp_mv
Unexecuted instantiation: blk_sse_sum.c:clamp_mv
Unexecuted instantiation: fwd_txfm.c:clamp_mv
Unexecuted instantiation: psnr.c:clamp_mv
Unexecuted instantiation: quantize.c:clamp_mv
Unexecuted instantiation: sad.c:clamp_mv
Unexecuted instantiation: sad_av1.c:clamp_mv
Unexecuted instantiation: subtract.c:clamp_mv
Unexecuted instantiation: sse.c:clamp_mv
Unexecuted instantiation: sum_squares.c:clamp_mv
Unexecuted instantiation: variance.c:clamp_mv
Unexecuted instantiation: pyramid.c:clamp_mv
Unexecuted instantiation: noise_util.c:clamp_mv
Unexecuted instantiation: alloccommon.c:clamp_mv
Unexecuted instantiation: av1_loopfilter.c:clamp_mv
Unexecuted instantiation: blockd.c:clamp_mv
Unexecuted instantiation: cdef.c:clamp_mv
Unexecuted instantiation: cdef_block.c:clamp_mv
Unexecuted instantiation: cfl.c:clamp_mv
Unexecuted instantiation: debugmodes.c:clamp_mv
Unexecuted instantiation: entropy.c:clamp_mv
Unexecuted instantiation: entropymode.c:clamp_mv
Unexecuted instantiation: entropymv.c:clamp_mv
Unexecuted instantiation: idct.c:clamp_mv
mvref_common.c:clamp_mv
Line
Count
Source
323
415k
static inline void clamp_mv(MV *mv, const SubpelMvLimits *mv_limits) {
324
415k
  mv->col = clamp(mv->col, mv_limits->col_min, mv_limits->col_max);
325
415k
  mv->row = clamp(mv->row, mv_limits->row_min, mv_limits->row_max);
326
415k
}
Unexecuted instantiation: pred_common.c:clamp_mv
Unexecuted instantiation: quant_common.c:clamp_mv
Unexecuted instantiation: reconinter.c:clamp_mv
Unexecuted instantiation: reconintra.c:clamp_mv
Unexecuted instantiation: resize.c:clamp_mv
Unexecuted instantiation: restoration.c:clamp_mv
Unexecuted instantiation: scale.c:clamp_mv
Unexecuted instantiation: scan.c:clamp_mv
Unexecuted instantiation: seg_common.c:clamp_mv
Unexecuted instantiation: thread_common.c:clamp_mv
Unexecuted instantiation: tile_common.c:clamp_mv
Unexecuted instantiation: txb_common.c:clamp_mv
Unexecuted instantiation: warped_motion.c:clamp_mv
Unexecuted instantiation: aq_complexity.c:clamp_mv
Unexecuted instantiation: aq_cyclicrefresh.c:clamp_mv
Unexecuted instantiation: aq_variance.c:clamp_mv
Unexecuted instantiation: av1_fwd_txfm2d.c:clamp_mv
Unexecuted instantiation: cnn.c:clamp_mv
Unexecuted instantiation: compound_type.c:clamp_mv
Unexecuted instantiation: encode_strategy.c:clamp_mv
Unexecuted instantiation: global_motion.c:clamp_mv
Unexecuted instantiation: gop_structure.c:clamp_mv
Unexecuted instantiation: interp_search.c:clamp_mv
Unexecuted instantiation: ml.c:clamp_mv
Unexecuted instantiation: motion_search_facade.c:clamp_mv
Unexecuted instantiation: wedge_utils.c:clamp_mv
Unexecuted instantiation: blend_a64_hmask.c:clamp_mv
Unexecuted instantiation: blend_a64_vmask.c:clamp_mv
Unexecuted instantiation: intrapred.c:clamp_mv
Unexecuted instantiation: loopfilter.c:clamp_mv
Unexecuted instantiation: fft.c:clamp_mv
Unexecuted instantiation: corner_match.c:clamp_mv
Unexecuted instantiation: disflow.c:clamp_mv
Unexecuted instantiation: av1_inv_txfm2d.c:clamp_mv
Unexecuted instantiation: av1_txfm.c:clamp_mv
Unexecuted instantiation: convolve.c:clamp_mv
Unexecuted instantiation: av1_fwd_txfm1d.c:clamp_mv
Unexecuted instantiation: av1_inv_txfm1d.c:clamp_mv
327
328
0
static inline void clamp_fullmv(FULLPEL_MV *mv, const FullMvLimits *mv_limits) {
329
0
  mv->col = clamp(mv->col, mv_limits->col_min, mv_limits->col_max);
330
0
  mv->row = clamp(mv->row, mv_limits->row_min, mv_limits->row_max);
331
0
}
Unexecuted instantiation: av1_dx_iface.c:clamp_fullmv
Unexecuted instantiation: decodeframe.c:clamp_fullmv
Unexecuted instantiation: decodemv.c:clamp_fullmv
Unexecuted instantiation: decoder.c:clamp_fullmv
Unexecuted instantiation: decodetxb.c:clamp_fullmv
Unexecuted instantiation: detokenize.c:clamp_fullmv
Unexecuted instantiation: obu.c:clamp_fullmv
Unexecuted instantiation: av1_cx_iface.c:clamp_fullmv
Unexecuted instantiation: allintra_vis.c:clamp_fullmv
Unexecuted instantiation: av1_quantize.c:clamp_fullmv
Unexecuted instantiation: bitstream.c:clamp_fullmv
Unexecuted instantiation: context_tree.c:clamp_fullmv
Unexecuted instantiation: encodeframe.c:clamp_fullmv
Unexecuted instantiation: encodeframe_utils.c:clamp_fullmv
Unexecuted instantiation: encodemb.c:clamp_fullmv
Unexecuted instantiation: encodemv.c:clamp_fullmv
Unexecuted instantiation: encoder.c:clamp_fullmv
Unexecuted instantiation: encoder_utils.c:clamp_fullmv
Unexecuted instantiation: encodetxb.c:clamp_fullmv
Unexecuted instantiation: ethread.c:clamp_fullmv
Unexecuted instantiation: firstpass.c:clamp_fullmv
Unexecuted instantiation: global_motion_facade.c:clamp_fullmv
Unexecuted instantiation: hash.c:clamp_fullmv
Unexecuted instantiation: hash_motion.c:clamp_fullmv
Unexecuted instantiation: hybrid_fwd_txfm.c:clamp_fullmv
Unexecuted instantiation: level.c:clamp_fullmv
Unexecuted instantiation: lookahead.c:clamp_fullmv
Unexecuted instantiation: mcomp.c:clamp_fullmv
Unexecuted instantiation: mv_prec.c:clamp_fullmv
Unexecuted instantiation: palette.c:clamp_fullmv
Unexecuted instantiation: partition_search.c:clamp_fullmv
Unexecuted instantiation: partition_strategy.c:clamp_fullmv
Unexecuted instantiation: pass2_strategy.c:clamp_fullmv
Unexecuted instantiation: pickcdef.c:clamp_fullmv
Unexecuted instantiation: picklpf.c:clamp_fullmv
Unexecuted instantiation: pickrst.c:clamp_fullmv
Unexecuted instantiation: ratectrl.c:clamp_fullmv
Unexecuted instantiation: rd.c:clamp_fullmv
Unexecuted instantiation: rdopt.c:clamp_fullmv
Unexecuted instantiation: nonrd_pickmode.c:clamp_fullmv
Unexecuted instantiation: nonrd_opt.c:clamp_fullmv
Unexecuted instantiation: reconinter_enc.c:clamp_fullmv
Unexecuted instantiation: segmentation.c:clamp_fullmv
Unexecuted instantiation: speed_features.c:clamp_fullmv
Unexecuted instantiation: superres_scale.c:clamp_fullmv
Unexecuted instantiation: svc_layercontext.c:clamp_fullmv
Unexecuted instantiation: temporal_filter.c:clamp_fullmv
Unexecuted instantiation: tokenize.c:clamp_fullmv
Unexecuted instantiation: tpl_model.c:clamp_fullmv
Unexecuted instantiation: tx_search.c:clamp_fullmv
Unexecuted instantiation: txb_rdopt.c:clamp_fullmv
Unexecuted instantiation: intra_mode_search.c:clamp_fullmv
Unexecuted instantiation: var_based_part.c:clamp_fullmv
Unexecuted instantiation: av1_noise_estimate.c:clamp_fullmv
Unexecuted instantiation: dwt.c:clamp_fullmv
Unexecuted instantiation: aom_dsp_rtcd.c:clamp_fullmv
Unexecuted instantiation: av1_rtcd.c:clamp_fullmv
Unexecuted instantiation: aom_convolve.c:clamp_fullmv
Unexecuted instantiation: blend_a64_mask.c:clamp_fullmv
Unexecuted instantiation: avg.c:clamp_fullmv
Unexecuted instantiation: blk_sse_sum.c:clamp_fullmv
Unexecuted instantiation: fwd_txfm.c:clamp_fullmv
Unexecuted instantiation: psnr.c:clamp_fullmv
Unexecuted instantiation: quantize.c:clamp_fullmv
Unexecuted instantiation: sad.c:clamp_fullmv
Unexecuted instantiation: sad_av1.c:clamp_fullmv
Unexecuted instantiation: subtract.c:clamp_fullmv
Unexecuted instantiation: sse.c:clamp_fullmv
Unexecuted instantiation: sum_squares.c:clamp_fullmv
Unexecuted instantiation: variance.c:clamp_fullmv
Unexecuted instantiation: pyramid.c:clamp_fullmv
Unexecuted instantiation: noise_util.c:clamp_fullmv
Unexecuted instantiation: alloccommon.c:clamp_fullmv
Unexecuted instantiation: av1_loopfilter.c:clamp_fullmv
Unexecuted instantiation: blockd.c:clamp_fullmv
Unexecuted instantiation: cdef.c:clamp_fullmv
Unexecuted instantiation: cdef_block.c:clamp_fullmv
Unexecuted instantiation: cfl.c:clamp_fullmv
Unexecuted instantiation: debugmodes.c:clamp_fullmv
Unexecuted instantiation: entropy.c:clamp_fullmv
Unexecuted instantiation: entropymode.c:clamp_fullmv
Unexecuted instantiation: entropymv.c:clamp_fullmv
Unexecuted instantiation: idct.c:clamp_fullmv
Unexecuted instantiation: mvref_common.c:clamp_fullmv
Unexecuted instantiation: pred_common.c:clamp_fullmv
Unexecuted instantiation: quant_common.c:clamp_fullmv
Unexecuted instantiation: reconinter.c:clamp_fullmv
Unexecuted instantiation: reconintra.c:clamp_fullmv
Unexecuted instantiation: resize.c:clamp_fullmv
Unexecuted instantiation: restoration.c:clamp_fullmv
Unexecuted instantiation: scale.c:clamp_fullmv
Unexecuted instantiation: scan.c:clamp_fullmv
Unexecuted instantiation: seg_common.c:clamp_fullmv
Unexecuted instantiation: thread_common.c:clamp_fullmv
Unexecuted instantiation: tile_common.c:clamp_fullmv
Unexecuted instantiation: txb_common.c:clamp_fullmv
Unexecuted instantiation: warped_motion.c:clamp_fullmv
Unexecuted instantiation: aq_complexity.c:clamp_fullmv
Unexecuted instantiation: aq_cyclicrefresh.c:clamp_fullmv
Unexecuted instantiation: aq_variance.c:clamp_fullmv
Unexecuted instantiation: av1_fwd_txfm2d.c:clamp_fullmv
Unexecuted instantiation: cnn.c:clamp_fullmv
Unexecuted instantiation: compound_type.c:clamp_fullmv
Unexecuted instantiation: encode_strategy.c:clamp_fullmv
Unexecuted instantiation: global_motion.c:clamp_fullmv
Unexecuted instantiation: gop_structure.c:clamp_fullmv
Unexecuted instantiation: interp_search.c:clamp_fullmv
Unexecuted instantiation: ml.c:clamp_fullmv
Unexecuted instantiation: motion_search_facade.c:clamp_fullmv
Unexecuted instantiation: wedge_utils.c:clamp_fullmv
Unexecuted instantiation: blend_a64_hmask.c:clamp_fullmv
Unexecuted instantiation: blend_a64_vmask.c:clamp_fullmv
Unexecuted instantiation: intrapred.c:clamp_fullmv
Unexecuted instantiation: loopfilter.c:clamp_fullmv
Unexecuted instantiation: fft.c:clamp_fullmv
Unexecuted instantiation: corner_match.c:clamp_fullmv
Unexecuted instantiation: disflow.c:clamp_fullmv
Unexecuted instantiation: av1_inv_txfm2d.c:clamp_fullmv
Unexecuted instantiation: av1_txfm.c:clamp_fullmv
Unexecuted instantiation: convolve.c:clamp_fullmv
Unexecuted instantiation: av1_fwd_txfm1d.c:clamp_fullmv
Unexecuted instantiation: av1_inv_txfm1d.c:clamp_fullmv
332
333
#ifdef __cplusplus
334
}  // extern "C"
335
#endif
336
337
#endif  // AOM_AV1_COMMON_MV_H_