Coverage Report

Created: 2025-06-16 07:00

/src/libjxl/lib/jxl/base/bits.h
Line
Count
Source (jump to first uncovered line)
1
// Copyright (c) the JPEG XL Project Authors. All rights reserved.
2
//
3
// Use of this source code is governed by a BSD-style
4
// license that can be found in the LICENSE file.
5
6
#ifndef LIB_JXL_BASE_BITS_H_
7
#define LIB_JXL_BASE_BITS_H_
8
9
// Specialized instructions for processing register-sized bit arrays.
10
11
#include "lib/jxl/base/compiler_specific.h"
12
#include "lib/jxl/base/status.h"
13
14
#if JXL_COMPILER_MSVC
15
#include <intrin.h>
16
#endif
17
18
#include <stddef.h>
19
#include <stdint.h>
20
21
namespace jxl {
22
23
// Empty struct used as a size tag type.
24
template <size_t N>
25
struct SizeTag {};
26
27
template <typename T>
28
0
constexpr bool IsSigned() {
29
0
  // TODO(eustas): remove dupes
30
0
  return static_cast<T>(0) > static_cast<T>(-1);
31
0
}
Unexecuted instantiation: bool jxl::IsSigned<unsigned int>()
Unexecuted instantiation: bool jxl::IsSigned<unsigned long>()
32
33
// Undefined results for x == 0.
34
static JXL_INLINE JXL_MAYBE_UNUSED size_t
35
78.3M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
78.3M
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
78.3M
  return static_cast<size_t>(__builtin_clz(x));
43
78.3M
#endif
44
78.3M
}
Unexecuted instantiation: encode.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_fields.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_icc_codec.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
enc_ans.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
59.1M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
59.1M
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
59.1M
  return static_cast<size_t>(__builtin_clz(x));
43
59.1M
#endif
44
59.1M
}
Unexecuted instantiation: enc_cluster.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_context_map.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
enc_lz77.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
2.58M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
2.58M
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
2.58M
  return static_cast<size_t>(__builtin_clz(x));
43
2.58M
#endif
44
2.58M
}
Unexecuted instantiation: enc_fast_lossless.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_frame.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
enc_modular.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
1.29M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
1.29M
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
1.29M
  return static_cast<size_t>(__builtin_clz(x));
43
1.29M
#endif
44
1.29M
}
Unexecuted instantiation: enc_patch_dictionary.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_dot_dictionary.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_detect_dots.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_debug_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_quant_weights.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_coeff_order.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_toc.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_xyb.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_image_bundle.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_external_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_heuristics.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_butteraugli_comparator.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_cache.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_group.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_progressive_split.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_splines.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_ac_strategy.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_entropy_coder.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: jxl_cms.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_jpeg_data.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_jpeg_data_reader.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_jpeg_huffman_decode.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
enc_encoding.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
5.29M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
5.29M
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
5.29M
  return static_cast<size_t>(__builtin_clz(x));
43
5.29M
#endif
44
5.29M
}
enc_ma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
223k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
223k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
223k
  return static_cast<size_t>(__builtin_clz(x));
43
223k
#endif
44
223k
}
Unexecuted instantiation: enc_transform.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_rct.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_palette.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_squeeze.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: ac_strategy.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: chroma_from_luma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
coeff_order.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
102k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
102k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
102k
  return static_cast<size_t>(__builtin_clz(x));
43
102k
#endif
44
102k
}
Unexecuted instantiation: color_encoding_internal.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: compressed_dc.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
dec_ans.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
27.6k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
27.6k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
27.6k
  return static_cast<size_t>(__builtin_clz(x));
43
27.6k
#endif
44
27.6k
}
dec_cache.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
52.3k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
52.3k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
52.3k
  return static_cast<size_t>(__builtin_clz(x));
43
52.3k
#endif
44
52.3k
}
Unexecuted instantiation: blending.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_context_map.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_external_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
dec_frame.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
1.69k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
1.69k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
1.69k
  return static_cast<size_t>(__builtin_clz(x));
43
1.69k
#endif
44
1.69k
}
Unexecuted instantiation: dec_group.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_huffman.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
dec_modular.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
6.97k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
6.97k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
6.97k
  return static_cast<size_t>(__builtin_clz(x));
