/src/libhevc/common/x86/ihevc_platform_macros.h
Line | Count | Source (jump to first uncovered line) |
1 | | /****************************************************************************** |
2 | | * |
3 | | * Copyright (C) 2012 Ittiam Systems Pvt Ltd, Bangalore |
4 | | * |
5 | | * Licensed under the Apache License, Version 2.0 (the "License"); |
6 | | * you may not use this file except in compliance with the License. |
7 | | * You may obtain a copy of the License at: |
8 | | * |
9 | | * http://www.apache.org/licenses/LICENSE-2.0 |
10 | | * |
11 | | * Unless required by applicable law or agreed to in writing, software |
12 | | * distributed under the License is distributed on an "AS IS" BASIS, |
13 | | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
14 | | * See the License for the specific language governing permissions and |
15 | | * limitations under the License. |
16 | | * |
17 | | ******************************************************************************/ |
18 | | /** |
19 | | ******************************************************************************* |
20 | | * @file |
21 | | * ihevc_platform_macros.h |
22 | | * |
23 | | * @brief |
24 | | * Platform specific Macro definitions used in the codec |
25 | | * |
26 | | * @author |
27 | | * Ittiam |
28 | | * |
29 | | * @remarks |
30 | | * None |
31 | | * |
32 | | ******************************************************************************* |
33 | | */ |
34 | | |
35 | | |
36 | | #ifndef _IHEVC_PLATFORM_MACROS_H_ |
37 | | #define _IHEVC_PLATFORM_MACROS_H_ |
38 | | |
39 | | |
40 | 7.12G | #define CLIP_U8(x) CLIP3((x), 0, 255); |
41 | 6.87M | #define CLIP_S8(x) CLIP3((x), -128, 127); |
42 | | |
43 | | #define CLIP_U10(x) CLIP3((x), 0, 1023); |
44 | | #define CLIP_S10(x) CLIP3((x), -512, 511); |
45 | | |
46 | | #define CLIP_U12(x) CLIP3((x), 0, 4095); |
47 | | #define CLIP_S12(x) CLIP3((x), -2048, 2047); |
48 | | |
49 | | #define CLIP_U14(x) CLIP3((x), 0, 16383); |
50 | | #define CLIP_S14(x) CLIP3((x), -8192, 8191); |
51 | | |
52 | 29.1M | #define CLIP_U16(x) CLIP3((x), 0, 65535); |
53 | 21.9G | #define CLIP_S16(x) CLIP3((x), -32768, 32767); |
54 | | |
55 | | |
56 | | #define SHL(x,y) (((y) < 32) ? ((x) << (y)) : 0) |
57 | 488k | #define SHR(x,y) (((y) < 32) ? ((x) >> (y)) : 0) |
58 | | |
59 | 7.11G | #define SHR_NEG(val,shift) ((shift>0)?(val>>shift):(val<<(-shift))) |
60 | 6.53G | #define SHL_NEG(val,shift) ((shift<0)?(val>>(-shift)):(val<<shift)) |
61 | | |
62 | | |
63 | 874k | #define ITT_BIG_ENDIAN(x) ((x << 24)) | \ |
64 | 874k | ((x & 0x0000ff00) << 8) | \ |
65 | 874k | ((x & 0x00ff0000) >> 8) | \ |
66 | 874k | ((UWORD32)x >> 24); |
67 | | |
68 | 173M | #define NOP(nop_cnt) {UWORD32 nop_i; for (nop_i = 0; nop_i < nop_cnt; nop_i++) asm("nop");} |
69 | | |
70 | | #define POPCNT_U32(x) __builtin_popcount(x) |
71 | | |
72 | | #define PLD(a) |
73 | | #define INLINE inline |
74 | | |
75 | | static INLINE UWORD32 CLZ(UWORD32 u4_word) |
76 | 60.1M | { |
77 | 60.1M | if(u4_word) |
78 | 54.0M | return (__builtin_clz(u4_word)); |
79 | 6.13M | else |
80 | 6.13M | return 31; |
81 | 60.1M | } Unexecuted instantiation: ihevcd_api.c:CLZ Unexecuted instantiation: ihevcd_decode.c:CLZ Unexecuted instantiation: ihevcd_nal.c:CLZ Line | Count | Source | 76 | 42.8k | { | 77 | 42.8k | if(u4_word) | 78 | 42.4k | return (__builtin_clz(u4_word)); | 79 | 344 | else | 80 | 344 | return 31; | 81 | 42.8k | } |
Unexecuted instantiation: ihevcd_parse_headers.c:CLZ ihevcd_parse_slice_header.c:CLZ Line | Count | Source | 76 | 11.7k | { | 77 | 11.7k | if(u4_word) | 78 | 11.7k | return (__builtin_clz(u4_word)); | 79 | 0 | else | 80 | 0 | return 31; | 81 | 11.7k | } |
Unexecuted instantiation: ihevcd_parse_slice.c:CLZ ihevcd_parse_residual.c:CLZ Line | Count | Source | 76 | 15.7M | { | 77 | 15.7M | if(u4_word) | 78 | 14.4M | return (__builtin_clz(u4_word)); | 79 | 1.29M | else | 80 | 1.29M | return 31; | 81 | 15.7M | } |
Line | Count | Source | 76 | 8.76M | { | 77 | 8.76M | if(u4_word) | 78 | 8.76M | return (__builtin_clz(u4_word)); | 79 | 0 | else | 80 | 0 | return 31; | 81 | 8.76M | } |
Unexecuted instantiation: ihevcd_intra_pred_mode_prediction.c:CLZ Unexecuted instantiation: ihevcd_process_slice.c:CLZ Unexecuted instantiation: ihevcd_utils.c:CLZ Unexecuted instantiation: ihevcd_job_queue.c:CLZ Unexecuted instantiation: ihevcd_ref_list.c:CLZ Unexecuted instantiation: ihevcd_get_mv.c:CLZ Unexecuted instantiation: ihevcd_mv_pred.c:CLZ Unexecuted instantiation: ihevcd_mv_merge.c:CLZ ihevcd_iquant_itrans_recon_ctb.c:CLZ Line | Count | Source | 76 | 2.68M | { | 77 | 2.68M | if(u4_word) | 78 | 2.68M | return (__builtin_clz(u4_word)); | 79 | 18.4E | else | 80 | 18.4E | return 31; | 81 | 2.68M | } |
Unexecuted instantiation: ihevcd_boundary_strength.c:CLZ Unexecuted instantiation: ihevcd_deblk.c:CLZ Unexecuted instantiation: ihevcd_inter_pred.c:CLZ Unexecuted instantiation: ihevcd_sao.c:CLZ Unexecuted instantiation: ihevcd_fmt_conv.c:CLZ Unexecuted instantiation: ihevcd_function_selector.c:CLZ Unexecuted instantiation: ihevcd_function_selector_generic.c:CLZ Unexecuted instantiation: ihevcd_function_selector_ssse3.c:CLZ Unexecuted instantiation: ihevcd_function_selector_sse42.c:CLZ Unexecuted instantiation: ihevcd_fmt_conv_ssse3_intr.c:CLZ Unexecuted instantiation: ihevcd_it_rec_dc_ssse3_intr.c:CLZ Unexecuted instantiation: ihevcd_it_rec_dc_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_inter_pred_filters.c:CLZ Unexecuted instantiation: ihevc_weighted_pred.c:CLZ Unexecuted instantiation: ihevc_padding.c:CLZ Unexecuted instantiation: ihevc_deblk_edge_filter.c:CLZ Unexecuted instantiation: ihevc_common_tables.c:CLZ Unexecuted instantiation: ihevc_intra_pred_filters.c:CLZ Unexecuted instantiation: ihevc_chroma_intra_pred_filters.c:CLZ Unexecuted instantiation: ihevc_sao.c:CLZ Unexecuted instantiation: ihevc_trans_tables.c:CLZ Unexecuted instantiation: ihevc_recon.c:CLZ Unexecuted instantiation: ihevc_itrans.c:CLZ Unexecuted instantiation: ihevc_itrans_recon.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_32x32.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_16x16.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_8x8.c:CLZ Unexecuted instantiation: ihevc_chroma_itrans_recon.c:CLZ Unexecuted instantiation: ihevc_chroma_recon.c:CLZ Unexecuted instantiation: ihevc_chroma_itrans_recon_16x16.c:CLZ Unexecuted instantiation: ihevc_chroma_itrans_recon_8x8.c:CLZ Unexecuted instantiation: ihevc_inter_pred_filters_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_weighted_pred_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_intra_pred_filters_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_chroma_intra_pred_filters_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_16x16_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_32x32_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_sao_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_deblk_ssse3_intr.c:CLZ Unexecuted instantiation: ihevc_inter_pred_filters_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_weighted_pred_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_intra_pred_filters_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_chroma_intra_pred_filters_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_itrans_recon_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_32x32_itrans_recon_sse42_intr.c:CLZ Unexecuted instantiation: ihevc_tables_x86_intr.c:CLZ Unexecuted instantiation: ihevcd_itrans_recon_dc.c:CLZ Unexecuted instantiation: ihevce_plugin.c:CLZ Unexecuted instantiation: ihevce_entropy_cod.c:CLZ Unexecuted instantiation: ihevce_entropy_interface.c:CLZ Unexecuted instantiation: ihevce_error_check.c:CLZ Unexecuted instantiation: ihevce_frame_process_utils.c:CLZ Unexecuted instantiation: ihevce_global_tables.c:CLZ Unexecuted instantiation: ihevce_hle_interface.c:CLZ Unexecuted instantiation: ihevce_hle_q_func.c:CLZ Unexecuted instantiation: ihevce_lap_interface.c:CLZ Unexecuted instantiation: ihevce_memory_init.c:CLZ Unexecuted instantiation: ihevce_rc_interface.c:CLZ Unexecuted instantiation: ihevce_tile_interface.c:CLZ Unexecuted instantiation: hme_interface.c:CLZ Unexecuted instantiation: hme_refine.c:CLZ Unexecuted instantiation: hme_search_algo.c:CLZ Unexecuted instantiation: hme_subpel.c:CLZ Unexecuted instantiation: hme_utils.c:CLZ Unexecuted instantiation: ihevce_bitstream.c:CLZ Unexecuted instantiation: ihevce_cabac_cu_pu.c:CLZ Line | Count | Source | 76 | 18.2M | { | 77 | 18.2M | if(u4_word) | 78 | 18.2M | return (__builtin_clz(u4_word)); | 79 | 0 | else | 80 | 0 | return 31; | 81 | 18.2M | } |
Unexecuted instantiation: ihevce_coarse_me_pass.c:CLZ Unexecuted instantiation: ihevce_common_utils.c:CLZ Unexecuted instantiation: ihevce_decomp_pre_intra_pass.c:CLZ Unexecuted instantiation: ihevce_dep_mngr.c:CLZ Unexecuted instantiation: ihevce_enc_loop_pass.c:CLZ Unexecuted instantiation: ihevce_enc_loop_utils.c:CLZ Unexecuted instantiation: ihevce_enc_sbh_funcs.c:CLZ Unexecuted instantiation: ihevce_enc_subpel_gen.c:CLZ Unexecuted instantiation: ihevce_encode_header.c:CLZ Unexecuted instantiation: ihevce_encode_header_sei_vui.c:CLZ Unexecuted instantiation: ihevce_frame_process.c:CLZ Unexecuted instantiation: ihevce_function_selector.c:CLZ Unexecuted instantiation: ihevce_had_satd.c:CLZ Unexecuted instantiation: ihevce_inter_pred.c:CLZ Unexecuted instantiation: ihevce_ipe_pass.c:CLZ Unexecuted instantiation: ihevce_me_instr_set_router.c:CLZ Unexecuted instantiation: ihevce_me_pass.c:CLZ Unexecuted instantiation: ihevce_multi_thrd_funcs.c:CLZ Unexecuted instantiation: ihevce_mv_pred.c:CLZ Unexecuted instantiation: ihevce_mv_pred_merge.c:CLZ Unexecuted instantiation: ihevce_nbr_avail.c:CLZ Unexecuted instantiation: ihevce_recur_bracketing.c:CLZ Unexecuted instantiation: ihevce_sao.c:CLZ Unexecuted instantiation: ihevce_stasino_helpers.c:CLZ Unexecuted instantiation: ihevce_sub_pic_rc.c:CLZ Unexecuted instantiation: ihevce_tu_tree_selector.c:CLZ Unexecuted instantiation: ihevc_hbd_deblk_edge_filter.c:CLZ Unexecuted instantiation: ihevc_quant_iquant_ssd.c:CLZ Unexecuted instantiation: ihevc_resi_trans.c:CLZ Unexecuted instantiation: hme_coarse.c:CLZ Unexecuted instantiation: hme_common_utils.c:CLZ Unexecuted instantiation: hme_err_compute.c:CLZ Unexecuted instantiation: hme_fullpel.c:CLZ Unexecuted instantiation: hme_function_selector.c:CLZ Unexecuted instantiation: hme_globals.c:CLZ Unexecuted instantiation: ihevce_bs_compute_ctb.c:CLZ Unexecuted instantiation: ihevce_cabac.c:CLZ Unexecuted instantiation: ihevce_cabac_rdo.c:CLZ Line | Count | Source | 76 | 14.6M | { | 77 | 14.6M | if(u4_word) | 78 | 9.81M | return (__builtin_clz(u4_word)); | 79 | 4.83M | else | 80 | 4.83M | return 31; | 81 | 14.6M | } |
Unexecuted instantiation: ihevce_enc_cu_recursion.c:CLZ Unexecuted instantiation: ihevce_enc_loop_inter_mode_sifter.c:CLZ |
82 | | |
83 | | static INLINE UWORD32 CLZNZ(UWORD32 u4_word) |
84 | 0 | { |
85 | 0 | return (__builtin_clz(u4_word)); |
86 | 0 | } Unexecuted instantiation: ihevcd_api.c:CLZNZ Unexecuted instantiation: ihevcd_decode.c:CLZNZ Unexecuted instantiation: ihevcd_nal.c:CLZNZ Unexecuted instantiation: ihevcd_bitstream.c:CLZNZ Unexecuted instantiation: ihevcd_parse_headers.c:CLZNZ Unexecuted instantiation: ihevcd_parse_slice_header.c:CLZNZ Unexecuted instantiation: ihevcd_parse_slice.c:CLZNZ Unexecuted instantiation: ihevcd_parse_residual.c:CLZNZ Unexecuted instantiation: ihevcd_cabac.c:CLZNZ Unexecuted instantiation: ihevcd_intra_pred_mode_prediction.c:CLZNZ Unexecuted instantiation: ihevcd_process_slice.c:CLZNZ Unexecuted instantiation: ihevcd_utils.c:CLZNZ Unexecuted instantiation: ihevcd_job_queue.c:CLZNZ Unexecuted instantiation: ihevcd_ref_list.c:CLZNZ Unexecuted instantiation: ihevcd_get_mv.c:CLZNZ Unexecuted instantiation: ihevcd_mv_pred.c:CLZNZ Unexecuted instantiation: ihevcd_mv_merge.c:CLZNZ Unexecuted instantiation: ihevcd_iquant_itrans_recon_ctb.c:CLZNZ Unexecuted instantiation: ihevcd_boundary_strength.c:CLZNZ Unexecuted instantiation: ihevcd_deblk.c:CLZNZ Unexecuted instantiation: ihevcd_inter_pred.c:CLZNZ Unexecuted instantiation: ihevcd_sao.c:CLZNZ Unexecuted instantiation: ihevcd_fmt_conv.c:CLZNZ Unexecuted instantiation: ihevcd_function_selector.c:CLZNZ Unexecuted instantiation: ihevcd_function_selector_generic.c:CLZNZ Unexecuted instantiation: ihevcd_function_selector_ssse3.c:CLZNZ Unexecuted instantiation: ihevcd_function_selector_sse42.c:CLZNZ Unexecuted instantiation: ihevcd_fmt_conv_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevcd_it_rec_dc_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevcd_it_rec_dc_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_inter_pred_filters.c:CLZNZ Unexecuted instantiation: ihevc_weighted_pred.c:CLZNZ Unexecuted instantiation: ihevc_padding.c:CLZNZ Unexecuted instantiation: ihevc_deblk_edge_filter.c:CLZNZ Unexecuted instantiation: ihevc_common_tables.c:CLZNZ Unexecuted instantiation: ihevc_intra_pred_filters.c:CLZNZ Unexecuted instantiation: ihevc_chroma_intra_pred_filters.c:CLZNZ Unexecuted instantiation: ihevc_sao.c:CLZNZ Unexecuted instantiation: ihevc_trans_tables.c:CLZNZ Unexecuted instantiation: ihevc_recon.c:CLZNZ Unexecuted instantiation: ihevc_itrans.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_32x32.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_16x16.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_8x8.c:CLZNZ Unexecuted instantiation: ihevc_chroma_itrans_recon.c:CLZNZ Unexecuted instantiation: ihevc_chroma_recon.c:CLZNZ Unexecuted instantiation: ihevc_chroma_itrans_recon_16x16.c:CLZNZ Unexecuted instantiation: ihevc_chroma_itrans_recon_8x8.c:CLZNZ Unexecuted instantiation: ihevc_inter_pred_filters_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_weighted_pred_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_intra_pred_filters_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_chroma_intra_pred_filters_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_16x16_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_32x32_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_sao_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_deblk_ssse3_intr.c:CLZNZ Unexecuted instantiation: ihevc_inter_pred_filters_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_weighted_pred_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_intra_pred_filters_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_chroma_intra_pred_filters_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_itrans_recon_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_32x32_itrans_recon_sse42_intr.c:CLZNZ Unexecuted instantiation: ihevc_tables_x86_intr.c:CLZNZ Unexecuted instantiation: ihevcd_itrans_recon_dc.c:CLZNZ Unexecuted instantiation: ihevce_plugin.c:CLZNZ Unexecuted instantiation: ihevce_entropy_cod.c:CLZNZ Unexecuted instantiation: ihevce_entropy_interface.c:CLZNZ Unexecuted instantiation: ihevce_error_check.c:CLZNZ Unexecuted instantiation: ihevce_frame_process_utils.c:CLZNZ Unexecuted instantiation: ihevce_global_tables.c:CLZNZ Unexecuted instantiation: ihevce_hle_interface.c:CLZNZ Unexecuted instantiation: ihevce_hle_q_func.c:CLZNZ Unexecuted instantiation: ihevce_lap_interface.c:CLZNZ Unexecuted instantiation: ihevce_memory_init.c:CLZNZ Unexecuted instantiation: ihevce_rc_interface.c:CLZNZ Unexecuted instantiation: ihevce_tile_interface.c:CLZNZ Unexecuted instantiation: hme_interface.c:CLZNZ Unexecuted instantiation: hme_refine.c:CLZNZ Unexecuted instantiation: hme_search_algo.c:CLZNZ Unexecuted instantiation: hme_subpel.c:CLZNZ Unexecuted instantiation: hme_utils.c:CLZNZ Unexecuted instantiation: ihevce_bitstream.c:CLZNZ Unexecuted instantiation: ihevce_cabac_cu_pu.c:CLZNZ Unexecuted instantiation: ihevce_cabac_tu.c:CLZNZ Unexecuted instantiation: ihevce_coarse_me_pass.c:CLZNZ Unexecuted instantiation: ihevce_common_utils.c:CLZNZ Unexecuted instantiation: ihevce_decomp_pre_intra_pass.c:CLZNZ Unexecuted instantiation: ihevce_dep_mngr.c:CLZNZ Unexecuted instantiation: ihevce_enc_loop_pass.c:CLZNZ Unexecuted instantiation: ihevce_enc_loop_utils.c:CLZNZ Unexecuted instantiation: ihevce_enc_sbh_funcs.c:CLZNZ Unexecuted instantiation: ihevce_enc_subpel_gen.c:CLZNZ Unexecuted instantiation: ihevce_encode_header.c:CLZNZ Unexecuted instantiation: ihevce_encode_header_sei_vui.c:CLZNZ Unexecuted instantiation: ihevce_frame_process.c:CLZNZ Unexecuted instantiation: ihevce_function_selector.c:CLZNZ Unexecuted instantiation: ihevce_had_satd.c:CLZNZ Unexecuted instantiation: ihevce_inter_pred.c:CLZNZ Unexecuted instantiation: ihevce_ipe_pass.c:CLZNZ Unexecuted instantiation: ihevce_me_instr_set_router.c:CLZNZ Unexecuted instantiation: ihevce_me_pass.c:CLZNZ Unexecuted instantiation: ihevce_multi_thrd_funcs.c:CLZNZ Unexecuted instantiation: ihevce_mv_pred.c:CLZNZ Unexecuted instantiation: ihevce_mv_pred_merge.c:CLZNZ Unexecuted instantiation: ihevce_nbr_avail.c:CLZNZ Unexecuted instantiation: ihevce_recur_bracketing.c:CLZNZ Unexecuted instantiation: ihevce_sao.c:CLZNZ Unexecuted instantiation: ihevce_stasino_helpers.c:CLZNZ Unexecuted instantiation: ihevce_sub_pic_rc.c:CLZNZ Unexecuted instantiation: ihevce_tu_tree_selector.c:CLZNZ Unexecuted instantiation: ihevc_hbd_deblk_edge_filter.c:CLZNZ Unexecuted instantiation: ihevc_quant_iquant_ssd.c:CLZNZ Unexecuted instantiation: ihevc_resi_trans.c:CLZNZ Unexecuted instantiation: hme_coarse.c:CLZNZ Unexecuted instantiation: hme_common_utils.c:CLZNZ Unexecuted instantiation: hme_err_compute.c:CLZNZ Unexecuted instantiation: hme_fullpel.c:CLZNZ Unexecuted instantiation: hme_function_selector.c:CLZNZ Unexecuted instantiation: hme_globals.c:CLZNZ Unexecuted instantiation: ihevce_bs_compute_ctb.c:CLZNZ Unexecuted instantiation: ihevce_cabac.c:CLZNZ Unexecuted instantiation: ihevce_cabac_rdo.c:CLZNZ Unexecuted instantiation: ihevce_deblk.c:CLZNZ Unexecuted instantiation: ihevce_enc_cu_recursion.c:CLZNZ Unexecuted instantiation: ihevce_enc_loop_inter_mode_sifter.c:CLZNZ |
87 | | |
88 | | static INLINE UWORD32 CTZ(UWORD32 u4_word) |
89 | 121M | { |
90 | 121M | if(0 == u4_word) |
91 | 4.63M | return 31; |
92 | 116M | else |
93 | 116M | { |
94 | 116M | unsigned int index; |
95 | 116M | index = __builtin_ctz(u4_word); |
96 | 116M | return (UWORD32)index; |
97 | 116M | } |
98 | 121M | } Unexecuted instantiation: ihevcd_api.c:CTZ Unexecuted instantiation: ihevcd_decode.c:CTZ Unexecuted instantiation: ihevcd_nal.c:CTZ Unexecuted instantiation: ihevcd_bitstream.c:CTZ Unexecuted instantiation: ihevcd_parse_headers.c:CTZ Unexecuted instantiation: ihevcd_parse_slice_header.c:CTZ Unexecuted instantiation: ihevcd_parse_slice.c:CTZ ihevcd_parse_residual.c:CTZ Line | Count | Source | 89 | 686k | { | 90 | 686k | if(0 == u4_word) | 91 | 0 | return 31; | 92 | 686k | else | 93 | 686k | { | 94 | 686k | unsigned int index; | 95 | 686k | index = __builtin_ctz(u4_word); | 96 | 686k | return (UWORD32)index; | 97 | 686k | } | 98 | 686k | } |
Unexecuted instantiation: ihevcd_cabac.c:CTZ Unexecuted instantiation: ihevcd_intra_pred_mode_prediction.c:CTZ Unexecuted instantiation: ihevcd_process_slice.c:CTZ Unexecuted instantiation: ihevcd_utils.c:CTZ Unexecuted instantiation: ihevcd_job_queue.c:CTZ Unexecuted instantiation: ihevcd_ref_list.c:CTZ Unexecuted instantiation: ihevcd_get_mv.c:CTZ Unexecuted instantiation: ihevcd_mv_pred.c:CTZ Unexecuted instantiation: ihevcd_mv_merge.c:CTZ Unexecuted instantiation: ihevcd_iquant_itrans_recon_ctb.c:CTZ Unexecuted instantiation: ihevcd_boundary_strength.c:CTZ Line | Count | Source | 89 | 8.83M | { | 90 | 8.83M | if(0 == u4_word) | 91 | 4.63M | return 31; | 92 | 4.19M | else | 93 | 4.19M | { | 94 | 4.19M | unsigned int index; | 95 | 4.19M | index = __builtin_ctz(u4_word); | 96 | 4.19M | return (UWORD32)index; | 97 | 4.19M | } | 98 | 8.83M | } |
Unexecuted instantiation: ihevcd_inter_pred.c:CTZ Line | Count | Source | 89 | 295k | { | 90 | 295k | if(0 == u4_word) | 91 | 2.71k | return 31; | 92 | 292k | else | 93 | 292k | { | 94 | 292k | unsigned int index; | 95 | 292k | index = __builtin_ctz(u4_word); | 96 | 292k | return (UWORD32)index; | 97 | 292k | } | 98 | 295k | } |
Unexecuted instantiation: ihevcd_fmt_conv.c:CTZ Unexecuted instantiation: ihevcd_function_selector.c:CTZ Unexecuted instantiation: ihevcd_function_selector_generic.c:CTZ Unexecuted instantiation: ihevcd_function_selector_ssse3.c:CTZ Unexecuted instantiation: ihevcd_function_selector_sse42.c:CTZ Unexecuted instantiation: ihevcd_fmt_conv_ssse3_intr.c:CTZ Unexecuted instantiation: ihevcd_it_rec_dc_ssse3_intr.c:CTZ Unexecuted instantiation: ihevcd_it_rec_dc_sse42_intr.c:CTZ Unexecuted instantiation: ihevc_inter_pred_filters.c:CTZ Unexecuted instantiation: ihevc_weighted_pred.c:CTZ Unexecuted instantiation: ihevc_padding.c:CTZ Unexecuted instantiation: ihevc_deblk_edge_filter.c:CTZ Unexecuted instantiation: ihevc_common_tables.c:CTZ ihevc_intra_pred_filters.c:CTZ Line | Count | Source | 89 | 39.7M | { | 90 | 39.7M | if(0 == u4_word) | 91 | 0 | return 31; | 92 | 39.7M | else | 93 | 39.7M | { | 94 | 39.7M | unsigned int index; | 95 | 39.7M | index = __builtin_ctz(u4_word); | 96 | 39.7M | return (UWORD32)index; | 97 | 39.7M | } | 98 | 39.7M | } |
ihevc_chroma_intra_pred_filters.c:CTZ Line | Count | Source | 89 | 12.8M | { | 90 | 12.8M | if(0 == u4_word) | 91 | 0 | return 31; | 92 | 12.8M | else | 93 | 12.8M | { | 94 | 12.8M | unsigned int index; | 95 | 12.8M | index = __builtin_ctz(u4_word); | 96 | 12.8M | return (UWORD32)index; | 97 | 12.8M | } | 98 | 12.8M | } |
Unexecuted instantiation: ihevc_sao.c:CTZ Unexecuted instantiation: ihevc_trans_tables.c:CTZ Unexecuted instantiation: ihevc_recon.c:CTZ Unexecuted instantiation: ihevc_itrans.c:CTZ Unexecuted instantiation: ihevc_itrans_recon.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_32x32.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_16x16.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_8x8.c:CTZ Unexecuted instantiation: ihevc_chroma_itrans_recon.c:CTZ Unexecuted instantiation: ihevc_chroma_recon.c:CTZ Unexecuted instantiation: ihevc_chroma_itrans_recon_16x16.c:CTZ Unexecuted instantiation: ihevc_chroma_itrans_recon_8x8.c:CTZ Unexecuted instantiation: ihevc_inter_pred_filters_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_weighted_pred_ssse3_intr.c:CTZ ihevc_intra_pred_filters_ssse3_intr.c:CTZ Line | Count | Source | 89 | 218k | { | 90 | 218k | if(0 == u4_word) | 91 | 0 | return 31; | 92 | 218k | else | 93 | 218k | { | 94 | 218k | unsigned int index; | 95 | 218k | index = __builtin_ctz(u4_word); | 96 | 218k | return (UWORD32)index; | 97 | 218k | } | 98 | 218k | } |
Unexecuted instantiation: ihevc_chroma_intra_pred_filters_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_16x16_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_32x32_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_sao_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_deblk_ssse3_intr.c:CTZ Unexecuted instantiation: ihevc_inter_pred_filters_sse42_intr.c:CTZ Unexecuted instantiation: ihevc_weighted_pred_sse42_intr.c:CTZ ihevc_intra_pred_filters_sse42_intr.c:CTZ Line | Count | Source | 89 | 84.6k | { | 90 | 84.6k | if(0 == u4_word) | 91 | 0 | return 31; | 92 | 84.6k | else | 93 | 84.6k | { | 94 | 84.6k | unsigned int index; | 95 | 84.6k | index = __builtin_ctz(u4_word); | 96 | 84.6k | return (UWORD32)index; | 97 | 84.6k | } | 98 | 84.6k | } |
Unexecuted instantiation: ihevc_chroma_intra_pred_filters_sse42_intr.c:CTZ Unexecuted instantiation: ihevc_itrans_recon_sse42_intr.c:CTZ Unexecuted instantiation: ihevc_32x32_itrans_recon_sse42_intr.c:CTZ Unexecuted instantiation: ihevc_tables_x86_intr.c:CTZ Unexecuted instantiation: ihevcd_itrans_recon_dc.c:CTZ Unexecuted instantiation: ihevce_plugin.c:CTZ Unexecuted instantiation: ihevce_entropy_cod.c:CTZ Unexecuted instantiation: ihevce_entropy_interface.c:CTZ Unexecuted instantiation: ihevce_error_check.c:CTZ Unexecuted instantiation: ihevce_frame_process_utils.c:CTZ Unexecuted instantiation: ihevce_global_tables.c:CTZ Unexecuted instantiation: ihevce_hle_interface.c:CTZ Unexecuted instantiation: ihevce_hle_q_func.c:CTZ Unexecuted instantiation: ihevce_lap_interface.c:CTZ Unexecuted instantiation: ihevce_memory_init.c:CTZ Unexecuted instantiation: ihevce_rc_interface.c:CTZ Unexecuted instantiation: ihevce_tile_interface.c:CTZ Unexecuted instantiation: hme_interface.c:CTZ Unexecuted instantiation: hme_refine.c:CTZ Unexecuted instantiation: hme_search_algo.c:CTZ Unexecuted instantiation: hme_subpel.c:CTZ Unexecuted instantiation: hme_utils.c:CTZ Unexecuted instantiation: ihevce_bitstream.c:CTZ Unexecuted instantiation: ihevce_cabac_cu_pu.c:CTZ Unexecuted instantiation: ihevce_cabac_tu.c:CTZ Unexecuted instantiation: ihevce_coarse_me_pass.c:CTZ Unexecuted instantiation: ihevce_common_utils.c:CTZ Unexecuted instantiation: ihevce_decomp_pre_intra_pass.c:CTZ Unexecuted instantiation: ihevce_dep_mngr.c:CTZ Unexecuted instantiation: ihevce_enc_loop_pass.c:CTZ Unexecuted instantiation: ihevce_enc_loop_utils.c:CTZ Unexecuted instantiation: ihevce_enc_sbh_funcs.c:CTZ Unexecuted instantiation: ihevce_enc_subpel_gen.c:CTZ Unexecuted instantiation: ihevce_encode_header.c:CTZ Unexecuted instantiation: ihevce_encode_header_sei_vui.c:CTZ Unexecuted instantiation: ihevce_frame_process.c:CTZ Unexecuted instantiation: ihevce_function_selector.c:CTZ Unexecuted instantiation: ihevce_had_satd.c:CTZ Unexecuted instantiation: ihevce_inter_pred.c:CTZ Unexecuted instantiation: ihevce_ipe_pass.c:CTZ Unexecuted instantiation: ihevce_me_instr_set_router.c:CTZ Unexecuted instantiation: ihevce_me_pass.c:CTZ Unexecuted instantiation: ihevce_multi_thrd_funcs.c:CTZ Unexecuted instantiation: ihevce_mv_pred.c:CTZ Unexecuted instantiation: ihevce_mv_pred_merge.c:CTZ Unexecuted instantiation: ihevce_nbr_avail.c:CTZ ihevce_recur_bracketing.c:CTZ Line | Count | Source | 89 | 58.7M | { | 90 | 58.7M | if(0 == u4_word) | 91 | 0 | return 31; | 92 | 58.7M | else | 93 | 58.7M | { | 94 | 58.7M | unsigned int index; | 95 | 58.7M | index = __builtin_ctz(u4_word); | 96 | 58.7M | return (UWORD32)index; | 97 | 58.7M | } | 98 | 58.7M | } |
Unexecuted instantiation: ihevce_sao.c:CTZ Unexecuted instantiation: ihevce_stasino_helpers.c:CTZ Unexecuted instantiation: ihevce_sub_pic_rc.c:CTZ Unexecuted instantiation: ihevce_tu_tree_selector.c:CTZ Unexecuted instantiation: ihevc_hbd_deblk_edge_filter.c:CTZ Unexecuted instantiation: ihevc_quant_iquant_ssd.c:CTZ Unexecuted instantiation: ihevc_resi_trans.c:CTZ Unexecuted instantiation: hme_coarse.c:CTZ Unexecuted instantiation: hme_common_utils.c:CTZ Unexecuted instantiation: hme_err_compute.c:CTZ Unexecuted instantiation: hme_fullpel.c:CTZ Unexecuted instantiation: hme_function_selector.c:CTZ Unexecuted instantiation: hme_globals.c:CTZ Unexecuted instantiation: ihevce_bs_compute_ctb.c:CTZ Unexecuted instantiation: ihevce_cabac.c:CTZ Unexecuted instantiation: ihevce_cabac_rdo.c:CTZ Unexecuted instantiation: ihevce_deblk.c:CTZ Unexecuted instantiation: ihevce_enc_cu_recursion.c:CTZ Unexecuted instantiation: ihevce_enc_loop_inter_mode_sifter.c:CTZ |
99 | | |
100 | 5.10M | #define DATA_SYNC() __sync_synchronize() |
101 | | |
102 | | /** |
103 | | ****************************************************************************** |
104 | | * @brief returns postion of msb bit for 32bit input |
105 | | ****************************************************************************** |
106 | | */ |
107 | | #define GET_POS_MSB_32(r,word) \ |
108 | | { \ |
109 | | if(word) \ |
110 | | { \ |
111 | | r = 31 - __builtin_clz(word); \ |
112 | | } \ |
113 | | else \ |
114 | | { \ |
115 | | r = -1; \ |
116 | | } \ |
117 | | } |
118 | | |
119 | | /** |
120 | | ****************************************************************************** |
121 | | * @brief returns postion of msb bit for 64bit input |
122 | | ****************************************************************************** |
123 | | */ |
124 | | #define GET_POS_MSB_64(r,word) \ |
125 | | { \ |
126 | | if(word) \ |
127 | | { \ |
128 | | r = 63 - __builtin_clzll(word); \ |
129 | | } \ |
130 | | else \ |
131 | | { \ |
132 | | r = -1; \ |
133 | | } \ |
134 | | } |
135 | | |
136 | | |
137 | | /** |
138 | | ****************************************************************************** |
139 | | * @brief returns max number of bits required to represent input word (max 32bits) |
140 | | ****************************************************************************** |
141 | | */ |
142 | 2.38G | #define GETRANGE(r,word) \ |
143 | 2.38G | { \ |
144 | 2.38G | if(word) \ |
145 | 2.38G | { \ |
146 | 2.09G | r = 32 - __builtin_clz(word); \ |
147 | 2.09G | } \ |
148 | 2.38G | else \ |
149 | 2.38G | { \ |
150 | 286M | r = 1; \ |
151 | 286M | } \ |
152 | 2.38G | } |
153 | | |
154 | | /** |
155 | | ***************************************************************************************************** |
156 | | * @brief returns max number of bits required to represent input unsigned long long word (max 64bits) |
157 | | ***************************************************************************************************** |
158 | | */ |
159 | 0 | #define GETRANGE64(r,llword) \ |
160 | 0 | { \ |
161 | 0 | if(llword) \ |
162 | 0 | { \ |
163 | 0 | r = 64 - __builtin_clzll(llword); \ |
164 | 0 | } \ |
165 | 0 | else \ |
166 | 0 | { \ |
167 | 0 | r = 1; \ |
168 | 0 | } \ |
169 | 0 | } |
170 | | |
171 | | |
172 | | #define GCC_ENABLE 0 |
173 | | |
174 | | #if GCC_ENABLE |
175 | | #define _mm256_loadu2_m128i(X,Y) _mm256_insertf128_si256(_mm256_castsi128_si256(_mm_loadu_si128((Y))), _mm_loadu_si128((X)),1); |
176 | | |
177 | | #define _mm256_storeu2_m128i(X,Y,Z) {_mm_storeu_si128 ((Y), _mm256_castsi256_si128((Z)));_mm_storeu_si128 ((X), _mm256_extracti128_si256((Z),1));} |
178 | | |
179 | | #define _mm256_set_m128i(X,Y) _mm256_insertf128_si256(_mm256_castsi128_si256((Y)),(X),1); |
180 | | |
181 | | #endif |
182 | | |
183 | | #define PREFETCH_ENABLE 1 |
184 | | |
185 | | #if PREFETCH_ENABLE |
186 | 41.3M | #define PREFETCH(ptr, type) _mm_prefetch(ptr, type); |
187 | | #else |
188 | | #define PREFETCH(ptr, type) |
189 | | #endif |
190 | | |
191 | | #define MEM_ALIGN8 __attribute__ ((aligned (8))) |
192 | 52.4k | #define MEM_ALIGN16 __attribute__ ((aligned (16))) |
193 | | #define MEM_ALIGN32 __attribute__ ((aligned (32))) |
194 | | |
195 | | #endif /* _IHEVC_PLATFORM_MACROS_H_ */ |