Coverage Report

Created: 2025-08-29 07:08

/src/libavif/ext/aom/aom_mem/aom_mem.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_AOM_MEM_AOM_MEM_H_
13
#define AOM_AOM_MEM_AOM_MEM_H_
14
15
#include "aom/aom_integer.h"
16
#include "config/aom_config.h"
17
18
#if defined(__uClinux__)
19
#include <lddk.h>
20
#endif
21
22
#if defined(__cplusplus)
23
extern "C" {
24
#endif
25
26
#ifndef AOM_MAX_ALLOCABLE_MEMORY
27
#if SIZE_MAX > (1ULL << 32)
28
199M
#define AOM_MAX_ALLOCABLE_MEMORY 8589934592  // 8 GB
29
#else
30
// For 32-bit targets keep this below INT_MAX to avoid valgrind warnings.
31
#define AOM_MAX_ALLOCABLE_MEMORY ((1ULL << 31) - (1 << 16))
32
#endif
33
#endif
34
35
void *aom_memalign(size_t align, size_t size);
36
void *aom_malloc(size_t size);
37
void *aom_calloc(size_t num, size_t size);
38
void aom_free(void *memblk);
39
40
149M
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
149M
  size_t i;
42
149M
  uint16_t *dest16 = (uint16_t *)dest;
43
15.8G
  for (i = 0; i < length; i++) *dest16++ = val;
44
149M
  return dest;
45
149M
}
Unexecuted instantiation: aom_image.c:aom_memset16
Unexecuted instantiation: aom_mem.c:aom_memset16
Unexecuted instantiation: av1_dx_iface.c:aom_memset16
decodeframe.c:aom_memset16
Line
Count
Source
40
835k
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
835k
  size_t i;
42
835k
  uint16_t *dest16 = (uint16_t *)dest;
43
7.43M
  for (i = 0; i < length; i++) *dest16++ = val;
44
835k
  return dest;
45
835k
}
Unexecuted instantiation: decodemv.c:aom_memset16
Unexecuted instantiation: decoder.c:aom_memset16
Unexecuted instantiation: decodetxb.c:aom_memset16
Unexecuted instantiation: detokenize.c:aom_memset16
Unexecuted instantiation: grain_synthesis.c:aom_memset16
Unexecuted instantiation: obu.c:aom_memset16
Unexecuted instantiation: av1_cx_iface.c:aom_memset16
Unexecuted instantiation: allintra_vis.c:aom_memset16
Unexecuted instantiation: av1_quantize.c:aom_memset16
Unexecuted instantiation: bitstream.c:aom_memset16
Unexecuted instantiation: context_tree.c:aom_memset16
Unexecuted instantiation: encodeframe.c:aom_memset16
Unexecuted instantiation: encodeframe_utils.c:aom_memset16
Unexecuted instantiation: encodemb.c:aom_memset16
Unexecuted instantiation: encodemv.c:aom_memset16
Unexecuted instantiation: encoder.c:aom_memset16
Unexecuted instantiation: encoder_utils.c:aom_memset16
Unexecuted instantiation: encodetxb.c:aom_memset16
Unexecuted instantiation: ethread.c:aom_memset16
Unexecuted instantiation: external_partition.c:aom_memset16
Unexecuted instantiation: firstpass.c:aom_memset16
Unexecuted instantiation: global_motion_facade.c:aom_memset16
Unexecuted instantiation: hash.c:aom_memset16
Unexecuted instantiation: hash_motion.c:aom_memset16
Unexecuted instantiation: hybrid_fwd_txfm.c:aom_memset16
Unexecuted instantiation: level.c:aom_memset16
Unexecuted instantiation: lookahead.c:aom_memset16
Unexecuted instantiation: mcomp.c:aom_memset16
Unexecuted instantiation: mv_prec.c:aom_memset16
Unexecuted instantiation: palette.c:aom_memset16
Unexecuted instantiation: partition_search.c:aom_memset16
Unexecuted instantiation: partition_strategy.c:aom_memset16
Unexecuted instantiation: pass2_strategy.c:aom_memset16
Unexecuted instantiation: pickcdef.c:aom_memset16
Unexecuted instantiation: picklpf.c:aom_memset16
Unexecuted instantiation: pickrst.c:aom_memset16
Unexecuted instantiation: ratectrl.c:aom_memset16
Unexecuted instantiation: rd.c:aom_memset16
Unexecuted instantiation: rdopt.c:aom_memset16
Unexecuted instantiation: nonrd_pickmode.c:aom_memset16
Unexecuted instantiation: nonrd_opt.c:aom_memset16
Unexecuted instantiation: reconinter_enc.c:aom_memset16
Unexecuted instantiation: segmentation.c:aom_memset16
Unexecuted instantiation: speed_features.c:aom_memset16
Unexecuted instantiation: superres_scale.c:aom_memset16
Unexecuted instantiation: svc_layercontext.c:aom_memset16
Unexecuted instantiation: temporal_filter.c:aom_memset16
Unexecuted instantiation: tokenize.c:aom_memset16
Unexecuted instantiation: tpl_model.c:aom_memset16
Unexecuted instantiation: tx_search.c:aom_memset16
Unexecuted instantiation: txb_rdopt.c:aom_memset16
Unexecuted instantiation: intra_mode_search.c:aom_memset16
Unexecuted instantiation: var_based_part.c:aom_memset16
Unexecuted instantiation: av1_noise_estimate.c:aom_memset16
Unexecuted instantiation: dwt.c:aom_memset16
Unexecuted instantiation: encodetxb_sse2.c:aom_memset16
Unexecuted instantiation: reconinter_enc_sse2.c:aom_memset16
Unexecuted instantiation: aom_dsp_rtcd.c:aom_memset16
Unexecuted instantiation: av1_rtcd.c:aom_memset16
Unexecuted instantiation: aom_convolve.c:aom_memset16
Unexecuted instantiation: blend_a64_hmask.c:aom_memset16
Unexecuted instantiation: blend_a64_mask.c:aom_memset16
Unexecuted instantiation: blend_a64_vmask.c:aom_memset16
intrapred.c:aom_memset16
Line
Count
Source
40
4.37M
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
4.37M
  size_t i;