43
6.97k
#endif
44
6.97k
}
Unexecuted instantiation: dec_noise.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_patch_dictionary.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_xyb.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: decode.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: entropy_coder.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: epf.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
fields.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
5.88k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
5.88k
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
5.88k
  return static_cast<size_t>(__builtin_clz(x));
43
5.88k
#endif
44
5.88k
}
Unexecuted instantiation: frame_header.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: headers.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: icc_codec.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: image_bundle.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: image_metadata.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: loop_filter.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: luminance.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_ma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
encoding.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
35
9.61M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
36
9.61M
  JXL_DASSERT(x != 0);
37
#if JXL_COMPILER_MSVC
38
  unsigned long index;
39
  _BitScanReverse(&index, x);
40
  return 31 - index;
41
#else
42
9.61M
  return static_cast<size_t>(__builtin_clz(x));
43
9.61M
#endif
44
9.61M
}
Unexecuted instantiation: modular_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: squeeze.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: squeeze_params.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: transform.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: rct.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: palette.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: passes_state.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: quant_weights.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: quantizer.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: render_pipeline.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: low_memory_render_pipeline.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: simple_render_pipeline.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_blending.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: render_pipeline_stage.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_chroma_upsampling.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_cms.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_epf.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_from_linear.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_gaborish.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_noise.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_patches.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_splines.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_spot.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_to_linear.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_tone_mapping.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_upsampling.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_write.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_xyb.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_ycbcr.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: splines.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: toc.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: decode_to_jpeg.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_jpeg_data.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_jpeg_data_writer.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: jpeg_data.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
45
static JXL_INLINE JXL_MAYBE_UNUSED size_t
46
96.4M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
96.4M
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
96.4M
  return static_cast<size_t>(__builtin_clzll(x));
68
96.4M
#endif
69
96.4M
}
Unexecuted instantiation: encode.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_fields.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_icc_codec.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_ans.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
514k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
514k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
514k
  return static_cast<size_t>(__builtin_clzll(x));
68
514k
#endif
69
514k
}
Unexecuted instantiation: enc_cluster.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_context_map.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
1.01k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
1.01k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
1.01k
  return static_cast<size_t>(__builtin_clzll(x));
68
1.01k
#endif
69
1.01k
}
enc_lz77.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
73.6k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
73.6k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
73.6k
  return static_cast<size_t>(__builtin_clzll(x));
68
73.6k
#endif
69
73.6k
}
Unexecuted instantiation: enc_fast_lossless.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_frame.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
372
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
372
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
372
  return static_cast<size_t>(__builtin_clzll(x));
68
372
#endif
69
372
}
enc_modular.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
5.13M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
5.13M
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
5.13M
  return static_cast<size_t>(__builtin_clzll(x));
68
5.13M
#endif
69
5.13M
}
Unexecuted instantiation: enc_patch_dictionary.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_dot_dictionary.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_detect_dots.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_debug_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_quant_weights.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_coeff_order.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_toc.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_xyb.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_image_bundle.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_external_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_heuristics.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_butteraugli_comparator.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_cache.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_group.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
595
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
595
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
595
  return static_cast<size_t>(__builtin_clzll(x));
68
595
#endif
69
595
}
Unexecuted instantiation: enc_progressive_split.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_splines.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_ac_strategy.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
30.3M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
30.3M
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
30.3M
  return static_cast<size_t>(__builtin_clzll(x));
68
30.3M
#endif
69
30.3M
}
Unexecuted instantiation: enc_entropy_coder.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: jxl_cms.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_jpeg_data.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_jpeg_data_reader.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_jpeg_huffman_decode.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_encoding.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
21.1M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
21.1M
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
21.1M
  return static_cast<size_t>(__builtin_clzll(x));
68
21.1M
#endif
69
21.1M
}
enc_ma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
306
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
306
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
306
  return static_cast<size_t>(__builtin_clzll(x));
68
306
#endif
69
306
}
Unexecuted instantiation: enc_transform.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_rct.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_palette.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_squeeze.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
ac_strategy.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
4.69k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
4.69k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
4.69k
  return static_cast<size_t>(__builtin_clzll(x));
