Coverage Report

Created: 2024-09-06 07:53

/src/libvpx/vp9/common/vp9_mv.h
Line
Count
Source (jump to first uncovered line)
1
/*
2
 *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3
 *
4
 *  Use of this source code is governed by a BSD-style license
5
 *  that can be found in the LICENSE file in the root of the source
6
 *  tree. An additional intellectual property rights grant can be found
7
 *  in the file PATENTS.  All contributing project authors may
8
 *  be found in the AUTHORS file in the root of the source tree.
9
 */
10
11
#ifndef VPX_VP9_COMMON_VP9_MV_H_
12
#define VPX_VP9_COMMON_VP9_MV_H_
13
14
#include "vpx/vpx_integer.h"
15
16
#include "vp9/common/vp9_common.h"
17
18
#ifdef __cplusplus
19
extern "C" {
20
#endif
21
22
278M
#define INVALID_MV 0x80008000
23
24
typedef struct mv {
25
  int16_t row;
26
  int16_t col;
27
} MV;
28
29
typedef union int_mv {
30
  uint32_t as_int;
31
  MV as_mv;
32
} int_mv; /* facilitates faster equality tests and copies */
33
34
typedef struct mv32 {
35
  int32_t row;
36
  int32_t col;
37
} MV32;
38
39
0
static INLINE int is_zero_mv(const MV *mv) {
40
0
  return *((const uint32_t *)mv) == 0;
41
0
}
Unexecuted instantiation: vp9_cx_iface.c:is_zero_mv
Unexecuted instantiation: vp9_firstpass.c:is_zero_mv
Unexecuted instantiation: vp9_mcomp.c:is_zero_mv
Unexecuted instantiation: vp9_encoder.c:is_zero_mv
Unexecuted instantiation: vp9_picklpf.c:is_zero_mv
Unexecuted instantiation: vp9_quantize.c:is_zero_mv
Unexecuted instantiation: vp9_ratectrl.c:is_zero_mv
Unexecuted instantiation: vp9_rd.c:is_zero_mv
Unexecuted instantiation: vp9_segmentation.c:is_zero_mv
Unexecuted instantiation: vp9_speed_features.c:is_zero_mv
Unexecuted instantiation: vp9_svc_layercontext.c:is_zero_mv
Unexecuted instantiation: vp9_tokenize.c:is_zero_mv
Unexecuted instantiation: vp9_aq_variance.c:is_zero_mv
Unexecuted instantiation: vp9_aq_360.c:is_zero_mv
Unexecuted instantiation: vp9_aq_cyclicrefresh.c:is_zero_mv
Unexecuted instantiation: vp9_aq_complexity.c:is_zero_mv
Unexecuted instantiation: vp9_alt_ref_aq.c:is_zero_mv
Unexecuted instantiation: vp9_skin_detection.c:is_zero_mv
Unexecuted instantiation: vp9_noise_estimate.c:is_zero_mv
Unexecuted instantiation: vp9_ext_ratectrl.c:is_zero_mv
Unexecuted instantiation: vp9_temporal_filter.c:is_zero_mv
Unexecuted instantiation: vp9_tpl_model.c:is_zero_mv
Unexecuted instantiation: vp9_mbgraph.c:is_zero_mv
Unexecuted instantiation: yv12config.c:is_zero_mv
Unexecuted instantiation: vp9_alloccommon.c:is_zero_mv
Unexecuted instantiation: vp9_blockd.c:is_zero_mv
Unexecuted instantiation: vp9_entropy.c:is_zero_mv
Unexecuted instantiation: vp9_entropymode.c:is_zero_mv
Unexecuted instantiation: vp9_entropymv.c:is_zero_mv
Unexecuted instantiation: vp9_idct.c:is_zero_mv
Unexecuted instantiation: vp9_scale.c:is_zero_mv
Unexecuted instantiation: vp9_seg_common.c:is_zero_mv
Unexecuted instantiation: vp9_tile_common.c:is_zero_mv
Unexecuted instantiation: vp9_loopfilter.c:is_zero_mv
Unexecuted instantiation: vp9_thread_common.c:is_zero_mv
Unexecuted instantiation: vp9_reconinter.c:is_zero_mv
Unexecuted instantiation: vp9_reconintra.c:is_zero_mv
Unexecuted instantiation: vp9_scan.c:is_zero_mv
Unexecuted instantiation: vp9_bitstream.c:is_zero_mv
Unexecuted instantiation: vp9_context_tree.c:is_zero_mv
Unexecuted instantiation: vp9_dct.c:is_zero_mv
Unexecuted instantiation: vp9_encodeframe.c:is_zero_mv
Unexecuted instantiation: vp9_encodemb.c:is_zero_mv
Unexecuted instantiation: vp9_encodemv.c:is_zero_mv
Unexecuted instantiation: vp9_ethread.c:is_zero_mv
Unexecuted instantiation: vp9_frame_scale.c:is_zero_mv
Unexecuted instantiation: vp9_lookahead.c:is_zero_mv
Unexecuted instantiation: vp9_multi_thread.c:is_zero_mv
Unexecuted instantiation: vp9_rdopt.c:is_zero_mv
Unexecuted instantiation: vp9_pickmode.c:is_zero_mv
Unexecuted instantiation: temporal_filter_sse4.c:is_zero_mv
Unexecuted instantiation: vp9_quantize_sse2.c:is_zero_mv
Unexecuted instantiation: vp9_quantize_ssse3.c:is_zero_mv
Unexecuted instantiation: vp9_quantize_avx2.c:is_zero_mv
Unexecuted instantiation: highbd_temporal_filter_sse4.c:is_zero_mv
Unexecuted instantiation: quantize.c:is_zero_mv
Unexecuted instantiation: quantize_sse2.c:is_zero_mv
Unexecuted instantiation: quantize_ssse3.c:is_zero_mv
Unexecuted instantiation: quantize_avx.c:is_zero_mv
Unexecuted instantiation: quantize_avx2.c:is_zero_mv
Unexecuted instantiation: highbd_quantize_intrin_sse2.c:is_zero_mv
Unexecuted instantiation: highbd_quantize_intrin_avx2.c:is_zero_mv
Unexecuted instantiation: vp9_pred_common.c:is_zero_mv
Unexecuted instantiation: vp9_mvref_common.c:is_zero_mv
42
43
0
static INLINE int is_equal_mv(const MV *a, const MV *b) {
44
0
  return *((const uint32_t *)a) == *((const uint32_t *)b);
45
0
}
Unexecuted instantiation: vp9_cx_iface.c:is_equal_mv
Unexecuted instantiation: vp9_firstpass.c:is_equal_mv
Unexecuted instantiation: vp9_mcomp.c:is_equal_mv
Unexecuted instantiation: vp9_encoder.c:is_equal_mv
Unexecuted instantiation: vp9_picklpf.c:is_equal_mv
Unexecuted instantiation: vp9_quantize.c:is_equal_mv
Unexecuted instantiation: vp9_ratectrl.c:is_equal_mv
Unexecuted instantiation: vp9_rd.c:is_equal_mv
Unexecuted instantiation: vp9_segmentation.c:is_equal_mv
Unexecuted instantiation: vp9_speed_features.c:is_equal_mv
Unexecuted instantiation: vp9_svc_layercontext.c:is_equal_mv
Unexecuted instantiation: vp9_tokenize.c:is_equal_mv
Unexecuted instantiation: vp9_aq_variance.c:is_equal_mv
Unexecuted instantiation: vp9_aq_360.c:is_equal_mv
Unexecuted instantiation: vp9_aq_cyclicrefresh.c:is_equal_mv
Unexecuted instantiation: vp9_aq_complexity.c:is_equal_mv
Unexecuted instantiation: vp9_alt_ref_aq.c:is_equal_mv
Unexecuted instantiation: vp9_skin_detection.c:is_equal_mv
Unexecuted instantiation: vp9_noise_estimate.c:is_equal_mv
Unexecuted instantiation: vp9_ext_ratectrl.c:is_equal_mv
Unexecuted instantiation: vp9_temporal_filter.c:is_equal_mv
Unexecuted instantiation: vp9_tpl_model.c:is_equal_mv
Unexecuted instantiation: vp9_mbgraph.c:is_equal_mv
Unexecuted instantiation: yv12config.c:is_equal_mv
Unexecuted instantiation: vp9_alloccommon.c:is_equal_mv
Unexecuted instantiation: vp9_blockd.c:is_equal_mv
Unexecuted instantiation: vp9_entropy.c:is_equal_mv
Unexecuted instantiation: vp9_entropymode.c:is_equal_mv
Unexecuted instantiation: vp9_entropymv.c:is_equal_mv
Unexecuted instantiation: vp9_idct.c:is_equal_mv
Unexecuted instantiation: vp9_scale.c:is_equal_mv
Unexecuted instantiation: vp9_seg_common.c:is_equal_mv
Unexecuted instantiation: vp9_tile_common.c:is_equal_mv
Unexecuted instantiation: vp9_loopfilter.c:is_equal_mv
Unexecuted instantiation: vp9_thread_common.c:is_equal_mv
Unexecuted instantiation: vp9_reconinter.c:is_equal_mv
Unexecuted instantiation: vp9_reconintra.c:is_equal_mv
Unexecuted instantiation: vp9_scan.c:is_equal_mv
Unexecuted instantiation: vp9_bitstream.c:is_equal_mv
Unexecuted instantiation: vp9_context_tree.c:is_equal_mv
Unexecuted instantiation: vp9_dct.c:is_equal_mv
Unexecuted instantiation: vp9_encodeframe.c:is_equal_mv
Unexecuted instantiation: vp9_encodemb.c:is_equal_mv
Unexecuted instantiation: vp9_encodemv.c:is_equal_mv
Unexecuted instantiation: vp9_ethread.c:is_equal_mv
Unexecuted instantiation: vp9_frame_scale.c:is_equal_mv
Unexecuted instantiation: vp9_lookahead.c:is_equal_mv
Unexecuted instantiation: vp9_multi_thread.c:is_equal_mv
Unexecuted instantiation: vp9_rdopt.c:is_equal_mv
Unexecuted instantiation: vp9_pickmode.c:is_equal_mv
Unexecuted instantiation: temporal_filter_sse4.c:is_equal_mv
Unexecuted instantiation: vp9_quantize_sse2.c:is_equal_mv
Unexecuted instantiation: vp9_quantize_ssse3.c:is_equal_mv
Unexecuted instantiation: vp9_quantize_avx2.c:is_equal_mv
Unexecuted instantiation: highbd_temporal_filter_sse4.c:is_equal_mv
Unexecuted instantiation: quantize.c:is_equal_mv
Unexecuted instantiation: quantize_sse2.c:is_equal_mv
Unexecuted instantiation: quantize_ssse3.c:is_equal_mv
Unexecuted instantiation: quantize_avx.c:is_equal_mv
Unexecuted instantiation: quantize_avx2.c:is_equal_mv
Unexecuted instantiation: highbd_quantize_intrin_sse2.c:is_equal_mv
Unexecuted instantiation: highbd_quantize_intrin_avx2.c:is_equal_mv
Unexecuted instantiation: vp9_pred_common.c:is_equal_mv
Unexecuted instantiation: vp9_mvref_common.c:is_equal_mv
46
47
static INLINE void clamp_mv(MV *mv, int min_col, int max_col, int min_row,
48
235M
                            int max_row) {
49
235M
  mv->col = clamp(mv->col, min_col, max_col);
50
235M
  mv->row = clamp(mv->row, min_row, max_row);
51
235M
}
Unexecuted instantiation: vp9_cx_iface.c:clamp_mv
Unexecuted instantiation: vp9_firstpass.c:clamp_mv
vp9_mcomp.c:clamp_mv
Line
Count
Source
48
27.1M
                            int max_row) {
49
27.1M
  mv->col = clamp(mv->col, min_col, max_col);
50
27.1M
  mv->row = clamp(mv->row, min_row, max_row);
51
27.1M
}
Unexecuted instantiation: vp9_encoder.c:clamp_mv
Unexecuted instantiation: vp9_picklpf.c:clamp_mv
Unexecuted instantiation: vp9_quantize.c:clamp_mv
Unexecuted instantiation: vp9_ratectrl.c:clamp_mv
Unexecuted instantiation: vp9_rd.c:clamp_mv
Unexecuted instantiation: vp9_segmentation.c:clamp_mv
Unexecuted instantiation: vp9_speed_features.c:clamp_mv
Unexecuted instantiation: vp9_svc_layercontext.c:clamp_mv
Unexecuted instantiation: vp9_tokenize.c:clamp_mv
Unexecuted instantiation: vp9_aq_variance.c:clamp_mv
Unexecuted instantiation: vp9_aq_360.c:clamp_mv
Unexecuted instantiation: vp9_aq_cyclicrefresh.c:clamp_mv
Unexecuted instantiation: vp9_aq_complexity.c:clamp_mv
Unexecuted instantiation: vp9_alt_ref_aq.c:clamp_mv
Unexecuted instantiation: vp9_skin_detection.c:clamp_mv
Unexecuted instantiation: vp9_noise_estimate.c:clamp_mv
Unexecuted instantiation: vp9_ext_ratectrl.c:clamp_mv
Unexecuted instantiation: vp9_temporal_filter.c:clamp_mv
Unexecuted instantiation: vp9_tpl_model.c:clamp_mv
Unexecuted instantiation: vp9_mbgraph.c:clamp_mv
Unexecuted instantiation: yv12config.c:clamp_mv
Unexecuted instantiation: vp9_alloccommon.c:clamp_mv
Unexecuted instantiation: vp9_blockd.c:clamp_mv
Unexecuted instantiation: vp9_entropy.c:clamp_mv
Unexecuted instantiation: vp9_entropymode.c:clamp_mv
Unexecuted instantiation: vp9_entropymv.c:clamp_mv
Unexecuted instantiation: vp9_idct.c:clamp_mv
Unexecuted instantiation: vp9_scale.c:clamp_mv
Unexecuted instantiation: vp9_seg_common.c:clamp_mv
Unexecuted instantiation: vp9_tile_common.c:clamp_mv
Unexecuted instantiation: vp9_loopfilter.c:clamp_mv
Unexecuted instantiation: vp9_thread_common.c:clamp_mv
vp9_reconinter.c:clamp_mv
Line
Count
Source
48
104M
                            int max_row) {
49
104M
  mv->col = clamp(mv->col, min_col, max_col);
50
104M
  mv->row = clamp(mv->row, min_row, max_row);
51
104M
}
Unexecuted instantiation: vp9_reconintra.c:clamp_mv
Unexecuted instantiation: vp9_scan.c:clamp_mv
Unexecuted instantiation: vp9_bitstream.c:clamp_mv
Unexecuted instantiation: vp9_context_tree.c:clamp_mv
Unexecuted instantiation: vp9_dct.c:clamp_mv
Unexecuted instantiation: vp9_encodeframe.c:clamp_mv
Unexecuted instantiation: vp9_encodemb.c:clamp_mv
Unexecuted instantiation: vp9_encodemv.c:clamp_mv
Unexecuted instantiation: vp9_ethread.c:clamp_mv
Unexecuted instantiation: vp9_frame_scale.c:clamp_mv
Unexecuted instantiation: vp9_lookahead.c:clamp_mv
Unexecuted instantiation: vp9_multi_thread.c:clamp_mv
vp9_rdopt.c:clamp_mv
Line
Count
Source
48
13.0M
                            int max_row) {
49
13.0M
  mv->col = clamp(mv->col, min_col, max_col);
50
13.0M
  mv->row = clamp(mv->row, min_row, max_row);
51
13.0M
}
Unexecuted instantiation: vp9_pickmode.c:clamp_mv
Unexecuted instantiation: temporal_filter_sse4.c:clamp_mv
Unexecuted instantiation: vp9_quantize_sse2.c:clamp_mv
Unexecuted instantiation: vp9_quantize_ssse3.c:clamp_mv
Unexecuted instantiation: vp9_quantize_avx2.c:clamp_mv
Unexecuted instantiation: highbd_temporal_filter_sse4.c:clamp_mv
Unexecuted instantiation: quantize.c:clamp_mv
Unexecuted instantiation: quantize_sse2.c:clamp_mv
Unexecuted instantiation: quantize_ssse3.c:clamp_mv
Unexecuted instantiation: quantize_avx.c:clamp_mv
Unexecuted instantiation: quantize_avx2.c:clamp_mv
Unexecuted instantiation: highbd_quantize_intrin_sse2.c:clamp_mv
Unexecuted instantiation: highbd_quantize_intrin_avx2.c:clamp_mv
Unexecuted instantiation: vp9_pred_common.c:clamp_mv
vp9_mvref_common.c:clamp_mv
Line
Count
Source
48
91.1M
                            int max_row) {
49
91.1M
  mv->col = clamp(mv->col, min_col, max_col);
50
91.1M
  mv->row = clamp(mv->row, min_row, max_row);
51
91.1M
}
52
53
#ifdef __cplusplus
54
}  // extern "C"
55
#endif
56
57
#endif  // VPX_VP9_COMMON_VP9_MV_H_