42
4.37M
  uint16_t *dest16 = (uint16_t *)dest;
43
176M
  for (i = 0; i < length; i++) *dest16++ = val;
44
4.37M
  return dest;
45
4.37M
}
Unexecuted instantiation: avg.c:aom_memset16
Unexecuted instantiation: psnr.c:aom_memset16
Unexecuted instantiation: quantize.c:aom_memset16
Unexecuted instantiation: sad.c:aom_memset16
Unexecuted instantiation: sad_av1.c:aom_memset16
Unexecuted instantiation: sse.c:aom_memset16
Unexecuted instantiation: variance.c:aom_memset16
Unexecuted instantiation: pyramid.c:aom_memset16
Unexecuted instantiation: corner_detect.c:aom_memset16
Unexecuted instantiation: corner_match.c:aom_memset16
Unexecuted instantiation: disflow.c:aom_memset16
Unexecuted instantiation: grain_table.c:aom_memset16
Unexecuted instantiation: noise_model.c:aom_memset16
Unexecuted instantiation: noise_util.c:aom_memset16
Unexecuted instantiation: ransac.c:aom_memset16
Unexecuted instantiation: aom_convolve_copy_sse2.c:aom_memset16
Unexecuted instantiation: intrapred_sse2.c:aom_memset16
Unexecuted instantiation: loopfilter_sse2.c:aom_memset16
Unexecuted instantiation: highbd_convolve_sse2.c:aom_memset16
Unexecuted instantiation: highbd_loopfilter_sse2.c:aom_memset16
Unexecuted instantiation: avg_intrin_sse2.c:aom_memset16
Unexecuted instantiation: fft_sse2.c:aom_memset16
Unexecuted instantiation: fwd_txfm_sse2.c:aom_memset16
Unexecuted instantiation: quantize_sse2.c:aom_memset16
Unexecuted instantiation: adaptive_quantize_sse2.c:aom_memset16
Unexecuted instantiation: blk_sse_sum_sse2.c:aom_memset16
Unexecuted instantiation: sum_squares_sse2.c:aom_memset16
Unexecuted instantiation: variance_sse2.c:aom_memset16
Unexecuted instantiation: highbd_adaptive_quantize_sse2.c:aom_memset16
Unexecuted instantiation: highbd_quantize_intrin_sse2.c:aom_memset16
Unexecuted instantiation: highbd_subtract_sse2.c:aom_memset16
Unexecuted instantiation: highbd_variance_sse2.c:aom_memset16
Unexecuted instantiation: aom_subpixel_8t_intrin_ssse3.c:aom_memset16
Unexecuted instantiation: intrapred_ssse3.c:aom_memset16
Unexecuted instantiation: highbd_convolve_ssse3.c:aom_memset16
Unexecuted instantiation: masked_sad_intrin_ssse3.c:aom_memset16
Unexecuted instantiation: masked_variance_intrin_ssse3.c:aom_memset16
Unexecuted instantiation: quantize_ssse3.c:aom_memset16
Unexecuted instantiation: variance_ssse3.c:aom_memset16
Unexecuted instantiation: blend_a64_hmask_sse4.c:aom_memset16
Unexecuted instantiation: blend_a64_mask_sse4.c:aom_memset16
Unexecuted instantiation: blend_a64_vmask_sse4.c:aom_memset16
Unexecuted instantiation: intrapred_sse4.c:aom_memset16
Unexecuted instantiation: corner_match_sse4.c:aom_memset16
Unexecuted instantiation: disflow_sse4.c:aom_memset16
Unexecuted instantiation: avg_intrin_sse4.c:aom_memset16
Unexecuted instantiation: sse_sse4.c:aom_memset16
Unexecuted instantiation: obmc_sad_sse4.c:aom_memset16
Unexecuted instantiation: obmc_variance_sse4.c:aom_memset16
Unexecuted instantiation: highbd_variance_sse4.c:aom_memset16
Unexecuted instantiation: aom_quantize_avx.c:aom_memset16
Unexecuted instantiation: aom_convolve_copy_avx2.c:aom_memset16
Unexecuted instantiation: aom_subpixel_8t_intrin_avx2.c:aom_memset16
Unexecuted instantiation: intrapred_avx2.c:aom_memset16
Unexecuted instantiation: loopfilter_avx2.c:aom_memset16
Unexecuted instantiation: blend_a64_mask_avx2.c:aom_memset16
Unexecuted instantiation: highbd_convolve_avx2.c:aom_memset16
Unexecuted instantiation: highbd_loopfilter_avx2.c:aom_memset16
Unexecuted instantiation: corner_match_avx2.c:aom_memset16
Unexecuted instantiation: disflow_avx2.c:aom_memset16
Unexecuted instantiation: avg_intrin_avx2.c:aom_memset16
Unexecuted instantiation: fft_avx2.c:aom_memset16
Unexecuted instantiation: masked_sad_intrin_avx2.c:aom_memset16
Unexecuted instantiation: subtract_avx2.c:aom_memset16
Unexecuted instantiation: adaptive_quantize_avx2.c:aom_memset16
Unexecuted instantiation: quantize_avx2.c:aom_memset16
Unexecuted instantiation: sad4d_avx2.c:aom_memset16
Unexecuted instantiation: sad_avx2.c:aom_memset16
Unexecuted instantiation: sad_impl_avx2.c:aom_memset16
Unexecuted instantiation: variance_avx2.c:aom_memset16
Unexecuted instantiation: sse_avx2.c:aom_memset16
Unexecuted instantiation: variance_impl_avx2.c:aom_memset16
Unexecuted instantiation: obmc_sad_avx2.c:aom_memset16
Unexecuted instantiation: obmc_variance_avx2.c:aom_memset16
Unexecuted instantiation: blk_sse_sum_avx2.c:aom_memset16
Unexecuted instantiation: sum_squares_avx2.c:aom_memset16
Unexecuted instantiation: highbd_adaptive_quantize_avx2.c:aom_memset16
Unexecuted instantiation: highbd_quantize_intrin_avx2.c:aom_memset16
Unexecuted instantiation: highbd_sad_avx2.c:aom_memset16
Unexecuted instantiation: highbd_variance_avx2.c:aom_memset16
Unexecuted instantiation: aom_thread.c:aom_memset16
Unexecuted instantiation: yv12config.c:aom_memset16
yv12extend.c:aom_memset16
Line
Count
Source
40
5.58M
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
5.58M
  size_t i;