68
4.69k
#endif
69
4.69k
}
Unexecuted instantiation: chroma_from_luma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
coeff_order.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
9.73k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
9.73k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
9.73k
  return static_cast<size_t>(__builtin_clzll(x));
68
9.73k
#endif
69
9.73k
}
Unexecuted instantiation: color_encoding_internal.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: compressed_dc.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
dec_ans.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
332k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
332k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
332k
  return static_cast<size_t>(__builtin_clzll(x));
68
332k
#endif
69
332k
}
Unexecuted instantiation: dec_cache.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: blending.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_context_map.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_external_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
dec_frame.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
1.78k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
1.78k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
1.78k
  return static_cast<size_t>(__builtin_clzll(x));
68
1.78k
#endif
69
1.78k
}
dec_group.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
1.69k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
1.69k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
1.69k
  return static_cast<size_t>(__builtin_clzll(x));
68
1.69k
#endif
69
1.69k
}
dec_huffman.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
1.58k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
1.58k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
1.58k
  return static_cast<size_t>(__builtin_clzll(x));
68
1.58k
#endif
69
1.58k
}
dec_modular.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
10.1k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
10.1k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
10.1k
  return static_cast<size_t>(__builtin_clzll(x));
68
10.1k
#endif
69
10.1k
}
Unexecuted instantiation: dec_noise.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_patch_dictionary.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_xyb.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: decode.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: entropy_coder.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: epf.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: fields.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: frame_header.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: headers.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: icc_codec.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: image_bundle.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: image_metadata.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: loop_filter.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: luminance.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_ma.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
encoding.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
38.4M
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
38.4M
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
38.4M
  return static_cast<size_t>(__builtin_clzll(x));
68
38.4M
#endif
69
38.4M
}
Unexecuted instantiation: modular_image.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: squeeze.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: squeeze_params.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: transform.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: rct.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: palette.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: passes_state.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: quant_weights.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: quantizer.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: render_pipeline.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
low_memory_render_pipeline.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
350k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
350k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
350k
  return static_cast<size_t>(__builtin_clzll(x));
68
350k
#endif
69
350k
}
Unexecuted instantiation: simple_render_pipeline.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_blending.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: render_pipeline_stage.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_chroma_upsampling.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_cms.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_epf.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_from_linear.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_gaborish.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_noise.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_patches.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_splines.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_spot.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_to_linear.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_tone_mapping.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_upsampling.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_write.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_xyb.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_ycbcr.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
splines.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
46
7.82k
Num0BitsAboveMS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
47
7.82k
  JXL_DASSERT(x != 0);
48
#if JXL_COMPILER_MSVC
49
#if JXL_ARCH_X64
50
  unsigned long index;
51
  _BitScanReverse64(&index, x);
52
  return 63 - index;
53
#else   // JXL_ARCH_X64
54
  // _BitScanReverse64 not available
55
  uint32_t msb = static_cast<uint32_t>(x >> 32u);
56
  unsigned long index;
57
  if (msb == 0) {
58
    uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
59
    _BitScanReverse(&index, lsb);
60
    return 63 - index;
61
  } else {
62
    _BitScanReverse(&index, msb);
63
    return 31 - index;
64
  }
65
#endif  // JXL_ARCH_X64
66
#else
67
7.82k
  return static_cast<size_t>(__builtin_clzll(x));
