/src/aom/av1/common/av1_txfm.h
Line | Count | Source (jump to first uncovered line) |
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_AV1_TXFM_H_ |
13 | | #define AOM_AV1_COMMON_AV1_TXFM_H_ |
14 | | |
15 | | #include <assert.h> |
16 | | #include <math.h> |
17 | | #include <stdio.h> |
18 | | |
19 | | #include "config/aom_config.h" |
20 | | |
21 | | #include "av1/common/enums.h" |
22 | | #include "av1/common/blockd.h" |
23 | | #include "aom/aom_integer.h" |
24 | | #include "aom_dsp/aom_dsp_common.h" |
25 | | |
26 | | #ifdef __cplusplus |
27 | | extern "C" { |
28 | | #endif |
29 | | |
30 | | #if !defined(DO_RANGE_CHECK_CLAMP) |
31 | | #define DO_RANGE_CHECK_CLAMP 0 |
32 | | #endif |
33 | | |
34 | | extern const int32_t av1_cospi_arr_data[4][64]; |
35 | | extern const int32_t av1_sinpi_arr_data[4][5]; |
36 | | |
37 | 0 | #define MAX_TXFM_STAGE_NUM 12 |
38 | | |
39 | | static const int cos_bit_min = 10; |
40 | | |
41 | 105M | #define NewSqrt2Bits ((int32_t)12) |
42 | | // 2^12 * sqrt(2) |
43 | | static const int32_t NewSqrt2 = 5793; |
44 | | // 2^12 / sqrt(2) |
45 | | static const int32_t NewInvSqrt2 = 2896; |
46 | | |
47 | 36.8M | static inline const int32_t *cospi_arr(int n) { |
48 | 36.8M | return av1_cospi_arr_data[n - cos_bit_min]; |
49 | 36.8M | } Unexecuted instantiation: av1_dx_iface.c:cospi_arr Unexecuted instantiation: decodeframe.c:cospi_arr Unexecuted instantiation: decodemv.c:cospi_arr Unexecuted instantiation: decoder.c:cospi_arr Unexecuted instantiation: decodetxb.c:cospi_arr Unexecuted instantiation: detokenize.c:cospi_arr Unexecuted instantiation: obu.c:cospi_arr Unexecuted instantiation: av1_rtcd.c:cospi_arr Unexecuted instantiation: highbd_convolve_ssse3.c:cospi_arr Unexecuted instantiation: intrapred_sse4.c:cospi_arr Unexecuted instantiation: intrapred_avx2.c:cospi_arr Unexecuted instantiation: highbd_convolve_avx2.c:cospi_arr Unexecuted instantiation: alloccommon.c:cospi_arr Unexecuted instantiation: av1_inv_txfm2d.c:cospi_arr Unexecuted instantiation: av1_loopfilter.c:cospi_arr Unexecuted instantiation: av1_txfm.c:cospi_arr Unexecuted instantiation: blockd.c:cospi_arr Unexecuted instantiation: cdef.c:cospi_arr Unexecuted instantiation: cdef_block.c:cospi_arr Unexecuted instantiation: cfl.c:cospi_arr Unexecuted instantiation: convolve.c:cospi_arr Unexecuted instantiation: entropy.c:cospi_arr Unexecuted instantiation: entropymode.c:cospi_arr Unexecuted instantiation: entropymv.c:cospi_arr Unexecuted instantiation: idct.c:cospi_arr Unexecuted instantiation: mvref_common.c:cospi_arr Unexecuted instantiation: pred_common.c:cospi_arr Unexecuted instantiation: quant_common.c:cospi_arr Unexecuted instantiation: reconinter.c:cospi_arr Unexecuted instantiation: reconintra.c:cospi_arr Unexecuted instantiation: resize.c:cospi_arr Unexecuted instantiation: restoration.c:cospi_arr Unexecuted instantiation: scale.c:cospi_arr Unexecuted instantiation: scan.c:cospi_arr Unexecuted instantiation: thread_common.c:cospi_arr Unexecuted instantiation: tile_common.c:cospi_arr Unexecuted instantiation: txb_common.c:cospi_arr Unexecuted instantiation: warped_motion.c:cospi_arr Unexecuted instantiation: cfl_sse2.c:cospi_arr Unexecuted instantiation: convolve_2d_sse2.c:cospi_arr Unexecuted instantiation: convolve_sse2.c:cospi_arr Unexecuted instantiation: jnt_convolve_sse2.c:cospi_arr Unexecuted instantiation: resize_sse2.c:cospi_arr Unexecuted instantiation: wiener_convolve_sse2.c:cospi_arr av1_inv_txfm_ssse3.c:cospi_arr Line | Count | Source | 47 | 8.72M | static inline const int32_t *cospi_arr(int n) { | 48 | 8.72M | return av1_cospi_arr_data[n - cos_bit_min]; | 49 | 8.72M | } |
Unexecuted instantiation: cfl_ssse3.c:cospi_arr Unexecuted instantiation: jnt_convolve_ssse3.c:cospi_arr Unexecuted instantiation: resize_ssse3.c:cospi_arr Unexecuted instantiation: highbd_convolve_2d_ssse3.c:cospi_arr Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:cospi_arr Unexecuted instantiation: reconinter_ssse3.c:cospi_arr Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:cospi_arr Unexecuted instantiation: av1_convolve_scale_sse4.c:cospi_arr Unexecuted instantiation: av1_txfm_sse4.c:cospi_arr Unexecuted instantiation: cdef_block_sse4.c:cospi_arr Unexecuted instantiation: filterintra_sse4.c:cospi_arr highbd_inv_txfm_sse4.c:cospi_arr Line | Count | Source | 47 | 7.19M | static inline const int32_t *cospi_arr(int n) { | 48 | 7.19M | return av1_cospi_arr_data[n - cos_bit_min]; | 49 | 7.19M | } |
Unexecuted instantiation: intra_edge_sse4.c:cospi_arr Unexecuted instantiation: reconinter_sse4.c:cospi_arr Unexecuted instantiation: selfguided_sse4.c:cospi_arr Unexecuted instantiation: warp_plane_sse4.c:cospi_arr Unexecuted instantiation: highbd_convolve_2d_sse4.c:cospi_arr Unexecuted instantiation: highbd_jnt_convolve_sse4.c:cospi_arr Unexecuted instantiation: highbd_warp_plane_sse4.c:cospi_arr av1_inv_txfm_avx2.c:cospi_arr Line | Count | Source | 47 | 4.34M | static inline const int32_t *cospi_arr(int n) { | 48 | 4.34M | return av1_cospi_arr_data[n - cos_bit_min]; | 49 | 4.34M | } |
Unexecuted instantiation: cdef_block_avx2.c:cospi_arr Unexecuted instantiation: cfl_avx2.c:cospi_arr Unexecuted instantiation: convolve_2d_avx2.c:cospi_arr Unexecuted instantiation: convolve_avx2.c:cospi_arr highbd_inv_txfm_avx2.c:cospi_arr Line | Count | Source | 47 | 16.5M | static inline const int32_t *cospi_arr(int n) { | 48 | 16.5M | return av1_cospi_arr_data[n - cos_bit_min]; | 49 | 16.5M | } |
Unexecuted instantiation: jnt_convolve_avx2.c:cospi_arr Unexecuted instantiation: reconinter_avx2.c:cospi_arr Unexecuted instantiation: resize_avx2.c:cospi_arr Unexecuted instantiation: selfguided_avx2.c:cospi_arr Unexecuted instantiation: warp_plane_avx2.c:cospi_arr Unexecuted instantiation: wiener_convolve_avx2.c:cospi_arr Unexecuted instantiation: highbd_convolve_2d_avx2.c:cospi_arr Unexecuted instantiation: highbd_jnt_convolve_avx2.c:cospi_arr Unexecuted instantiation: highbd_wiener_convolve_avx2.c:cospi_arr Unexecuted instantiation: highbd_warp_affine_avx2.c:cospi_arr Unexecuted instantiation: av1_inv_txfm1d.c:cospi_arr |
50 | | |
51 | 4.31M | static inline const int32_t *sinpi_arr(int n) { |
52 | 4.31M | return av1_sinpi_arr_data[n - cos_bit_min]; |
53 | 4.31M | } Unexecuted instantiation: av1_dx_iface.c:sinpi_arr Unexecuted instantiation: decodeframe.c:sinpi_arr Unexecuted instantiation: decodemv.c:sinpi_arr Unexecuted instantiation: decoder.c:sinpi_arr Unexecuted instantiation: decodetxb.c:sinpi_arr Unexecuted instantiation: detokenize.c:sinpi_arr Unexecuted instantiation: obu.c:sinpi_arr Unexecuted instantiation: av1_rtcd.c:sinpi_arr Unexecuted instantiation: highbd_convolve_ssse3.c:sinpi_arr Unexecuted instantiation: intrapred_sse4.c:sinpi_arr Unexecuted instantiation: intrapred_avx2.c:sinpi_arr Unexecuted instantiation: highbd_convolve_avx2.c:sinpi_arr Unexecuted instantiation: alloccommon.c:sinpi_arr Unexecuted instantiation: av1_inv_txfm2d.c:sinpi_arr Unexecuted instantiation: av1_loopfilter.c:sinpi_arr Unexecuted instantiation: av1_txfm.c:sinpi_arr Unexecuted instantiation: blockd.c:sinpi_arr Unexecuted instantiation: cdef.c:sinpi_arr Unexecuted instantiation: cdef_block.c:sinpi_arr Unexecuted instantiation: cfl.c:sinpi_arr Unexecuted instantiation: convolve.c:sinpi_arr Unexecuted instantiation: entropy.c:sinpi_arr Unexecuted instantiation: entropymode.c:sinpi_arr Unexecuted instantiation: entropymv.c:sinpi_arr Unexecuted instantiation: idct.c:sinpi_arr Unexecuted instantiation: mvref_common.c:sinpi_arr Unexecuted instantiation: pred_common.c:sinpi_arr Unexecuted instantiation: quant_common.c:sinpi_arr Unexecuted instantiation: reconinter.c:sinpi_arr Unexecuted instantiation: reconintra.c:sinpi_arr Unexecuted instantiation: resize.c:sinpi_arr Unexecuted instantiation: restoration.c:sinpi_arr Unexecuted instantiation: scale.c:sinpi_arr Unexecuted instantiation: scan.c:sinpi_arr Unexecuted instantiation: thread_common.c:sinpi_arr Unexecuted instantiation: tile_common.c:sinpi_arr Unexecuted instantiation: txb_common.c:sinpi_arr Unexecuted instantiation: warped_motion.c:sinpi_arr Unexecuted instantiation: cfl_sse2.c:sinpi_arr Unexecuted instantiation: convolve_2d_sse2.c:sinpi_arr Unexecuted instantiation: convolve_sse2.c:sinpi_arr Unexecuted instantiation: jnt_convolve_sse2.c:sinpi_arr Unexecuted instantiation: resize_sse2.c:sinpi_arr Unexecuted instantiation: wiener_convolve_sse2.c:sinpi_arr av1_inv_txfm_ssse3.c:sinpi_arr Line | Count | Source | 51 | 1.07M | static inline const int32_t *sinpi_arr(int n) { | 52 | 1.07M | return av1_sinpi_arr_data[n - cos_bit_min]; | 53 | 1.07M | } |
Unexecuted instantiation: cfl_ssse3.c:sinpi_arr Unexecuted instantiation: jnt_convolve_ssse3.c:sinpi_arr Unexecuted instantiation: resize_ssse3.c:sinpi_arr Unexecuted instantiation: highbd_convolve_2d_ssse3.c:sinpi_arr Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:sinpi_arr Unexecuted instantiation: reconinter_ssse3.c:sinpi_arr Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:sinpi_arr Unexecuted instantiation: av1_convolve_scale_sse4.c:sinpi_arr Unexecuted instantiation: av1_txfm_sse4.c:sinpi_arr Unexecuted instantiation: cdef_block_sse4.c:sinpi_arr Unexecuted instantiation: filterintra_sse4.c:sinpi_arr highbd_inv_txfm_sse4.c:sinpi_arr Line | Count | Source | 51 | 3.23M | static inline const int32_t *sinpi_arr(int n) { | 52 | 3.23M | return av1_sinpi_arr_data[n - cos_bit_min]; | 53 | 3.23M | } |
Unexecuted instantiation: intra_edge_sse4.c:sinpi_arr Unexecuted instantiation: reconinter_sse4.c:sinpi_arr Unexecuted instantiation: selfguided_sse4.c:sinpi_arr Unexecuted instantiation: warp_plane_sse4.c:sinpi_arr Unexecuted instantiation: highbd_convolve_2d_sse4.c:sinpi_arr Unexecuted instantiation: highbd_jnt_convolve_sse4.c:sinpi_arr Unexecuted instantiation: highbd_warp_plane_sse4.c:sinpi_arr Unexecuted instantiation: av1_inv_txfm_avx2.c:sinpi_arr Unexecuted instantiation: cdef_block_avx2.c:sinpi_arr Unexecuted instantiation: cfl_avx2.c:sinpi_arr Unexecuted instantiation: convolve_2d_avx2.c:sinpi_arr Unexecuted instantiation: convolve_avx2.c:sinpi_arr Unexecuted instantiation: highbd_inv_txfm_avx2.c:sinpi_arr Unexecuted instantiation: jnt_convolve_avx2.c:sinpi_arr Unexecuted instantiation: reconinter_avx2.c:sinpi_arr Unexecuted instantiation: resize_avx2.c:sinpi_arr Unexecuted instantiation: selfguided_avx2.c:sinpi_arr Unexecuted instantiation: warp_plane_avx2.c:sinpi_arr Unexecuted instantiation: wiener_convolve_avx2.c:sinpi_arr Unexecuted instantiation: highbd_convolve_2d_avx2.c:sinpi_arr Unexecuted instantiation: highbd_jnt_convolve_avx2.c:sinpi_arr Unexecuted instantiation: highbd_wiener_convolve_avx2.c:sinpi_arr Unexecuted instantiation: highbd_warp_affine_avx2.c:sinpi_arr Unexecuted instantiation: av1_inv_txfm1d.c:sinpi_arr |
54 | | |
55 | | // The reduced bit-width and permuted arrays are only used in the Arm Neon |
56 | | // implementations in av1_fwd_txfm2d_neon.c and highbd_fwd_txfm_neon.c for now. |
57 | | #if HAVE_NEON |
58 | | // Store cospi/sinpi costants in Q2.13 format. |
59 | | // See: https://en.wikipedia.org/wiki/Q_(number_format) |
60 | | extern const int16_t av1_cospi_arr_q13_data[4][128]; |
61 | | extern const int16_t av1_sinpi_arr_q13_data[4][4]; |
62 | | |
63 | | extern const int32_t av1_cospi_arr_s32_data[4][66]; |
64 | | |
65 | | static inline const int16_t *cospi_arr_q13(int n) { |
66 | | return av1_cospi_arr_q13_data[n - cos_bit_min]; |
67 | | } |
68 | | |
69 | | static inline const int16_t *sinpi_arr_q13(int n) { |
70 | | return av1_sinpi_arr_q13_data[n - cos_bit_min]; |
71 | | } |
72 | | |
73 | | static inline const int32_t *cospi_arr_s32(int n) { |
74 | | return av1_cospi_arr_s32_data[n - cos_bit_min]; |
75 | | } |
76 | | #endif // HAVE_NEON |
77 | | |
78 | 0 | static inline int32_t range_check_value(int32_t value, int8_t bit) { |
79 | | #if CONFIG_COEFFICIENT_RANGE_CHECKING |
80 | | const int64_t max_value = (1LL << (bit - 1)) - 1; |
81 | | const int64_t min_value = -(1LL << (bit - 1)); |
82 | | if (value < min_value || value > max_value) { |
83 | | fprintf(stderr, "coeff out of bit range, value: %d bit %d\n", value, bit); |
84 | | #if !CONFIG_AV1_ENCODER |
85 | | assert(0); |
86 | | #endif |
87 | | } |
88 | | #endif // CONFIG_COEFFICIENT_RANGE_CHECKING |
89 | 0 | #if DO_RANGE_CHECK_CLAMP |
90 | 0 | bit = AOMMIN(bit, 31); |
91 | 0 | return clamp(value, -(1 << (bit - 1)), (1 << (bit - 1)) - 1); |
92 | 0 | #endif // DO_RANGE_CHECK_CLAMP |
93 | 0 | (void)bit; |
94 | 0 | return value; |
95 | 0 | } Unexecuted instantiation: av1_dx_iface.c:range_check_value Unexecuted instantiation: decodeframe.c:range_check_value Unexecuted instantiation: decodemv.c:range_check_value Unexecuted instantiation: decoder.c:range_check_value Unexecuted instantiation: decodetxb.c:range_check_value Unexecuted instantiation: detokenize.c:range_check_value Unexecuted instantiation: obu.c:range_check_value Unexecuted instantiation: av1_rtcd.c:range_check_value Unexecuted instantiation: highbd_convolve_ssse3.c:range_check_value Unexecuted instantiation: intrapred_sse4.c:range_check_value Unexecuted instantiation: intrapred_avx2.c:range_check_value Unexecuted instantiation: highbd_convolve_avx2.c:range_check_value Unexecuted instantiation: alloccommon.c:range_check_value Unexecuted instantiation: av1_inv_txfm2d.c:range_check_value Unexecuted instantiation: av1_loopfilter.c:range_check_value Unexecuted instantiation: av1_txfm.c:range_check_value Unexecuted instantiation: blockd.c:range_check_value Unexecuted instantiation: cdef.c:range_check_value Unexecuted instantiation: cdef_block.c:range_check_value Unexecuted instantiation: cfl.c:range_check_value Unexecuted instantiation: convolve.c:range_check_value Unexecuted instantiation: entropy.c:range_check_value Unexecuted instantiation: entropymode.c:range_check_value Unexecuted instantiation: entropymv.c:range_check_value Unexecuted instantiation: idct.c:range_check_value Unexecuted instantiation: mvref_common.c:range_check_value Unexecuted instantiation: pred_common.c:range_check_value Unexecuted instantiation: quant_common.c:range_check_value Unexecuted instantiation: reconinter.c:range_check_value Unexecuted instantiation: reconintra.c:range_check_value Unexecuted instantiation: resize.c:range_check_value Unexecuted instantiation: restoration.c:range_check_value Unexecuted instantiation: scale.c:range_check_value Unexecuted instantiation: scan.c:range_check_value Unexecuted instantiation: thread_common.c:range_check_value Unexecuted instantiation: tile_common.c:range_check_value Unexecuted instantiation: txb_common.c:range_check_value Unexecuted instantiation: warped_motion.c:range_check_value Unexecuted instantiation: cfl_sse2.c:range_check_value Unexecuted instantiation: convolve_2d_sse2.c:range_check_value Unexecuted instantiation: convolve_sse2.c:range_check_value Unexecuted instantiation: jnt_convolve_sse2.c:range_check_value Unexecuted instantiation: resize_sse2.c:range_check_value Unexecuted instantiation: wiener_convolve_sse2.c:range_check_value Unexecuted instantiation: av1_inv_txfm_ssse3.c:range_check_value Unexecuted instantiation: cfl_ssse3.c:range_check_value Unexecuted instantiation: jnt_convolve_ssse3.c:range_check_value Unexecuted instantiation: resize_ssse3.c:range_check_value Unexecuted instantiation: highbd_convolve_2d_ssse3.c:range_check_value Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:range_check_value Unexecuted instantiation: reconinter_ssse3.c:range_check_value Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:range_check_value Unexecuted instantiation: av1_convolve_scale_sse4.c:range_check_value Unexecuted instantiation: av1_txfm_sse4.c:range_check_value Unexecuted instantiation: cdef_block_sse4.c:range_check_value Unexecuted instantiation: filterintra_sse4.c:range_check_value Unexecuted instantiation: highbd_inv_txfm_sse4.c:range_check_value Unexecuted instantiation: intra_edge_sse4.c:range_check_value Unexecuted instantiation: reconinter_sse4.c:range_check_value Unexecuted instantiation: selfguided_sse4.c:range_check_value Unexecuted instantiation: warp_plane_sse4.c:range_check_value Unexecuted instantiation: highbd_convolve_2d_sse4.c:range_check_value Unexecuted instantiation: highbd_jnt_convolve_sse4.c:range_check_value Unexecuted instantiation: highbd_warp_plane_sse4.c:range_check_value Unexecuted instantiation: av1_inv_txfm_avx2.c:range_check_value Unexecuted instantiation: cdef_block_avx2.c:range_check_value Unexecuted instantiation: cfl_avx2.c:range_check_value Unexecuted instantiation: convolve_2d_avx2.c:range_check_value Unexecuted instantiation: convolve_avx2.c:range_check_value Unexecuted instantiation: highbd_inv_txfm_avx2.c:range_check_value Unexecuted instantiation: jnt_convolve_avx2.c:range_check_value Unexecuted instantiation: reconinter_avx2.c:range_check_value Unexecuted instantiation: resize_avx2.c:range_check_value Unexecuted instantiation: selfguided_avx2.c:range_check_value Unexecuted instantiation: warp_plane_avx2.c:range_check_value Unexecuted instantiation: wiener_convolve_avx2.c:range_check_value Unexecuted instantiation: highbd_convolve_2d_avx2.c:range_check_value Unexecuted instantiation: highbd_jnt_convolve_avx2.c:range_check_value Unexecuted instantiation: highbd_wiener_convolve_avx2.c:range_check_value Unexecuted instantiation: highbd_warp_affine_avx2.c:range_check_value Unexecuted instantiation: av1_inv_txfm1d.c:range_check_value |
96 | | |
97 | 0 | static inline int32_t round_shift(int64_t value, int bit) { |
98 | 0 | assert(bit >= 1); |
99 | 0 | return (int32_t)((value + (1ll << (bit - 1))) >> bit); |
100 | 0 | } Unexecuted instantiation: av1_dx_iface.c:round_shift Unexecuted instantiation: decodeframe.c:round_shift Unexecuted instantiation: decodemv.c:round_shift Unexecuted instantiation: decoder.c:round_shift Unexecuted instantiation: decodetxb.c:round_shift Unexecuted instantiation: detokenize.c:round_shift Unexecuted instantiation: obu.c:round_shift Unexecuted instantiation: av1_rtcd.c:round_shift Unexecuted instantiation: highbd_convolve_ssse3.c:round_shift Unexecuted instantiation: intrapred_sse4.c:round_shift Unexecuted instantiation: intrapred_avx2.c:round_shift Unexecuted instantiation: highbd_convolve_avx2.c:round_shift Unexecuted instantiation: alloccommon.c:round_shift Unexecuted instantiation: av1_inv_txfm2d.c:round_shift Unexecuted instantiation: av1_loopfilter.c:round_shift Unexecuted instantiation: av1_txfm.c:round_shift Unexecuted instantiation: blockd.c:round_shift Unexecuted instantiation: cdef.c:round_shift Unexecuted instantiation: cdef_block.c:round_shift Unexecuted instantiation: cfl.c:round_shift Unexecuted instantiation: convolve.c:round_shift Unexecuted instantiation: entropy.c:round_shift Unexecuted instantiation: entropymode.c:round_shift Unexecuted instantiation: entropymv.c:round_shift Unexecuted instantiation: idct.c:round_shift Unexecuted instantiation: mvref_common.c:round_shift Unexecuted instantiation: pred_common.c:round_shift Unexecuted instantiation: quant_common.c:round_shift Unexecuted instantiation: reconinter.c:round_shift Unexecuted instantiation: reconintra.c:round_shift Unexecuted instantiation: resize.c:round_shift Unexecuted instantiation: restoration.c:round_shift Unexecuted instantiation: scale.c:round_shift Unexecuted instantiation: scan.c:round_shift Unexecuted instantiation: thread_common.c:round_shift Unexecuted instantiation: tile_common.c:round_shift Unexecuted instantiation: txb_common.c:round_shift Unexecuted instantiation: warped_motion.c:round_shift Unexecuted instantiation: cfl_sse2.c:round_shift Unexecuted instantiation: convolve_2d_sse2.c:round_shift Unexecuted instantiation: convolve_sse2.c:round_shift Unexecuted instantiation: jnt_convolve_sse2.c:round_shift Unexecuted instantiation: resize_sse2.c:round_shift Unexecuted instantiation: wiener_convolve_sse2.c:round_shift Unexecuted instantiation: av1_inv_txfm_ssse3.c:round_shift Unexecuted instantiation: cfl_ssse3.c:round_shift Unexecuted instantiation: jnt_convolve_ssse3.c:round_shift Unexecuted instantiation: resize_ssse3.c:round_shift Unexecuted instantiation: highbd_convolve_2d_ssse3.c:round_shift Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:round_shift Unexecuted instantiation: reconinter_ssse3.c:round_shift Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:round_shift Unexecuted instantiation: av1_convolve_scale_sse4.c:round_shift Unexecuted instantiation: av1_txfm_sse4.c:round_shift Unexecuted instantiation: cdef_block_sse4.c:round_shift Unexecuted instantiation: filterintra_sse4.c:round_shift Unexecuted instantiation: highbd_inv_txfm_sse4.c:round_shift Unexecuted instantiation: intra_edge_sse4.c:round_shift Unexecuted instantiation: reconinter_sse4.c:round_shift Unexecuted instantiation: selfguided_sse4.c:round_shift Unexecuted instantiation: warp_plane_sse4.c:round_shift Unexecuted instantiation: highbd_convolve_2d_sse4.c:round_shift Unexecuted instantiation: highbd_jnt_convolve_sse4.c:round_shift Unexecuted instantiation: highbd_warp_plane_sse4.c:round_shift Unexecuted instantiation: av1_inv_txfm_avx2.c:round_shift Unexecuted instantiation: cdef_block_avx2.c:round_shift Unexecuted instantiation: cfl_avx2.c:round_shift Unexecuted instantiation: convolve_2d_avx2.c:round_shift Unexecuted instantiation: convolve_avx2.c:round_shift Unexecuted instantiation: highbd_inv_txfm_avx2.c:round_shift Unexecuted instantiation: jnt_convolve_avx2.c:round_shift Unexecuted instantiation: reconinter_avx2.c:round_shift Unexecuted instantiation: resize_avx2.c:round_shift Unexecuted instantiation: selfguided_avx2.c:round_shift Unexecuted instantiation: warp_plane_avx2.c:round_shift Unexecuted instantiation: wiener_convolve_avx2.c:round_shift Unexecuted instantiation: highbd_convolve_2d_avx2.c:round_shift Unexecuted instantiation: highbd_jnt_convolve_avx2.c:round_shift Unexecuted instantiation: highbd_wiener_convolve_avx2.c:round_shift Unexecuted instantiation: highbd_warp_affine_avx2.c:round_shift Unexecuted instantiation: av1_inv_txfm1d.c:round_shift |
101 | | |
102 | | static inline int32_t half_btf(int32_t w0, int32_t in0, int32_t w1, int32_t in1, |
103 | 0 | int bit) { |
104 | 0 | int64_t result_64 = (int64_t)(w0 * in0) + (int64_t)(w1 * in1); |
105 | 0 | int64_t intermediate = result_64 + (1LL << (bit - 1)); |
106 | | // NOTE(rachelbarker): The value 'result_64' may not necessarily fit |
107 | | // into 32 bits. However, the result of this function is nominally |
108 | | // ROUND_POWER_OF_TWO_64(result_64, bit) |
109 | | // and that is required to fit into stage_range[stage] many bits |
110 | | // (checked by range_check_buf()). |
111 | | // |
112 | | // Here we've unpacked that rounding operation, and it can be shown |
113 | | // that the value of 'intermediate' here *does* fit into 32 bits |
114 | | // for any conformant bitstream. |
115 | | // The upshot is that, if you do all this calculation using |
116 | | // wrapping 32-bit arithmetic instead of (non-wrapping) 64-bit arithmetic, |
117 | | // then you'll still get the correct result. |
118 | | // To provide a check on this logic, we assert that 'intermediate' |
119 | | // would fit into an int32 if range checking is enabled. |
120 | | #if CONFIG_COEFFICIENT_RANGE_CHECKING |
121 | | assert(intermediate >= INT32_MIN && intermediate <= INT32_MAX); |
122 | | #endif |
123 | 0 | return (int32_t)(intermediate >> bit); |
124 | 0 | } Unexecuted instantiation: av1_dx_iface.c:half_btf Unexecuted instantiation: decodeframe.c:half_btf Unexecuted instantiation: decodemv.c:half_btf Unexecuted instantiation: decoder.c:half_btf Unexecuted instantiation: decodetxb.c:half_btf Unexecuted instantiation: detokenize.c:half_btf Unexecuted instantiation: obu.c:half_btf Unexecuted instantiation: av1_rtcd.c:half_btf Unexecuted instantiation: highbd_convolve_ssse3.c:half_btf Unexecuted instantiation: intrapred_sse4.c:half_btf Unexecuted instantiation: intrapred_avx2.c:half_btf Unexecuted instantiation: highbd_convolve_avx2.c:half_btf Unexecuted instantiation: alloccommon.c:half_btf Unexecuted instantiation: av1_inv_txfm2d.c:half_btf Unexecuted instantiation: av1_loopfilter.c:half_btf Unexecuted instantiation: av1_txfm.c:half_btf Unexecuted instantiation: blockd.c:half_btf Unexecuted instantiation: cdef.c:half_btf Unexecuted instantiation: cdef_block.c:half_btf Unexecuted instantiation: cfl.c:half_btf Unexecuted instantiation: convolve.c:half_btf Unexecuted instantiation: entropy.c:half_btf Unexecuted instantiation: entropymode.c:half_btf Unexecuted instantiation: entropymv.c:half_btf Unexecuted instantiation: idct.c:half_btf Unexecuted instantiation: mvref_common.c:half_btf Unexecuted instantiation: pred_common.c:half_btf Unexecuted instantiation: quant_common.c:half_btf Unexecuted instantiation: reconinter.c:half_btf Unexecuted instantiation: reconintra.c:half_btf Unexecuted instantiation: resize.c:half_btf Unexecuted instantiation: restoration.c:half_btf Unexecuted instantiation: scale.c:half_btf Unexecuted instantiation: scan.c:half_btf Unexecuted instantiation: thread_common.c:half_btf Unexecuted instantiation: tile_common.c:half_btf Unexecuted instantiation: txb_common.c:half_btf Unexecuted instantiation: warped_motion.c:half_btf Unexecuted instantiation: cfl_sse2.c:half_btf Unexecuted instantiation: convolve_2d_sse2.c:half_btf Unexecuted instantiation: convolve_sse2.c:half_btf Unexecuted instantiation: jnt_convolve_sse2.c:half_btf Unexecuted instantiation: resize_sse2.c:half_btf Unexecuted instantiation: wiener_convolve_sse2.c:half_btf Unexecuted instantiation: av1_inv_txfm_ssse3.c:half_btf Unexecuted instantiation: cfl_ssse3.c:half_btf Unexecuted instantiation: jnt_convolve_ssse3.c:half_btf Unexecuted instantiation: resize_ssse3.c:half_btf Unexecuted instantiation: highbd_convolve_2d_ssse3.c:half_btf Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:half_btf Unexecuted instantiation: reconinter_ssse3.c:half_btf Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:half_btf Unexecuted instantiation: av1_convolve_scale_sse4.c:half_btf Unexecuted instantiation: av1_txfm_sse4.c:half_btf Unexecuted instantiation: cdef_block_sse4.c:half_btf Unexecuted instantiation: filterintra_sse4.c:half_btf Unexecuted instantiation: highbd_inv_txfm_sse4.c:half_btf Unexecuted instantiation: intra_edge_sse4.c:half_btf Unexecuted instantiation: reconinter_sse4.c:half_btf Unexecuted instantiation: selfguided_sse4.c:half_btf Unexecuted instantiation: warp_plane_sse4.c:half_btf Unexecuted instantiation: highbd_convolve_2d_sse4.c:half_btf Unexecuted instantiation: highbd_jnt_convolve_sse4.c:half_btf Unexecuted instantiation: highbd_warp_plane_sse4.c:half_btf Unexecuted instantiation: av1_inv_txfm_avx2.c:half_btf Unexecuted instantiation: cdef_block_avx2.c:half_btf Unexecuted instantiation: cfl_avx2.c:half_btf Unexecuted instantiation: convolve_2d_avx2.c:half_btf Unexecuted instantiation: convolve_avx2.c:half_btf Unexecuted instantiation: highbd_inv_txfm_avx2.c:half_btf Unexecuted instantiation: jnt_convolve_avx2.c:half_btf Unexecuted instantiation: reconinter_avx2.c:half_btf Unexecuted instantiation: resize_avx2.c:half_btf Unexecuted instantiation: selfguided_avx2.c:half_btf Unexecuted instantiation: warp_plane_avx2.c:half_btf Unexecuted instantiation: wiener_convolve_avx2.c:half_btf Unexecuted instantiation: highbd_convolve_2d_avx2.c:half_btf Unexecuted instantiation: highbd_jnt_convolve_avx2.c:half_btf Unexecuted instantiation: highbd_wiener_convolve_avx2.c:half_btf Unexecuted instantiation: highbd_warp_affine_avx2.c:half_btf Unexecuted instantiation: av1_inv_txfm1d.c:half_btf |
125 | | |
126 | | static inline uint16_t highbd_clip_pixel_add(uint16_t dest, tran_high_t trans, |
127 | 10.0M | int bd) { |
128 | 10.0M | return clip_pixel_highbd(dest + (int)trans, bd); |
129 | 10.0M | } Unexecuted instantiation: av1_dx_iface.c:highbd_clip_pixel_add Unexecuted instantiation: decodeframe.c:highbd_clip_pixel_add Unexecuted instantiation: decodemv.c:highbd_clip_pixel_add Unexecuted instantiation: decoder.c:highbd_clip_pixel_add Unexecuted instantiation: decodetxb.c:highbd_clip_pixel_add Unexecuted instantiation: detokenize.c:highbd_clip_pixel_add Unexecuted instantiation: obu.c:highbd_clip_pixel_add Unexecuted instantiation: av1_rtcd.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_convolve_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: intrapred_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: intrapred_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_convolve_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: alloccommon.c:highbd_clip_pixel_add av1_inv_txfm2d.c:highbd_clip_pixel_add Line | Count | Source | 127 | 10.0M | int bd) { | 128 | 10.0M | return clip_pixel_highbd(dest + (int)trans, bd); | 129 | 10.0M | } |
Unexecuted instantiation: av1_loopfilter.c:highbd_clip_pixel_add Unexecuted instantiation: av1_txfm.c:highbd_clip_pixel_add Unexecuted instantiation: blockd.c:highbd_clip_pixel_add Unexecuted instantiation: cdef.c:highbd_clip_pixel_add Unexecuted instantiation: cdef_block.c:highbd_clip_pixel_add Unexecuted instantiation: cfl.c:highbd_clip_pixel_add Unexecuted instantiation: convolve.c:highbd_clip_pixel_add Unexecuted instantiation: entropy.c:highbd_clip_pixel_add Unexecuted instantiation: entropymode.c:highbd_clip_pixel_add Unexecuted instantiation: entropymv.c:highbd_clip_pixel_add Unexecuted instantiation: idct.c:highbd_clip_pixel_add Unexecuted instantiation: mvref_common.c:highbd_clip_pixel_add Unexecuted instantiation: pred_common.c:highbd_clip_pixel_add Unexecuted instantiation: quant_common.c:highbd_clip_pixel_add Unexecuted instantiation: reconinter.c:highbd_clip_pixel_add Unexecuted instantiation: reconintra.c:highbd_clip_pixel_add Unexecuted instantiation: resize.c:highbd_clip_pixel_add Unexecuted instantiation: restoration.c:highbd_clip_pixel_add Unexecuted instantiation: scale.c:highbd_clip_pixel_add Unexecuted instantiation: scan.c:highbd_clip_pixel_add Unexecuted instantiation: thread_common.c:highbd_clip_pixel_add Unexecuted instantiation: tile_common.c:highbd_clip_pixel_add Unexecuted instantiation: txb_common.c:highbd_clip_pixel_add Unexecuted instantiation: warped_motion.c:highbd_clip_pixel_add Unexecuted instantiation: cfl_sse2.c:highbd_clip_pixel_add Unexecuted instantiation: convolve_2d_sse2.c:highbd_clip_pixel_add Unexecuted instantiation: convolve_sse2.c:highbd_clip_pixel_add Unexecuted instantiation: jnt_convolve_sse2.c:highbd_clip_pixel_add Unexecuted instantiation: resize_sse2.c:highbd_clip_pixel_add Unexecuted instantiation: wiener_convolve_sse2.c:highbd_clip_pixel_add Unexecuted instantiation: av1_inv_txfm_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: cfl_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: jnt_convolve_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: resize_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_convolve_2d_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: reconinter_ssse3.c:highbd_clip_pixel_add Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: av1_convolve_scale_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: av1_txfm_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: cdef_block_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: filterintra_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_inv_txfm_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: intra_edge_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: reconinter_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: selfguided_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: warp_plane_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_convolve_2d_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_jnt_convolve_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_warp_plane_sse4.c:highbd_clip_pixel_add Unexecuted instantiation: av1_inv_txfm_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: cdef_block_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: cfl_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: convolve_2d_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: convolve_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_inv_txfm_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: jnt_convolve_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: reconinter_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: resize_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: selfguided_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: warp_plane_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: wiener_convolve_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_convolve_2d_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_jnt_convolve_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_wiener_convolve_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: highbd_warp_affine_avx2.c:highbd_clip_pixel_add Unexecuted instantiation: av1_inv_txfm1d.c:highbd_clip_pixel_add |
130 | | |
131 | | typedef void (*TxfmFunc)(const int32_t *input, int32_t *output, int8_t cos_bit, |
132 | | const int8_t *stage_range); |
133 | | |
134 | | typedef void (*FwdTxfm2dFunc)(const int16_t *input, int32_t *output, int stride, |
135 | | TX_TYPE tx_type, int bd); |
136 | | |
137 | | enum { |
138 | | TXFM_TYPE_DCT4, |
139 | | TXFM_TYPE_DCT8, |
140 | | TXFM_TYPE_DCT16, |
141 | | TXFM_TYPE_DCT32, |
142 | | TXFM_TYPE_DCT64, |
143 | | TXFM_TYPE_ADST4, |
144 | | TXFM_TYPE_ADST8, |
145 | | TXFM_TYPE_ADST16, |
146 | | TXFM_TYPE_IDENTITY4, |
147 | | TXFM_TYPE_IDENTITY8, |
148 | | TXFM_TYPE_IDENTITY16, |
149 | | TXFM_TYPE_IDENTITY32, |
150 | | TXFM_TYPES, |
151 | | TXFM_TYPE_INVALID, |
152 | | } UENUM1BYTE(TXFM_TYPE); |
153 | | |
154 | | typedef struct TXFM_2D_FLIP_CFG { |
155 | | TX_SIZE tx_size; |
156 | | int ud_flip; // flip upside down |
157 | | int lr_flip; // flip left to right |
158 | | const int8_t *shift; |
159 | | int8_t cos_bit_col; |
160 | | int8_t cos_bit_row; |
161 | | int8_t stage_range_col[MAX_TXFM_STAGE_NUM]; |
162 | | int8_t stage_range_row[MAX_TXFM_STAGE_NUM]; |
163 | | TXFM_TYPE txfm_type_col; |
164 | | TXFM_TYPE txfm_type_row; |
165 | | int stage_num_col; |
166 | | int stage_num_row; |
167 | | } TXFM_2D_FLIP_CFG; |
168 | | |
169 | 13.1M | static inline void get_flip_cfg(TX_TYPE tx_type, int *ud_flip, int *lr_flip) { |
170 | 13.1M | switch (tx_type) { |
171 | 6.64M | case DCT_DCT: |
172 | 7.68M | case ADST_DCT: |
173 | 9.29M | case DCT_ADST: |
174 | 10.6M | case ADST_ADST: |
175 | 10.6M | *ud_flip = 0; |
176 | 10.6M | *lr_flip = 0; |
177 | 10.6M | break; |
178 | 643k | case IDTX: |
179 | 791k | case V_DCT: |
180 | 1.27M | case H_DCT: |
181 | 1.37M | case V_ADST: |
182 | 1.47M | case H_ADST: |
183 | 1.47M | *ud_flip = 0; |
184 | 1.47M | *lr_flip = 0; |
185 | 1.47M | break; |
186 | 109k | case FLIPADST_DCT: |
187 | 335k | case FLIPADST_ADST: |
188 | 395k | case V_FLIPADST: |
189 | 395k | *ud_flip = 1; |
190 | 395k | *lr_flip = 0; |
191 | 395k | break; |
192 | 267k | case DCT_FLIPADST: |
193 | 412k | case ADST_FLIPADST: |
194 | 524k | case H_FLIPADST: |
195 | 524k | *ud_flip = 0; |
196 | 524k | *lr_flip = 1; |
197 | 524k | break; |
198 | 132k | case FLIPADST_FLIPADST: |
199 | 132k | *ud_flip = 1; |
200 | 132k | *lr_flip = 1; |
201 | 132k | break; |
202 | 0 | default: |
203 | 0 | *ud_flip = 0; |
204 | 0 | *lr_flip = 0; |
205 | 0 | assert(0); |
206 | 13.1M | } |
207 | 13.1M | } Unexecuted instantiation: av1_dx_iface.c:get_flip_cfg Unexecuted instantiation: decodeframe.c:get_flip_cfg Unexecuted instantiation: decodemv.c:get_flip_cfg Unexecuted instantiation: decoder.c:get_flip_cfg Unexecuted instantiation: decodetxb.c:get_flip_cfg Unexecuted instantiation: detokenize.c:get_flip_cfg Unexecuted instantiation: obu.c:get_flip_cfg Unexecuted instantiation: av1_rtcd.c:get_flip_cfg Unexecuted instantiation: highbd_convolve_ssse3.c:get_flip_cfg Unexecuted instantiation: intrapred_sse4.c:get_flip_cfg Unexecuted instantiation: intrapred_avx2.c:get_flip_cfg Unexecuted instantiation: highbd_convolve_avx2.c:get_flip_cfg Unexecuted instantiation: alloccommon.c:get_flip_cfg Unexecuted instantiation: av1_inv_txfm2d.c:get_flip_cfg Unexecuted instantiation: av1_loopfilter.c:get_flip_cfg Unexecuted instantiation: av1_txfm.c:get_flip_cfg Unexecuted instantiation: blockd.c:get_flip_cfg Unexecuted instantiation: cdef.c:get_flip_cfg Unexecuted instantiation: cdef_block.c:get_flip_cfg Unexecuted instantiation: cfl.c:get_flip_cfg Unexecuted instantiation: convolve.c:get_flip_cfg Unexecuted instantiation: entropy.c:get_flip_cfg Unexecuted instantiation: entropymode.c:get_flip_cfg Unexecuted instantiation: entropymv.c:get_flip_cfg Unexecuted instantiation: idct.c:get_flip_cfg Unexecuted instantiation: mvref_common.c:get_flip_cfg Unexecuted instantiation: pred_common.c:get_flip_cfg Unexecuted instantiation: quant_common.c:get_flip_cfg Unexecuted instantiation: reconinter.c:get_flip_cfg Unexecuted instantiation: reconintra.c:get_flip_cfg Unexecuted instantiation: resize.c:get_flip_cfg Unexecuted instantiation: restoration.c:get_flip_cfg Unexecuted instantiation: scale.c:get_flip_cfg Unexecuted instantiation: scan.c:get_flip_cfg Unexecuted instantiation: thread_common.c:get_flip_cfg Unexecuted instantiation: tile_common.c:get_flip_cfg Unexecuted instantiation: txb_common.c:get_flip_cfg Unexecuted instantiation: warped_motion.c:get_flip_cfg Unexecuted instantiation: cfl_sse2.c:get_flip_cfg Unexecuted instantiation: convolve_2d_sse2.c:get_flip_cfg Unexecuted instantiation: convolve_sse2.c:get_flip_cfg Unexecuted instantiation: jnt_convolve_sse2.c:get_flip_cfg Unexecuted instantiation: resize_sse2.c:get_flip_cfg Unexecuted instantiation: wiener_convolve_sse2.c:get_flip_cfg av1_inv_txfm_ssse3.c:get_flip_cfg Line | Count | Source | 169 | 3.50M | static inline void get_flip_cfg(TX_TYPE tx_type, int *ud_flip, int *lr_flip) { | 170 | 3.50M | switch (tx_type) { | 171 | 1.54M | case DCT_DCT: | 172 | 1.77M | case ADST_DCT: | 173 | 2.16M | case DCT_ADST: | 174 | 2.51M | case ADST_ADST: | 175 | 2.51M | *ud_flip = 0; | 176 | 2.51M | *lr_flip = 0; | 177 | 2.51M | break; | 178 | 279k | case IDTX: | 179 | 362k | case V_DCT: | 180 | 585k | case H_DCT: | 181 | 619k | case V_ADST: | 182 | 681k | case H_ADST: | 183 | 681k | *ud_flip = 0; | 184 | 681k | *lr_flip = 0; | 185 | 681k | break; | 186 | 31.1k | case FLIPADST_DCT: | 187 | 91.2k | case FLIPADST_ADST: | 188 | 117k | case V_FLIPADST: | 189 | 117k | *ud_flip = 1; | 190 | 117k | *lr_flip = 0; | 191 | 117k | break; | 192 | 59.9k | case DCT_FLIPADST: | 193 | 128k | case ADST_FLIPADST: | 194 | 164k | case H_FLIPADST: | 195 | 164k | *ud_flip = 0; | 196 | 164k | *lr_flip = 1; | 197 | 164k | break; | 198 | 17.7k | case FLIPADST_FLIPADST: | 199 | 17.7k | *ud_flip = 1; | 200 | 17.7k | *lr_flip = 1; | 201 | 17.7k | break; | 202 | 0 | default: | 203 | 0 | *ud_flip = 0; | 204 | 0 | *lr_flip = 0; | 205 | 0 | assert(0); | 206 | 3.50M | } | 207 | 3.50M | } |
Unexecuted instantiation: cfl_ssse3.c:get_flip_cfg Unexecuted instantiation: jnt_convolve_ssse3.c:get_flip_cfg Unexecuted instantiation: resize_ssse3.c:get_flip_cfg Unexecuted instantiation: highbd_convolve_2d_ssse3.c:get_flip_cfg Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:get_flip_cfg Unexecuted instantiation: reconinter_ssse3.c:get_flip_cfg Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:get_flip_cfg Unexecuted instantiation: av1_convolve_scale_sse4.c:get_flip_cfg Unexecuted instantiation: av1_txfm_sse4.c:get_flip_cfg Unexecuted instantiation: cdef_block_sse4.c:get_flip_cfg Unexecuted instantiation: filterintra_sse4.c:get_flip_cfg highbd_inv_txfm_sse4.c:get_flip_cfg Line | Count | Source | 169 | 2.77M | static inline void get_flip_cfg(TX_TYPE tx_type, int *ud_flip, int *lr_flip) { | 170 | 2.77M | switch (tx_type) { | 171 | 744k | case DCT_DCT: | 172 | 986k | case ADST_DCT: | 173 | 1.28M | case DCT_ADST: | 174 | 1.62M | case ADST_ADST: | 175 | 1.62M | *ud_flip = 0; | 176 | 1.62M | *lr_flip = 0; | 177 | 1.62M | break; | 178 | 363k | case IDTX: | 179 | 423k | case V_DCT: | 180 | 664k | case H_DCT: | 181 | 734k | case V_ADST: | 182 | 773k | case H_ADST: | 183 | 773k | *ud_flip = 0; | 184 | 773k | *lr_flip = 0; | 185 | 773k | break; | 186 | 14.2k | case FLIPADST_DCT: | 187 | 82.1k | case FLIPADST_ADST: | 188 | 115k | case V_FLIPADST: | 189 | 115k | *ud_flip = 1; | 190 | 115k | *lr_flip = 0; | 191 | 115k | break; | 192 | 96.7k | case DCT_FLIPADST: | 193 | 113k | case ADST_FLIPADST: | 194 | 190k | case H_FLIPADST: | 195 | 190k | *ud_flip = 0; | 196 | 190k | *lr_flip = 1; | 197 | 190k | break; | 198 | 68.4k | case FLIPADST_FLIPADST: | 199 | 68.4k | *ud_flip = 1; | 200 | 68.4k | *lr_flip = 1; | 201 | 68.4k | break; | 202 | 0 | default: | 203 | 0 | *ud_flip = 0; | 204 | 0 | *lr_flip = 0; | 205 | 0 | assert(0); | 206 | 2.77M | } | 207 | 2.77M | } |
Unexecuted instantiation: intra_edge_sse4.c:get_flip_cfg Unexecuted instantiation: reconinter_sse4.c:get_flip_cfg Unexecuted instantiation: selfguided_sse4.c:get_flip_cfg Unexecuted instantiation: warp_plane_sse4.c:get_flip_cfg Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_flip_cfg Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_flip_cfg Unexecuted instantiation: highbd_warp_plane_sse4.c:get_flip_cfg av1_inv_txfm_avx2.c:get_flip_cfg Line | Count | Source | 169 | 2.32M | static inline void get_flip_cfg(TX_TYPE tx_type, int *ud_flip, int *lr_flip) { | 170 | 2.32M | switch (tx_type) { | 171 | 1.47M | case DCT_DCT: | 172 | 1.65M | case ADST_DCT: | 173 | 1.96M | case DCT_ADST: | 174 | 2.17M | case ADST_ADST: | 175 | 2.17M | *ud_flip = 0; | 176 | 2.17M | *lr_flip = 0; | 177 | 2.17M | break; | 178 | 0 | case IDTX: | 179 | 5.30k | case V_DCT: | 180 | 23.6k | case H_DCT: | 181 | 23.6k | case V_ADST: | 182 | 23.6k | case H_ADST: | 183 | 23.6k | *ud_flip = 0; | 184 | 23.6k | *lr_flip = 0; | 185 | 23.6k | break; | 186 | 28.6k | case FLIPADST_DCT: | 187 | 59.6k | case FLIPADST_ADST: | 188 | 59.6k | case V_FLIPADST: | 189 | 59.6k | *ud_flip = 1; | 190 | 59.6k | *lr_flip = 0; | 191 | 59.6k | break; | 192 | 23.3k | case DCT_FLIPADST: | 193 | 52.1k | case ADST_FLIPADST: | 194 | 52.1k | case H_FLIPADST: | 195 | 52.1k | *ud_flip = 0; | 196 | 52.1k | *lr_flip = 1; | 197 | 52.1k | break; | 198 | 15.2k | case FLIPADST_FLIPADST: | 199 | 15.2k | *ud_flip = 1; | 200 | 15.2k | *lr_flip = 1; | 201 | 15.2k | break; | 202 | 0 | default: | 203 | 0 | *ud_flip = 0; | 204 | 0 | *lr_flip = 0; | 205 | 0 | assert(0); | 206 | 2.32M | } | 207 | 2.32M | } |
Unexecuted instantiation: cdef_block_avx2.c:get_flip_cfg Unexecuted instantiation: cfl_avx2.c:get_flip_cfg Unexecuted instantiation: convolve_2d_avx2.c:get_flip_cfg Unexecuted instantiation: convolve_avx2.c:get_flip_cfg highbd_inv_txfm_avx2.c:get_flip_cfg Line | Count | Source | 169 | 4.56M | static inline void get_flip_cfg(TX_TYPE tx_type, int *ud_flip, int *lr_flip) { | 170 | 4.56M | switch (tx_type) { | 171 | 2.87M | case DCT_DCT: | 172 | 3.26M | case ADST_DCT: | 173 | 3.87M | case DCT_ADST: | 174 | 4.31M | case ADST_ADST: | 175 | 4.31M | *ud_flip = 0; | 176 | 4.31M | *lr_flip = 0; | 177 | 4.31M | break; | 178 | 0 | case IDTX: | 179 | 0 | case V_DCT: | 180 | 0 | case H_DCT: | 181 | 0 | case V_ADST: | 182 | 0 | case H_ADST: | 183 | 0 | *ud_flip = 0; | 184 | 0 | *lr_flip = 0; | 185 | 0 | break; | 186 | 35.7k | case FLIPADST_DCT: | 187 | 102k | case FLIPADST_ADST: | 188 | 102k | case V_FLIPADST: | 189 | 102k | *ud_flip = 1; | 190 | 102k | *lr_flip = 0; | 191 | 102k | break; | 192 | 87.8k | case DCT_FLIPADST: | 193 | 117k | case ADST_FLIPADST: | 194 | 117k | case H_FLIPADST: | 195 | 117k | *ud_flip = 0; | 196 | 117k | *lr_flip = 1; | 197 | 117k | break; | 198 | 30.9k | case FLIPADST_FLIPADST: | 199 | 30.9k | *ud_flip = 1; | 200 | 30.9k | *lr_flip = 1; | 201 | 30.9k | break; | 202 | 0 | default: | 203 | 0 | *ud_flip = 0; | 204 | 0 | *lr_flip = 0; | 205 | 0 | assert(0); | 206 | 4.56M | } | 207 | 4.56M | } |
Unexecuted instantiation: jnt_convolve_avx2.c:get_flip_cfg Unexecuted instantiation: reconinter_avx2.c:get_flip_cfg Unexecuted instantiation: resize_avx2.c:get_flip_cfg Unexecuted instantiation: selfguided_avx2.c:get_flip_cfg Unexecuted instantiation: warp_plane_avx2.c:get_flip_cfg Unexecuted instantiation: wiener_convolve_avx2.c:get_flip_cfg Unexecuted instantiation: highbd_convolve_2d_avx2.c:get_flip_cfg Unexecuted instantiation: highbd_jnt_convolve_avx2.c:get_flip_cfg Unexecuted instantiation: highbd_wiener_convolve_avx2.c:get_flip_cfg Unexecuted instantiation: highbd_warp_affine_avx2.c:get_flip_cfg Unexecuted instantiation: av1_inv_txfm1d.c:get_flip_cfg |
208 | | |
209 | 0 | static inline void set_flip_cfg(TX_TYPE tx_type, TXFM_2D_FLIP_CFG *cfg) { |
210 | 0 | get_flip_cfg(tx_type, &cfg->ud_flip, &cfg->lr_flip); |
211 | 0 | } Unexecuted instantiation: av1_dx_iface.c:set_flip_cfg Unexecuted instantiation: decodeframe.c:set_flip_cfg Unexecuted instantiation: decodemv.c:set_flip_cfg Unexecuted instantiation: decoder.c:set_flip_cfg Unexecuted instantiation: decodetxb.c:set_flip_cfg Unexecuted instantiation: detokenize.c:set_flip_cfg Unexecuted instantiation: obu.c:set_flip_cfg Unexecuted instantiation: av1_rtcd.c:set_flip_cfg Unexecuted instantiation: highbd_convolve_ssse3.c:set_flip_cfg Unexecuted instantiation: intrapred_sse4.c:set_flip_cfg Unexecuted instantiation: intrapred_avx2.c:set_flip_cfg Unexecuted instantiation: highbd_convolve_avx2.c:set_flip_cfg Unexecuted instantiation: alloccommon.c:set_flip_cfg Unexecuted instantiation: av1_inv_txfm2d.c:set_flip_cfg Unexecuted instantiation: av1_loopfilter.c:set_flip_cfg Unexecuted instantiation: av1_txfm.c:set_flip_cfg Unexecuted instantiation: blockd.c:set_flip_cfg Unexecuted instantiation: cdef.c:set_flip_cfg Unexecuted instantiation: cdef_block.c:set_flip_cfg Unexecuted instantiation: cfl.c:set_flip_cfg Unexecuted instantiation: convolve.c:set_flip_cfg Unexecuted instantiation: entropy.c:set_flip_cfg Unexecuted instantiation: entropymode.c:set_flip_cfg Unexecuted instantiation: entropymv.c:set_flip_cfg Unexecuted instantiation: idct.c:set_flip_cfg Unexecuted instantiation: mvref_common.c:set_flip_cfg Unexecuted instantiation: pred_common.c:set_flip_cfg Unexecuted instantiation: quant_common.c:set_flip_cfg Unexecuted instantiation: reconinter.c:set_flip_cfg Unexecuted instantiation: reconintra.c:set_flip_cfg Unexecuted instantiation: resize.c:set_flip_cfg Unexecuted instantiation: restoration.c:set_flip_cfg Unexecuted instantiation: scale.c:set_flip_cfg Unexecuted instantiation: scan.c:set_flip_cfg Unexecuted instantiation: thread_common.c:set_flip_cfg Unexecuted instantiation: tile_common.c:set_flip_cfg Unexecuted instantiation: txb_common.c:set_flip_cfg Unexecuted instantiation: warped_motion.c:set_flip_cfg Unexecuted instantiation: cfl_sse2.c:set_flip_cfg Unexecuted instantiation: convolve_2d_sse2.c:set_flip_cfg Unexecuted instantiation: convolve_sse2.c:set_flip_cfg Unexecuted instantiation: jnt_convolve_sse2.c:set_flip_cfg Unexecuted instantiation: resize_sse2.c:set_flip_cfg Unexecuted instantiation: wiener_convolve_sse2.c:set_flip_cfg Unexecuted instantiation: av1_inv_txfm_ssse3.c:set_flip_cfg Unexecuted instantiation: cfl_ssse3.c:set_flip_cfg Unexecuted instantiation: jnt_convolve_ssse3.c:set_flip_cfg Unexecuted instantiation: resize_ssse3.c:set_flip_cfg Unexecuted instantiation: highbd_convolve_2d_ssse3.c:set_flip_cfg Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:set_flip_cfg Unexecuted instantiation: reconinter_ssse3.c:set_flip_cfg Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:set_flip_cfg Unexecuted instantiation: av1_convolve_scale_sse4.c:set_flip_cfg Unexecuted instantiation: av1_txfm_sse4.c:set_flip_cfg Unexecuted instantiation: cdef_block_sse4.c:set_flip_cfg Unexecuted instantiation: filterintra_sse4.c:set_flip_cfg Unexecuted instantiation: highbd_inv_txfm_sse4.c:set_flip_cfg Unexecuted instantiation: intra_edge_sse4.c:set_flip_cfg Unexecuted instantiation: reconinter_sse4.c:set_flip_cfg Unexecuted instantiation: selfguided_sse4.c:set_flip_cfg Unexecuted instantiation: warp_plane_sse4.c:set_flip_cfg Unexecuted instantiation: highbd_convolve_2d_sse4.c:set_flip_cfg Unexecuted instantiation: highbd_jnt_convolve_sse4.c:set_flip_cfg Unexecuted instantiation: highbd_warp_plane_sse4.c:set_flip_cfg Unexecuted instantiation: av1_inv_txfm_avx2.c:set_flip_cfg Unexecuted instantiation: cdef_block_avx2.c:set_flip_cfg Unexecuted instantiation: cfl_avx2.c:set_flip_cfg Unexecuted instantiation: convolve_2d_avx2.c:set_flip_cfg Unexecuted instantiation: convolve_avx2.c:set_flip_cfg Unexecuted instantiation: highbd_inv_txfm_avx2.c:set_flip_cfg Unexecuted instantiation: jnt_convolve_avx2.c:set_flip_cfg Unexecuted instantiation: reconinter_avx2.c:set_flip_cfg Unexecuted instantiation: resize_avx2.c:set_flip_cfg Unexecuted instantiation: selfguided_avx2.c:set_flip_cfg Unexecuted instantiation: warp_plane_avx2.c:set_flip_cfg Unexecuted instantiation: wiener_convolve_avx2.c:set_flip_cfg Unexecuted instantiation: highbd_convolve_2d_avx2.c:set_flip_cfg Unexecuted instantiation: highbd_jnt_convolve_avx2.c:set_flip_cfg Unexecuted instantiation: highbd_wiener_convolve_avx2.c:set_flip_cfg Unexecuted instantiation: highbd_warp_affine_avx2.c:set_flip_cfg Unexecuted instantiation: av1_inv_txfm1d.c:set_flip_cfg |
212 | | |
213 | | // Utility function that returns the log of the ratio of the col and row |
214 | | // sizes. |
215 | 8.12M | static inline int get_rect_tx_log_ratio(int col, int row) { |
216 | 8.12M | if (col == row) return 0; |
217 | 3.67M | if (col > row) { |
218 | 2.68M | if (col == row * 2) return 1; |
219 | 1.25M | if (col == row * 4) return 2; |
220 | 18.4E | assert(0 && "Unsupported transform size"); |
221 | 18.4E | } else { |
222 | 992k | if (row == col * 2) return -1; |
223 | 208k | if (row == col * 4) return -2; |
224 | 18.4E | assert(0 && "Unsupported transform size"); |
225 | 18.4E | } |
226 | 0 | return 0; // Invalid |
227 | 3.67M | } Unexecuted instantiation: av1_dx_iface.c:get_rect_tx_log_ratio Unexecuted instantiation: decodeframe.c:get_rect_tx_log_ratio Unexecuted instantiation: decodemv.c:get_rect_tx_log_ratio Unexecuted instantiation: decoder.c:get_rect_tx_log_ratio Unexecuted instantiation: decodetxb.c:get_rect_tx_log_ratio Unexecuted instantiation: detokenize.c:get_rect_tx_log_ratio Unexecuted instantiation: obu.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_rtcd.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_convolve_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: intrapred_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: intrapred_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_convolve_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: alloccommon.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_inv_txfm2d.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_loopfilter.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_txfm.c:get_rect_tx_log_ratio Unexecuted instantiation: blockd.c:get_rect_tx_log_ratio Unexecuted instantiation: cdef.c:get_rect_tx_log_ratio Unexecuted instantiation: cdef_block.c:get_rect_tx_log_ratio Unexecuted instantiation: cfl.c:get_rect_tx_log_ratio Unexecuted instantiation: convolve.c:get_rect_tx_log_ratio Unexecuted instantiation: entropy.c:get_rect_tx_log_ratio Unexecuted instantiation: entropymode.c:get_rect_tx_log_ratio Unexecuted instantiation: entropymv.c:get_rect_tx_log_ratio Unexecuted instantiation: idct.c:get_rect_tx_log_ratio Unexecuted instantiation: mvref_common.c:get_rect_tx_log_ratio Unexecuted instantiation: pred_common.c:get_rect_tx_log_ratio Unexecuted instantiation: quant_common.c:get_rect_tx_log_ratio Unexecuted instantiation: reconinter.c:get_rect_tx_log_ratio Unexecuted instantiation: reconintra.c:get_rect_tx_log_ratio Unexecuted instantiation: resize.c:get_rect_tx_log_ratio Unexecuted instantiation: restoration.c:get_rect_tx_log_ratio Unexecuted instantiation: scale.c:get_rect_tx_log_ratio Unexecuted instantiation: scan.c:get_rect_tx_log_ratio Unexecuted instantiation: thread_common.c:get_rect_tx_log_ratio Unexecuted instantiation: tile_common.c:get_rect_tx_log_ratio Unexecuted instantiation: txb_common.c:get_rect_tx_log_ratio Unexecuted instantiation: warped_motion.c:get_rect_tx_log_ratio Unexecuted instantiation: cfl_sse2.c:get_rect_tx_log_ratio Unexecuted instantiation: convolve_2d_sse2.c:get_rect_tx_log_ratio Unexecuted instantiation: convolve_sse2.c:get_rect_tx_log_ratio Unexecuted instantiation: jnt_convolve_sse2.c:get_rect_tx_log_ratio Unexecuted instantiation: resize_sse2.c:get_rect_tx_log_ratio Unexecuted instantiation: wiener_convolve_sse2.c:get_rect_tx_log_ratio av1_inv_txfm_ssse3.c:get_rect_tx_log_ratio Line | Count | Source | 215 | 1.36M | static inline int get_rect_tx_log_ratio(int col, int row) { | 216 | 1.36M | if (col == row) return 0; | 217 | 1.18M | if (col > row) { | 218 | 847k | if (col == row * 2) return 1; | 219 | 403k | if (col == row * 4) return 2; | 220 | 18.4E | assert(0 && "Unsupported transform size"); | 221 | 18.4E | } else { | 222 | 337k | if (row == col * 2) return -1; | 223 | 90.6k | if (row == col * 4) return -2; | 224 | 18.4E | assert(0 && "Unsupported transform size"); | 225 | 18.4E | } | 226 | 0 | return 0; // Invalid | 227 | 1.18M | } |
Unexecuted instantiation: cfl_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: jnt_convolve_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: resize_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_convolve_2d_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: reconinter_ssse3.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_convolve_scale_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_txfm_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: cdef_block_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: filterintra_sse4.c:get_rect_tx_log_ratio highbd_inv_txfm_sse4.c:get_rect_tx_log_ratio Line | Count | Source | 215 | 620k | static inline int get_rect_tx_log_ratio(int col, int row) { | 216 | 620k | if (col == row) return 0; | 217 | 197k | if (col > row) { | 218 | 126k | if (col == row * 2) return 1; | 219 | 9.85k | if (col == row * 4) return 2; | 220 | 0 | assert(0 && "Unsupported transform size"); | 221 | 70.9k | } else { | 222 | 70.9k | if (row == col * 2) return -1; | 223 | 6.37k | if (row == col * 4) return -2; | 224 | 0 | assert(0 && "Unsupported transform size"); | 225 | 0 | } | 226 | 0 | return 0; // Invalid | 227 | 197k | } |
Unexecuted instantiation: intra_edge_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: reconinter_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: selfguided_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: warp_plane_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_warp_plane_sse4.c:get_rect_tx_log_ratio av1_inv_txfm_avx2.c:get_rect_tx_log_ratio Line | Count | Source | 215 | 1.57M | static inline int get_rect_tx_log_ratio(int col, int row) { | 216 | 1.57M | if (col == row) return 0; | 217 | 418k | if (col > row) { | 218 | 318k | if (col == row * 2) return 1; | 219 | 140k | if (col == row * 4) return 2; | 220 | 18.4E | assert(0 && "Unsupported transform size"); | 221 | 18.4E | } else { | 222 | 99.2k | if (row == col * 2) return -1; | 223 | 15.7k | if (row == col * 4) return -2; | 224 | 18.4E | assert(0 && "Unsupported transform size"); | 225 | 18.4E | } | 226 | 0 | return 0; // Invalid | 227 | 418k | } |
Unexecuted instantiation: cdef_block_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: cfl_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: convolve_2d_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: convolve_avx2.c:get_rect_tx_log_ratio highbd_inv_txfm_avx2.c:get_rect_tx_log_ratio Line | Count | Source | 215 | 4.56M | static inline int get_rect_tx_log_ratio(int col, int row) { | 216 | 4.56M | if (col == row) return 0; | 217 | 1.87M | if (col > row) { | 218 | 1.38M | if (col == row * 2) return 1; | 219 | 699k | if (col == row * 4) return 2; | 220 | 18.4E | assert(0 && "Unsupported transform size"); | 221 | 18.4E | } else { | 222 | 484k | if (row == col * 2) return -1; | 223 | 95.4k | if (row == col * 4) return -2; | 224 | 18.4E | assert(0 && "Unsupported transform size"); | 225 | 18.4E | } | 226 | 0 | return 0; // Invalid | 227 | 1.87M | } |
Unexecuted instantiation: jnt_convolve_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: reconinter_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: resize_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: selfguided_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: warp_plane_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: wiener_convolve_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_convolve_2d_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_jnt_convolve_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_wiener_convolve_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: highbd_warp_affine_avx2.c:get_rect_tx_log_ratio Unexecuted instantiation: av1_inv_txfm1d.c:get_rect_tx_log_ratio |
228 | | |
229 | | void av1_gen_fwd_stage_range(int8_t *stage_range_col, int8_t *stage_range_row, |
230 | | const TXFM_2D_FLIP_CFG *cfg, int bd); |
231 | | |
232 | | void av1_gen_inv_stage_range(int8_t *stage_range_col, int8_t *stage_range_row, |
233 | | const TXFM_2D_FLIP_CFG *cfg, TX_SIZE tx_size, |
234 | | int bd); |
235 | | |
236 | | void av1_get_fwd_txfm_cfg(TX_TYPE tx_type, TX_SIZE tx_size, |
237 | | TXFM_2D_FLIP_CFG *cfg); |
238 | | void av1_get_inv_txfm_cfg(TX_TYPE tx_type, TX_SIZE tx_size, |
239 | | TXFM_2D_FLIP_CFG *cfg); |
240 | | extern const TXFM_TYPE av1_txfm_type_ls[5][TX_TYPES_1D]; |
241 | | extern const int8_t av1_txfm_stage_num_list[TXFM_TYPES]; |
242 | 12.9M | static inline int get_txw_idx(TX_SIZE tx_size) { |
243 | 12.9M | return tx_size_wide_log2[tx_size] - tx_size_wide_log2[0]; |
244 | 12.9M | } Unexecuted instantiation: av1_dx_iface.c:get_txw_idx Unexecuted instantiation: decodeframe.c:get_txw_idx Unexecuted instantiation: decodemv.c:get_txw_idx Unexecuted instantiation: decoder.c:get_txw_idx Unexecuted instantiation: decodetxb.c:get_txw_idx Unexecuted instantiation: detokenize.c:get_txw_idx Unexecuted instantiation: obu.c:get_txw_idx Unexecuted instantiation: av1_rtcd.c:get_txw_idx Unexecuted instantiation: highbd_convolve_ssse3.c:get_txw_idx Unexecuted instantiation: intrapred_sse4.c:get_txw_idx Unexecuted instantiation: intrapred_avx2.c:get_txw_idx Unexecuted instantiation: highbd_convolve_avx2.c:get_txw_idx Unexecuted instantiation: alloccommon.c:get_txw_idx Unexecuted instantiation: av1_inv_txfm2d.c:get_txw_idx Unexecuted instantiation: av1_loopfilter.c:get_txw_idx Unexecuted instantiation: av1_txfm.c:get_txw_idx Unexecuted instantiation: blockd.c:get_txw_idx Unexecuted instantiation: cdef.c:get_txw_idx Unexecuted instantiation: cdef_block.c:get_txw_idx Unexecuted instantiation: cfl.c:get_txw_idx Unexecuted instantiation: convolve.c:get_txw_idx Unexecuted instantiation: entropy.c:get_txw_idx Unexecuted instantiation: entropymode.c:get_txw_idx Unexecuted instantiation: entropymv.c:get_txw_idx Unexecuted instantiation: idct.c:get_txw_idx Unexecuted instantiation: mvref_common.c:get_txw_idx Unexecuted instantiation: pred_common.c:get_txw_idx Unexecuted instantiation: quant_common.c:get_txw_idx Unexecuted instantiation: reconinter.c:get_txw_idx Unexecuted instantiation: reconintra.c:get_txw_idx Unexecuted instantiation: resize.c:get_txw_idx Unexecuted instantiation: restoration.c:get_txw_idx Unexecuted instantiation: scale.c:get_txw_idx Unexecuted instantiation: scan.c:get_txw_idx Unexecuted instantiation: thread_common.c:get_txw_idx Unexecuted instantiation: tile_common.c:get_txw_idx Unexecuted instantiation: txb_common.c:get_txw_idx Unexecuted instantiation: warped_motion.c:get_txw_idx Unexecuted instantiation: cfl_sse2.c:get_txw_idx Unexecuted instantiation: convolve_2d_sse2.c:get_txw_idx Unexecuted instantiation: convolve_sse2.c:get_txw_idx Unexecuted instantiation: jnt_convolve_sse2.c:get_txw_idx Unexecuted instantiation: resize_sse2.c:get_txw_idx Unexecuted instantiation: wiener_convolve_sse2.c:get_txw_idx av1_inv_txfm_ssse3.c:get_txw_idx Line | Count | Source | 242 | 3.66M | static inline int get_txw_idx(TX_SIZE tx_size) { | 243 | 3.66M | return tx_size_wide_log2[tx_size] - tx_size_wide_log2[0]; | 244 | 3.66M | } |
Unexecuted instantiation: cfl_ssse3.c:get_txw_idx Unexecuted instantiation: jnt_convolve_ssse3.c:get_txw_idx Unexecuted instantiation: resize_ssse3.c:get_txw_idx Unexecuted instantiation: highbd_convolve_2d_ssse3.c:get_txw_idx Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:get_txw_idx Unexecuted instantiation: reconinter_ssse3.c:get_txw_idx Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:get_txw_idx Unexecuted instantiation: av1_convolve_scale_sse4.c:get_txw_idx Unexecuted instantiation: av1_txfm_sse4.c:get_txw_idx Unexecuted instantiation: cdef_block_sse4.c:get_txw_idx Unexecuted instantiation: filterintra_sse4.c:get_txw_idx highbd_inv_txfm_sse4.c:get_txw_idx Line | Count | Source | 242 | 3.15M | static inline int get_txw_idx(TX_SIZE tx_size) { | 243 | 3.15M | return tx_size_wide_log2[tx_size] - tx_size_wide_log2[0]; | 244 | 3.15M | } |
Unexecuted instantiation: intra_edge_sse4.c:get_txw_idx Unexecuted instantiation: reconinter_sse4.c:get_txw_idx Unexecuted instantiation: selfguided_sse4.c:get_txw_idx Unexecuted instantiation: warp_plane_sse4.c:get_txw_idx Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_txw_idx Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_txw_idx Unexecuted instantiation: highbd_warp_plane_sse4.c:get_txw_idx av1_inv_txfm_avx2.c:get_txw_idx Line | Count | Source | 242 | 1.57M | static inline int get_txw_idx(TX_SIZE tx_size) { | 243 | 1.57M | return tx_size_wide_log2[tx_size] - tx_size_wide_log2[0]; | 244 | 1.57M | } |
Unexecuted instantiation: cdef_block_avx2.c:get_txw_idx Unexecuted instantiation: cfl_avx2.c:get_txw_idx Unexecuted instantiation: convolve_2d_avx2.c:get_txw_idx Unexecuted instantiation: convolve_avx2.c:get_txw_idx highbd_inv_txfm_avx2.c:get_txw_idx Line | Count | Source | 242 | 4.56M | static inline int get_txw_idx(TX_SIZE tx_size) { | 243 | 4.56M | return tx_size_wide_log2[tx_size] - tx_size_wide_log2[0]; | 244 | 4.56M | } |
Unexecuted instantiation: jnt_convolve_avx2.c:get_txw_idx Unexecuted instantiation: reconinter_avx2.c:get_txw_idx Unexecuted instantiation: resize_avx2.c:get_txw_idx Unexecuted instantiation: selfguided_avx2.c:get_txw_idx Unexecuted instantiation: warp_plane_avx2.c:get_txw_idx Unexecuted instantiation: wiener_convolve_avx2.c:get_txw_idx Unexecuted instantiation: highbd_convolve_2d_avx2.c:get_txw_idx Unexecuted instantiation: highbd_jnt_convolve_avx2.c:get_txw_idx Unexecuted instantiation: highbd_wiener_convolve_avx2.c:get_txw_idx Unexecuted instantiation: highbd_warp_affine_avx2.c:get_txw_idx Unexecuted instantiation: av1_inv_txfm1d.c:get_txw_idx |
245 | 12.9M | static inline int get_txh_idx(TX_SIZE tx_size) { |
246 | 12.9M | return tx_size_high_log2[tx_size] - tx_size_high_log2[0]; |
247 | 12.9M | } Unexecuted instantiation: av1_dx_iface.c:get_txh_idx Unexecuted instantiation: decodeframe.c:get_txh_idx Unexecuted instantiation: decodemv.c:get_txh_idx Unexecuted instantiation: decoder.c:get_txh_idx Unexecuted instantiation: decodetxb.c:get_txh_idx Unexecuted instantiation: detokenize.c:get_txh_idx Unexecuted instantiation: obu.c:get_txh_idx Unexecuted instantiation: av1_rtcd.c:get_txh_idx Unexecuted instantiation: highbd_convolve_ssse3.c:get_txh_idx Unexecuted instantiation: intrapred_sse4.c:get_txh_idx Unexecuted instantiation: intrapred_avx2.c:get_txh_idx Unexecuted instantiation: highbd_convolve_avx2.c:get_txh_idx Unexecuted instantiation: alloccommon.c:get_txh_idx Unexecuted instantiation: av1_inv_txfm2d.c:get_txh_idx Unexecuted instantiation: av1_loopfilter.c:get_txh_idx Unexecuted instantiation: av1_txfm.c:get_txh_idx Unexecuted instantiation: blockd.c:get_txh_idx Unexecuted instantiation: cdef.c:get_txh_idx Unexecuted instantiation: cdef_block.c:get_txh_idx Unexecuted instantiation: cfl.c:get_txh_idx Unexecuted instantiation: convolve.c:get_txh_idx Unexecuted instantiation: entropy.c:get_txh_idx Unexecuted instantiation: entropymode.c:get_txh_idx Unexecuted instantiation: entropymv.c:get_txh_idx Unexecuted instantiation: idct.c:get_txh_idx Unexecuted instantiation: mvref_common.c:get_txh_idx Unexecuted instantiation: pred_common.c:get_txh_idx Unexecuted instantiation: quant_common.c:get_txh_idx Unexecuted instantiation: reconinter.c:get_txh_idx Unexecuted instantiation: reconintra.c:get_txh_idx Unexecuted instantiation: resize.c:get_txh_idx Unexecuted instantiation: restoration.c:get_txh_idx Unexecuted instantiation: scale.c:get_txh_idx Unexecuted instantiation: scan.c:get_txh_idx Unexecuted instantiation: thread_common.c:get_txh_idx Unexecuted instantiation: tile_common.c:get_txh_idx Unexecuted instantiation: txb_common.c:get_txh_idx Unexecuted instantiation: warped_motion.c:get_txh_idx Unexecuted instantiation: cfl_sse2.c:get_txh_idx Unexecuted instantiation: convolve_2d_sse2.c:get_txh_idx Unexecuted instantiation: convolve_sse2.c:get_txh_idx Unexecuted instantiation: jnt_convolve_sse2.c:get_txh_idx Unexecuted instantiation: resize_sse2.c:get_txh_idx Unexecuted instantiation: wiener_convolve_sse2.c:get_txh_idx av1_inv_txfm_ssse3.c:get_txh_idx Line | Count | Source | 245 | 3.66M | static inline int get_txh_idx(TX_SIZE tx_size) { | 246 | 3.66M | return tx_size_high_log2[tx_size] - tx_size_high_log2[0]; | 247 | 3.66M | } |
Unexecuted instantiation: cfl_ssse3.c:get_txh_idx Unexecuted instantiation: jnt_convolve_ssse3.c:get_txh_idx Unexecuted instantiation: resize_ssse3.c:get_txh_idx Unexecuted instantiation: highbd_convolve_2d_ssse3.c:get_txh_idx Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:get_txh_idx Unexecuted instantiation: reconinter_ssse3.c:get_txh_idx Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:get_txh_idx Unexecuted instantiation: av1_convolve_scale_sse4.c:get_txh_idx Unexecuted instantiation: av1_txfm_sse4.c:get_txh_idx Unexecuted instantiation: cdef_block_sse4.c:get_txh_idx Unexecuted instantiation: filterintra_sse4.c:get_txh_idx highbd_inv_txfm_sse4.c:get_txh_idx Line | Count | Source | 245 | 3.15M | static inline int get_txh_idx(TX_SIZE tx_size) { | 246 | 3.15M | return tx_size_high_log2[tx_size] - tx_size_high_log2[0]; | 247 | 3.15M | } |
Unexecuted instantiation: intra_edge_sse4.c:get_txh_idx Unexecuted instantiation: reconinter_sse4.c:get_txh_idx Unexecuted instantiation: selfguided_sse4.c:get_txh_idx Unexecuted instantiation: warp_plane_sse4.c:get_txh_idx Unexecuted instantiation: highbd_convolve_2d_sse4.c:get_txh_idx Unexecuted instantiation: highbd_jnt_convolve_sse4.c:get_txh_idx Unexecuted instantiation: highbd_warp_plane_sse4.c:get_txh_idx av1_inv_txfm_avx2.c:get_txh_idx Line | Count | Source | 245 | 1.57M | static inline int get_txh_idx(TX_SIZE tx_size) { | 246 | 1.57M | return tx_size_high_log2[tx_size] - tx_size_high_log2[0]; | 247 | 1.57M | } |
Unexecuted instantiation: cdef_block_avx2.c:get_txh_idx Unexecuted instantiation: cfl_avx2.c:get_txh_idx Unexecuted instantiation: convolve_2d_avx2.c:get_txh_idx Unexecuted instantiation: convolve_avx2.c:get_txh_idx highbd_inv_txfm_avx2.c:get_txh_idx Line | Count | Source | 245 | 4.56M | static inline int get_txh_idx(TX_SIZE tx_size) { | 246 | 4.56M | return tx_size_high_log2[tx_size] - tx_size_high_log2[0]; | 247 | 4.56M | } |
Unexecuted instantiation: jnt_convolve_avx2.c:get_txh_idx Unexecuted instantiation: reconinter_avx2.c:get_txh_idx Unexecuted instantiation: resize_avx2.c:get_txh_idx Unexecuted instantiation: selfguided_avx2.c:get_txh_idx Unexecuted instantiation: warp_plane_avx2.c:get_txh_idx Unexecuted instantiation: wiener_convolve_avx2.c:get_txh_idx Unexecuted instantiation: highbd_convolve_2d_avx2.c:get_txh_idx Unexecuted instantiation: highbd_jnt_convolve_avx2.c:get_txh_idx Unexecuted instantiation: highbd_wiener_convolve_avx2.c:get_txh_idx Unexecuted instantiation: highbd_warp_affine_avx2.c:get_txh_idx Unexecuted instantiation: av1_inv_txfm1d.c:get_txh_idx |
248 | | |
249 | | void av1_range_check_buf(int32_t stage, const int32_t *input, |
250 | | const int32_t *buf, int32_t size, int8_t bit); |
251 | | #define MAX_TXWH_IDX 5 |
252 | | #ifdef __cplusplus |
253 | | } |
254 | | #endif // __cplusplus |
255 | | |
256 | | #endif // AOM_AV1_COMMON_AV1_TXFM_H_ |