42
5.58M
  uint16_t *dest16 = (uint16_t *)dest;
43
752M
  for (i = 0; i < length; i++) *dest16++ = val;
44
5.58M
  return dest;
45
5.58M
}
Unexecuted instantiation: alloccommon.c:aom_memset16
Unexecuted instantiation: av1_inv_txfm2d.c:aom_memset16
Unexecuted instantiation: av1_loopfilter.c:aom_memset16
Unexecuted instantiation: av1_txfm.c:aom_memset16
Unexecuted instantiation: blockd.c:aom_memset16
Unexecuted instantiation: cdef.c:aom_memset16
Unexecuted instantiation: cdef_block.c:aom_memset16
Unexecuted instantiation: cfl.c:aom_memset16
Unexecuted instantiation: convolve.c:aom_memset16
Unexecuted instantiation: debugmodes.c:aom_memset16
Unexecuted instantiation: entropy.c:aom_memset16
Unexecuted instantiation: entropymode.c:aom_memset16
Unexecuted instantiation: entropymv.c:aom_memset16
Unexecuted instantiation: frame_buffers.c:aom_memset16
Unexecuted instantiation: idct.c:aom_memset16
Unexecuted instantiation: mvref_common.c:aom_memset16
Unexecuted instantiation: pred_common.c:aom_memset16
Unexecuted instantiation: quant_common.c:aom_memset16
Unexecuted instantiation: reconinter.c:aom_memset16
reconintra.c:aom_memset16
Line
Count
Source
40
132M
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
132M
  size_t i;