68
7.82k
#endif
69
7.82k
}
Unexecuted instantiation: toc.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: decode_to_jpeg.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_jpeg_data.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_jpeg_data_writer.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: jpeg_data.cc:jxl::Num0BitsAboveMS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
70
template <typename T>
71
static JXL_INLINE JXL_MAYBE_UNUSED size_t
72
174M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
174M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
174M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
174M
}
Unexecuted instantiation: encode.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_icc_codec.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_ans.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
59.1M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
59.1M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
59.1M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
59.1M
}
enc_ans.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
514k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
514k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
514k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
514k
}
Unexecuted instantiation: enc_cluster.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_context_map.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
1.01k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
1.01k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
1.01k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
1.01k
}
Unexecuted instantiation: enc_context_map.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_lz77.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
2.58M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
2.58M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
2.58M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
2.58M
}
enc_lz77.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
73.6k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
73.6k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
73.6k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
73.6k
}
Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_frame.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
372
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
372
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
372
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
372
}
Unexecuted instantiation: enc_frame.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_modular.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
1.29M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
1.29M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
1.29M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
1.29M
}
enc_modular.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
5.13M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
5.13M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
5.13M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
5.13M
}
Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_coeff_order.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_cache.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_cache.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
enc_group.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
595
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
595
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
595
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
595
}
Unexecuted instantiation: enc_group.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_splines.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_ac_strategy.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
30.3M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
30.3M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
30.3M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
30.3M
}
Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
enc_encoding.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
21.1M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
21.1M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
21.1M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
21.1M
}
enc_encoding.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
5.29M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
5.29M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
5.29M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
5.29M
}
enc_ma.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
223k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
223k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
223k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
223k
}
enc_ma.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
306
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
306
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
306
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
306
}
Unexecuted instantiation: enc_transform.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_transform.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_rct.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_rct.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_palette.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_palette.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
ac_strategy.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
4.69k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
4.69k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
4.69k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
4.69k
}
coeff_order.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
102k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
102k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
102k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
102k
}
coeff_order.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
9.73k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
9.73k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
9.73k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
9.73k
}
dec_ans.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
27.6k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
27.6k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
27.6k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
27.6k
}
dec_ans.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
332k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
332k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
332k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
332k
}
dec_cache.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
52.3k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
52.3k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
52.3k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
52.3k
}
Unexecuted instantiation: dec_context_map.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
dec_frame.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
1.78k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
1.78k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
1.78k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
1.78k
}
dec_frame.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
1.69k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
1.69k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
1.69k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
1.69k
}
dec_group.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
1.69k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
1.69k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
1.69k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
1.69k
}
Unexecuted instantiation: dec_group.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
dec_huffman.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
1.58k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
1.58k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
1.58k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
1.58k
}
dec_modular.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
10.1k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
10.1k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
10.1k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
10.1k
}
dec_modular.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
6.97k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
6.97k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
6.97k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
6.97k
}
Unexecuted instantiation: dec_noise.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: decode.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: decode.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: epf.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
fields.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
5.88k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
5.88k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
5.88k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
5.88k
}
Unexecuted instantiation: icc_codec.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_ma.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
encoding.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
38.4M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
38.4M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
38.4M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
38.4M
}
encoding.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
72
9.61M
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
9.61M
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
9.61M
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
9.61M
}
Unexecuted instantiation: modular_image.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: modular_image.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: transform.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: transform.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: rct.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: rct.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: palette.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: palette.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: quant_weights.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: quant_weights.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
low_memory_render_pipeline.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
350k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
350k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
350k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
350k
}
Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: stage_blending.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: stage_epf.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: stage_write.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
splines.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
72
7.82k
Num0BitsAboveMS1Bit_Nonzero(const T x) {
73
7.82k
  static_assert(!IsSigned<T>(), "Num0BitsAboveMS1Bit_Nonzero: use unsigned");
74
7.82k
  return Num0BitsAboveMS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
75
7.82k
}
Unexecuted instantiation: splines.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_jpeg_data_writer.cc:unsigned long jxl::Num0BitsAboveMS1Bit_Nonzero<unsigned int>(unsigned int)
76
77
// Undefined results for x == 0.
78
static JXL_INLINE JXL_MAYBE_UNUSED size_t
79
7.47k
Num0BitsBelowLS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
80
7.47k
  JXL_DASSERT(x != 0);
81
#if JXL_COMPILER_MSVC
82
  unsigned long index;
83
  _BitScanForward(&index, x);
84
  return index;
85
#else
86
7.47k
  return static_cast<size_t>(__builtin_ctz(x));
87
7.47k
#endif
88
7.47k
}
Unexecuted instantiation: encode.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_fields.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_icc_codec.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_ans.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_cluster.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_context_map.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_lz77.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_fast_lossless.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_frame.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_modular.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_patch_dictionary.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_dot_dictionary.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_detect_dots.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_debug_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_quant_weights.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_coeff_order.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_toc.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_xyb.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_image_bundle.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_external_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_heuristics.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_butteraugli_comparator.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_cache.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_group.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_progressive_split.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_splines.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_ac_strategy.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_entropy_coder.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: jxl_cms.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_jpeg_data.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_jpeg_data_reader.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_jpeg_huffman_decode.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_encoding.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
enc_ma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Line
Count
Source
79
7.47k
Num0BitsBelowLS1Bit_Nonzero(SizeTag<4> /* tag */, const uint32_t x) {
80
7.47k
  JXL_DASSERT(x != 0);
81
#if JXL_COMPILER_MSVC
82
  unsigned long index;
83
  _BitScanForward(&index, x);
84
  return index;
85
#else
86
7.47k
  return static_cast<size_t>(__builtin_ctz(x));
87
7.47k
#endif
88
7.47k
}
Unexecuted instantiation: enc_transform.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_rct.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_palette.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: enc_squeeze.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: ac_strategy.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: chroma_from_luma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: coeff_order.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: color_encoding_internal.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: compressed_dc.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_ans.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_cache.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: blending.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_context_map.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_external_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_frame.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_group.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_huffman.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_modular.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_noise.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_patch_dictionary.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_xyb.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: decode.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: entropy_coder.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: epf.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: fields.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: frame_header.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: headers.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: icc_codec.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: image_bundle.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: image_metadata.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: loop_filter.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: luminance.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_ma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: encoding.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: modular_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: squeeze.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: squeeze_params.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: transform.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: rct.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: palette.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: passes_state.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: quant_weights.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: quantizer.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: render_pipeline.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: low_memory_render_pipeline.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: simple_render_pipeline.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_blending.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: render_pipeline_stage.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_chroma_upsampling.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_cms.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_epf.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_from_linear.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_gaborish.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_noise.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_patches.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_splines.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_spot.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_to_linear.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_tone_mapping.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_upsampling.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_write.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_xyb.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: stage_ycbcr.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: splines.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: toc.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: decode_to_jpeg.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_jpeg_data.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: dec_jpeg_data_writer.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
Unexecuted instantiation: jpeg_data.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<4ul>, unsigned int)
89
static JXL_INLINE JXL_MAYBE_UNUSED size_t
90
269k
Num0BitsBelowLS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
91
269k
  JXL_DASSERT(x != 0);
92
#if JXL_COMPILER_MSVC
93
#if JXL_ARCH_X64
94
  unsigned long index;
95
  _BitScanForward64(&index, x);
96
  return index;
97
#else   // JXL_ARCH_64
98
  // _BitScanForward64 not available
99
  uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
100
  unsigned long index;
101
  if (lsb == 0) {
102
    uint32_t msb = static_cast<uint32_t>(x >> 32u);
103
    _BitScanForward(&index, msb);
104
    return 32 + index;
105
  } else {
106
    _BitScanForward(&index, lsb);
107
    return index;
108
  }
109
#endif  // JXL_ARCH_X64
110
#else
111
269k
  return static_cast<size_t>(__builtin_ctzll(x));
112
269k
#endif
113
269k
}
Unexecuted instantiation: encode.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_fields.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_icc_codec.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_ans.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_cluster.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_context_map.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_lz77.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_fast_lossless.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_frame.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_modular.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_patch_dictionary.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_dot_dictionary.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_detect_dots.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_debug_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_quant_weights.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_coeff_order.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_toc.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_xyb.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_image_bundle.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_external_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_heuristics.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_butteraugli_comparator.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_cache.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_group.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_progressive_split.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_splines.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_chroma_from_luma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_ac_strategy.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
enc_entropy_coder.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
90
241k
Num0BitsBelowLS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
91
241k
  JXL_DASSERT(x != 0);
92
#if JXL_COMPILER_MSVC
93
#if JXL_ARCH_X64
94
  unsigned long index;
95
  _BitScanForward64(&index, x);
96
  return index;
97
#else   // JXL_ARCH_64
98
  // _BitScanForward64 not available
99
  uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
100
  unsigned long index;
101
  if (lsb == 0) {
102
    uint32_t msb = static_cast<uint32_t>(x >> 32u);
103
    _BitScanForward(&index, msb);
104
    return 32 + index;
105
  } else {
106
    _BitScanForward(&index, lsb);
107
    return index;
108
  }
109
#endif  // JXL_ARCH_X64
110
#else
111
241k
  return static_cast<size_t>(__builtin_ctzll(x));