42
132M
  uint16_t *dest16 = (uint16_t *)dest;
43
14.6G
  for (i = 0; i < length; i++) *dest16++ = val;
44
132M
  return dest;
45
132M
}
resize.c:aom_memset16
Line
Count
Source
40
976k
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
976k
  size_t i;
42
976k
  uint16_t *dest16 = (uint16_t *)dest;
43
5.85M
  for (i = 0; i < length; i++) *dest16++ = val;
44
976k
  return dest;
45
976k
}
restoration.c:aom_memset16
Line
Count
Source
40
155k
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
155k
  size_t i;
42
155k
  uint16_t *dest16 = (uint16_t *)dest;
43
777k
  for (i = 0; i < length; i++) *dest16++ = val;
44
155k
  return dest;
45
155k
}
Unexecuted instantiation: scale.c:aom_memset16
Unexecuted instantiation: scan.c:aom_memset16
Unexecuted instantiation: seg_common.c:aom_memset16
Unexecuted instantiation: thread_common.c:aom_memset16
Unexecuted instantiation: tile_common.c:aom_memset16
Unexecuted instantiation: txb_common.c:aom_memset16
Unexecuted instantiation: warped_motion.c:aom_memset16
Unexecuted instantiation: aq_complexity.c:aom_memset16
Unexecuted instantiation: aq_cyclicrefresh.c:aom_memset16
Unexecuted instantiation: aq_variance.c:aom_memset16
Unexecuted instantiation: av1_fwd_txfm2d.c:aom_memset16
Unexecuted instantiation: cnn.c:aom_memset16
Unexecuted instantiation: compound_type.c:aom_memset16
Unexecuted instantiation: cost.c:aom_memset16
Unexecuted instantiation: encode_strategy.c:aom_memset16
extend.c:aom_memset16
Line
Count
Source
40
4.60M
static inline void *aom_memset16(void *dest, int val, size_t length) {
41
4.60M
  size_t i;
42
4.60M
  uint16_t *dest16 = (uint16_t *)dest;
43
313M
  for (i = 0; i < length; i++) *dest16++ = val;
44
4.60M
  return dest;
45
4.60M
}
Unexecuted instantiation: global_motion.c:aom_memset16
Unexecuted instantiation: gop_structure.c:aom_memset16
Unexecuted instantiation: interp_search.c:aom_memset16
Unexecuted instantiation: ml.c:aom_memset16
Unexecuted instantiation: motion_search_facade.c:aom_memset16
Unexecuted instantiation: cfl_sse2.c:aom_memset16
Unexecuted instantiation: convolve_2d_sse2.c:aom_memset16
Unexecuted instantiation: convolve_sse2.c:aom_memset16
Unexecuted instantiation: jnt_convolve_sse2.c:aom_memset16
Unexecuted instantiation: resize_sse2.c:aom_memset16
Unexecuted instantiation: wiener_convolve_sse2.c:aom_memset16
Unexecuted instantiation: av1_k_means_sse2.c:aom_memset16
Unexecuted instantiation: av1_quantize_sse2.c:aom_memset16
Unexecuted instantiation: error_intrin_sse2.c:aom_memset16
Unexecuted instantiation: temporal_filter_sse2.c:aom_memset16
Unexecuted instantiation: wedge_utils_sse2.c:aom_memset16
Unexecuted instantiation: highbd_block_error_intrin_sse2.c:aom_memset16
Unexecuted instantiation: highbd_temporal_filter_sse2.c:aom_memset16
Unexecuted instantiation: ml_sse3.c:aom_memset16
Unexecuted instantiation: av1_inv_txfm_ssse3.c:aom_memset16
Unexecuted instantiation: cfl_ssse3.c:aom_memset16
Unexecuted instantiation: jnt_convolve_ssse3.c:aom_memset16
Unexecuted instantiation: resize_ssse3.c:aom_memset16
Unexecuted instantiation: highbd_convolve_2d_ssse3.c:aom_memset16
Unexecuted instantiation: highbd_wiener_convolve_ssse3.c:aom_memset16
Unexecuted instantiation: reconinter_ssse3.c:aom_memset16
Unexecuted instantiation: av1_convolve_horiz_rs_sse4.c:aom_memset16
Unexecuted instantiation: av1_convolve_scale_sse4.c:aom_memset16
Unexecuted instantiation: av1_txfm_sse4.c:aom_memset16
Unexecuted instantiation: cdef_block_sse4.c:aom_memset16
Unexecuted instantiation: filterintra_sse4.c:aom_memset16
Unexecuted instantiation: highbd_inv_txfm_sse4.c:aom_memset16
Unexecuted instantiation: intra_edge_sse4.c:aom_memset16
Unexecuted instantiation: reconinter_sse4.c:aom_memset16
Unexecuted instantiation: selfguided_sse4.c:aom_memset16
Unexecuted instantiation: warp_plane_sse4.c:aom_memset16
Unexecuted instantiation: highbd_convolve_2d_sse4.c:aom_memset16
Unexecuted instantiation: highbd_jnt_convolve_sse4.c:aom_memset16
Unexecuted instantiation: highbd_warp_plane_sse4.c:aom_memset16
Unexecuted instantiation: av1_fwd_txfm2d_sse4.c:aom_memset16
Unexecuted instantiation: encodetxb_sse4.c:aom_memset16
Unexecuted instantiation: highbd_fwd_txfm_sse4.c:aom_memset16
Unexecuted instantiation: rdopt_sse4.c:aom_memset16
Unexecuted instantiation: pickrst_sse4.c:aom_memset16
Unexecuted instantiation: av1_highbd_quantize_sse4.c:aom_memset16
Unexecuted instantiation: hash_sse42.c:aom_memset16
Unexecuted instantiation: av1_inv_txfm_avx2.c:aom_memset16
Unexecuted instantiation: cdef_block_avx2.c:aom_memset16
Unexecuted instantiation: cfl_avx2.c:aom_memset16
Unexecuted instantiation: convolve_2d_avx2.c:aom_memset16
Unexecuted instantiation: convolve_avx2.c:aom_memset16
Unexecuted instantiation: highbd_inv_txfm_avx2.c:aom_memset16
Unexecuted instantiation: jnt_convolve_avx2.c:aom_memset16
Unexecuted instantiation: reconinter_avx2.c:aom_memset16
Unexecuted instantiation: resize_avx2.c:aom_memset16
Unexecuted instantiation: selfguided_avx2.c:aom_memset16
Unexecuted instantiation: warp_plane_avx2.c:aom_memset16
Unexecuted instantiation: wiener_convolve_avx2.c:aom_memset16
Unexecuted instantiation: highbd_convolve_2d_avx2.c:aom_memset16
Unexecuted instantiation: highbd_jnt_convolve_avx2.c:aom_memset16
Unexecuted instantiation: highbd_wiener_convolve_avx2.c:aom_memset16
Unexecuted instantiation: highbd_warp_affine_avx2.c:aom_memset16
Unexecuted instantiation: av1_quantize_avx2.c:aom_memset16
Unexecuted instantiation: error_intrin_avx2.c:aom_memset16
Unexecuted instantiation: av1_fwd_txfm2d_avx2.c:aom_memset16
Unexecuted instantiation: highbd_fwd_txfm_avx2.c:aom_memset16
Unexecuted instantiation: wedge_utils_avx2.c:aom_memset16
Unexecuted instantiation: encodetxb_avx2.c:aom_memset16
Unexecuted instantiation: rdopt_avx2.c:aom_memset16
Unexecuted instantiation: av1_k_means_avx2.c:aom_memset16
Unexecuted instantiation: temporal_filter_avx2.c:aom_memset16
Unexecuted instantiation: pickrst_avx2.c:aom_memset16
Unexecuted instantiation: cnn_avx2.c:aom_memset16
Unexecuted instantiation: ml_avx2.c:aom_memset16
Unexecuted instantiation: av1_highbd_quantize_avx2.c:aom_memset16
Unexecuted instantiation: highbd_block_error_intrin_avx2.c:aom_memset16
Unexecuted instantiation: highbd_temporal_filter_avx2.c:aom_memset16
Unexecuted instantiation: blk_sse_sum.c:aom_memset16
Unexecuted instantiation: fft.c:aom_memset16
Unexecuted instantiation: sum_squares.c:aom_memset16
Unexecuted instantiation: highbd_intrapred_sse2.c:aom_memset16
Unexecuted instantiation: variance_impl_ssse3.c:aom_memset16
Unexecuted instantiation: av1_inv_txfm1d.c:aom_memset16
Unexecuted instantiation: av1_fwd_txfm1d.c:aom_memset16
Unexecuted instantiation: av1_fwd_txfm_sse2.c:aom_memset16
Unexecuted instantiation: av1_fwd_txfm1d_sse4.c:aom_memset16
46
47
/*returns an addr aligned to the byte boundary specified by align*/
48
#define aom_align_addr(addr, align) \
49
136M
  (void *)(((uintptr_t)(addr) + ((align)-1)) & ~(uintptr_t)((align)-1))
50
51
#include <string.h>
52
53
#ifdef AOM_MEM_PLTFRM
54
#include AOM_MEM_PLTFRM
55
#endif
56
57
#if CONFIG_DEBUG
58
#define AOM_CHECK_MEM_ERROR(error_info, lval, expr)                         \
59
  do {                                                                      \
60
    lval = (expr);                                                          \
61
    if (!lval)                                                              \
62
      aom_internal_error(error_info, AOM_CODEC_MEM_ERROR,                   \
63
                         "Failed to allocate " #lval " at %s:%d", __FILE__, \
64
                         __LINE__);                                         \
65
  } while (0)
66
#else
67
#define AOM_CHECK_MEM_ERROR(error_info, lval, expr)       \
68
105M
  do {                                                    \
69
105M
    lval = (expr);                                        \
70
105M
    if (!lval)                                            \
71
105M
      aom_internal_error(error_info, AOM_CODEC_MEM_ERROR, \
72
0
                         "Failed to allocate " #lval);    \
73
105M
  } while (0)
74
#endif
75
76
#if defined(__cplusplus)
77
}
78
#endif
79
80
#endif  // AOM_AOM_MEM_AOM_MEM_H_