112
241k
#endif
113
241k
}
Unexecuted instantiation: jxl_cms.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_jpeg_data.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_jpeg_data_reader.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_jpeg_huffman_decode.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_encoding.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_ma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_transform.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_rct.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_palette.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: enc_squeeze.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: ac_strategy.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: chroma_from_luma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: coeff_order.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: color_encoding_internal.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: compressed_dc.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_ans.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_cache.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: blending.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_context_map.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_external_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_frame.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_group.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_huffman.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_modular.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_noise.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_patch_dictionary.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_xyb.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: decode.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: entropy_coder.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: epf.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
fields.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Line
Count
Source
90
28.0k
Num0BitsBelowLS1Bit_Nonzero(SizeTag<8> /* tag */, const uint64_t x) {
91
28.0k
  JXL_DASSERT(x != 0);
92
#if JXL_COMPILER_MSVC
93
#if JXL_ARCH_X64
94
  unsigned long index;
95
  _BitScanForward64(&index, x);
96
  return index;
97
#else   // JXL_ARCH_64
98
  // _BitScanForward64 not available
99
  uint32_t lsb = static_cast<uint32_t>(x & 0xFFFFFFFF);
100
  unsigned long index;
101
  if (lsb == 0) {
102
    uint32_t msb = static_cast<uint32_t>(x >> 32u);
103
    _BitScanForward(&index, msb);
104
    return 32 + index;
105
  } else {
106
    _BitScanForward(&index, lsb);
107
    return index;
108
  }
109
#endif  // JXL_ARCH_X64
110
#else
111
28.0k
  return static_cast<size_t>(__builtin_ctzll(x));
112
28.0k
#endif
113
28.0k
}
Unexecuted instantiation: frame_header.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: headers.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: icc_codec.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: image_bundle.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: image_metadata.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: loop_filter.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: luminance.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_ma.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: encoding.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: modular_image.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: squeeze.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: squeeze_params.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: transform.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: rct.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: palette.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: passes_state.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: quant_weights.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: quantizer.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: render_pipeline.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: low_memory_render_pipeline.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: simple_render_pipeline.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_blending.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: render_pipeline_stage.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_chroma_upsampling.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_cms.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_epf.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_from_linear.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_gaborish.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_noise.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_patches.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_splines.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_spot.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_to_linear.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_tone_mapping.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_upsampling.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_write.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_xyb.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: stage_ycbcr.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: splines.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: toc.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: decode_to_jpeg.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_jpeg_data.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: dec_jpeg_data_writer.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
Unexecuted instantiation: jpeg_data.cc:jxl::Num0BitsBelowLS1Bit_Nonzero(jxl::SizeTag<8ul>, unsigned long)
114
template <typename T>
115
277k
static JXL_INLINE JXL_MAYBE_UNUSED size_t Num0BitsBelowLS1Bit_Nonzero(T x) {
116
277k
  static_assert(!IsSigned<T>(), "Num0BitsBelowLS1Bit_Nonzero: use unsigned");
117
277k
  return Num0BitsBelowLS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
118
277k
}
enc_entropy_coder.cc:unsigned long jxl::Num0BitsBelowLS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
115
241k
static JXL_INLINE JXL_MAYBE_UNUSED size_t Num0BitsBelowLS1Bit_Nonzero(T x) {
116
241k
  static_assert(!IsSigned<T>(), "Num0BitsBelowLS1Bit_Nonzero: use unsigned");
117
241k
  return Num0BitsBelowLS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
118
241k
}
Unexecuted instantiation: jxl_cms.cc:unsigned long jxl::Num0BitsBelowLS1Bit_Nonzero<unsigned long>(unsigned long)
enc_ma.cc:unsigned long jxl::Num0BitsBelowLS1Bit_Nonzero<unsigned int>(unsigned int)
Line
Count
Source
115
7.47k
static JXL_INLINE JXL_MAYBE_UNUSED size_t Num0BitsBelowLS1Bit_Nonzero(T x) {
116
7.47k
  static_assert(!IsSigned<T>(), "Num0BitsBelowLS1Bit_Nonzero: use unsigned");
117
7.47k
  return Num0BitsBelowLS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
118
7.47k
}
fields.cc:unsigned long jxl::Num0BitsBelowLS1Bit_Nonzero<unsigned long>(unsigned long)
Line
Count
Source
115
28.0k
static JXL_INLINE JXL_MAYBE_UNUSED size_t Num0BitsBelowLS1Bit_Nonzero(T x) {
116
28.0k
  static_assert(!IsSigned<T>(), "Num0BitsBelowLS1Bit_Nonzero: use unsigned");
117
28.0k
  return Num0BitsBelowLS1Bit_Nonzero(SizeTag<sizeof(T)>(), x);
118
28.0k
}
119
120
// Returns bit width for x == 0.
121
template <typename T>
122
8.48k
static JXL_INLINE JXL_MAYBE_UNUSED size_t Num0BitsAboveMS1Bit(const T x) {
123
8.48k
  return (x == 0) ? sizeof(T) * 8 : Num0BitsAboveMS1Bit_Nonzero(x);
124
8.48k
}
125
126
// Returns bit width for x == 0.
127
template <typename T>
128
static JXL_INLINE JXL_MAYBE_UNUSED size_t Num0BitsBelowLS1Bit(const T x) {
129
  return (x == 0) ? sizeof(T) * 8 : Num0BitsBelowLS1Bit_Nonzero(x);
130
}
131
132
// Returns base-2 logarithm, rounded down.
133
template <typename T>
134
174M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
174M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
174M
}
Unexecuted instantiation: encode.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_icc_codec.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_ans.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
59.1M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
59.1M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
59.1M
}
enc_ans.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
514k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
514k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
514k
}
Unexecuted instantiation: enc_cluster.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_context_map.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
1.01k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
1.01k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
1.01k
}
Unexecuted instantiation: enc_context_map.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_lz77.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
2.58M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
2.58M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
2.58M
}
enc_lz77.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
73.6k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
73.6k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
73.6k
}
Unexecuted instantiation: enc_fast_lossless.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_frame.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
372
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
372
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
372
}
Unexecuted instantiation: enc_frame.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_modular.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
1.29M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
1.29M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
1.29M
}
enc_modular.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
5.13M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
5.13M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
5.13M
}
Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_patch_dictionary.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_dot_dictionary.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_detect_dots.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_debug_image.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_quant_weights.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_coeff_order.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_heuristics.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_adaptive_quantization.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_cache.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_cache.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
enc_group.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
595
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
595
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
595
}
Unexecuted instantiation: enc_group.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_splines.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_chroma_from_luma.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_ac_strategy.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
30.3M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
30.3M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
30.3M
}
Unexecuted instantiation: enc_ac_strategy.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_entropy_coder.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_jpeg_data.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
enc_encoding.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
21.1M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
21.1M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
21.1M
}
enc_encoding.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
5.29M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
5.29M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
5.29M
}
enc_ma.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
223k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
223k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
223k
}
enc_ma.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
306
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
306
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
306
}
Unexecuted instantiation: enc_transform.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_transform.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_rct.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: enc_rct.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_palette.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: enc_palette.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
ac_strategy.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
4.69k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
4.69k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
4.69k
}
coeff_order.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
102k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
102k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
102k
}
coeff_order.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
9.73k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
9.73k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
9.73k
}
dec_ans.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
27.6k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
27.6k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
27.6k
}
dec_ans.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
332k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
332k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
332k
}
dec_cache.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
52.3k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
52.3k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
52.3k
}
Unexecuted instantiation: dec_context_map.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_external_image.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
dec_frame.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
1.78k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
1.78k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
1.78k
}
dec_frame.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
1.69k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
1.69k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
1.69k
}
dec_group.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
1.69k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
1.69k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
1.69k
}
Unexecuted instantiation: dec_group.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
dec_huffman.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
1.58k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
1.58k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
1.58k
}
dec_modular.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
10.1k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
10.1k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
10.1k
}
dec_modular.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
6.97k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
6.97k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
6.97k
}
Unexecuted instantiation: dec_noise.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_patch_dictionary.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: decode.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: decode.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: epf.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: icc_codec.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_ma.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
encoding.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
38.4M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
38.4M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
38.4M
}
encoding.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
134
9.61M
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
9.61M
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
9.61M
}
Unexecuted instantiation: modular_image.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: modular_image.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: transform.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: transform.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: rct.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: rct.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: palette.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: palette.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: quant_weights.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: quant_weights.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
low_memory_render_pipeline.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
350k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
350k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
350k
}
Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Unexecuted instantiation: stage_blending.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: stage_epf.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: stage_write.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
splines.cc:unsigned long jxl::FloorLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
134
7.82k
static JXL_INLINE JXL_MAYBE_UNUSED size_t FloorLog2Nonzero(const T x) {
135
7.82k
  return (sizeof(T) * 8 - 1) ^ Num0BitsAboveMS1Bit_Nonzero(x);
136
7.82k
}
Unexecuted instantiation: splines.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
Unexecuted instantiation: dec_jpeg_data_writer.cc:unsigned long jxl::FloorLog2Nonzero<unsigned int>(unsigned int)
137
138
// Returns base-2 logarithm, rounded up.
139
template <typename T>
140
31.3M
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
31.3M
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
31.3M
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
23.0M
  return floor_log2 + 1;
144
31.3M
}
enc_ans.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
22.5k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
22.5k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
22.5k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
5.32k
  return floor_log2 + 1;
144
22.5k
}
enc_ans.cc:unsigned long jxl::CeilLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
140
133k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
133k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
133k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
97.6k
  return floor_log2 + 1;
144
133k
}
enc_context_map.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
1.01k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
1.01k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
1.01k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
681
  return floor_log2 + 1;
144
1.01k
}
enc_lz77.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
73.6k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
73.6k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
73.6k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
36.3k
  return floor_log2 + 1;
144
73.6k
}
enc_frame.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
372
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
372
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
372
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
155
  return floor_log2 + 1;
144
372
}
enc_modular.cc:unsigned long jxl::CeilLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
140
15
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
15
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
15
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
15
}
enc_modular.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
14
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
14
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
14
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
14
}
enc_group.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
595
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
595
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
595
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
595
}
enc_ac_strategy.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
30.3M
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
30.3M
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
30.3M
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
22.5M
  return floor_log2 + 1;
144
30.3M
}
enc_encoding.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
186
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
186
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
186
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
186
  return floor_log2 + 1;
144
186
}
enc_ma.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
306
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
306
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
306
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
306
  return floor_log2 + 1;
144
306
}
ac_strategy.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
4.69k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
4.69k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
4.69k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
4.69k
}
coeff_order.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
9.73k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
9.73k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
9.73k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
326
  return floor_log2 + 1;
144
9.73k
}
dec_ans.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
332k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
332k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
332k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
133k
  return floor_log2 + 1;
144
332k
}
dec_cache.cc:unsigned long jxl::CeilLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
140
52.3k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
52.3k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
52.3k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
52.3k
}
dec_frame.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
1.78k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
1.78k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
1.78k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
1.78k
}
dec_frame.cc:unsigned long jxl::CeilLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
140
1.69k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
1.69k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
1.69k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
5
  return floor_log2 + 1;
144
1.69k
}
dec_group.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
1.69k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
1.69k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
1.69k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
1.69k
}
dec_modular.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
10.1k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
10.1k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
10.1k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
1.81k
  return floor_log2 + 1;
144
10.1k
}
dec_modular.cc:unsigned long jxl::CeilLog2Nonzero<unsigned int>(unsigned int)
Line
Count
Source
140
6.97k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
6.97k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
6.97k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
0
  return floor_log2 + 1;
144
6.97k
}
low_memory_render_pipeline.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
350k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
350k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
350k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
202k
  return floor_log2 + 1;
144
350k
}
Unexecuted instantiation: simple_render_pipeline.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
splines.cc:unsigned long jxl::CeilLog2Nonzero<unsigned long>(unsigned long)
Line
Count
Source
140
7.82k
static JXL_INLINE JXL_MAYBE_UNUSED size_t CeilLog2Nonzero(const T x) {
141
7.82k
  const size_t floor_log2 = FloorLog2Nonzero(x);
142
7.82k
  if ((x & (x - 1)) == 0) return floor_log2;  // power of two
143
4.36k
  return floor_log2 + 1;
144
7.82k
}
145
146
}  // namespace jxl
147
148
#endif  // LIB_JXL_BASE_BITS_H_