Line | Count | Source |
1 | | // Licensed to the Apache Software Foundation (ASF) under one |
2 | | // or more contributor license agreements. See the NOTICE file |
3 | | // distributed with this work for additional information |
4 | | // regarding copyright ownership. The ASF licenses this file |
5 | | // to you under the Apache License, Version 2.0 (the |
6 | | // "License"); you may not use this file except in compliance |
7 | | // with the License. You may obtain a copy of the License at |
8 | | // |
9 | | // http://www.apache.org/licenses/LICENSE-2.0 |
10 | | // |
11 | | // Unless required by applicable law or agreed to in writing, |
12 | | // software distributed under the License is distributed on an |
13 | | // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
14 | | // KIND, either express or implied. See the License for the |
15 | | // specific language governing permissions and limitations |
16 | | // under the License. |
17 | | |
18 | | #pragma once |
19 | | |
20 | | #include <cstdint> |
21 | | #include <cstring> |
22 | | #include <type_traits> |
23 | | #include <vector> |
24 | | |
25 | | #if defined(__ARM_NEON) |
26 | | #include <arm_neon.h> |
27 | | #endif |
28 | | |
29 | | #include "util/sse_util.hpp" |
30 | | |
31 | | namespace doris::simd { |
32 | | consteval auto bits_mask_length() { |
33 | | #if defined(__ARM_NEON) && defined(__aarch64__) |
34 | | return 16; |
35 | | #else |
36 | | return 32; |
37 | | #endif |
38 | | } |
39 | | |
40 | | #if defined(__ARM_NEON) && defined(__aarch64__) |
41 | | inline uint64_t get_nibble_mask(uint8x16_t values) { |
42 | | // It produces 4-bit out of each byte, alternating between the high 4-bits and low 4-bits of the 16-byte vector. |
43 | | // Given that the comparison operators give a 16-byte result of 0x00 or 0xff, the result is close to being a PMOVMSKB, |
44 | | // the only difference is that every matching bit is repeated 4 times and is a 64-bit integer. |
45 | | // https://community.arm.com/arm-community-blogs/b/infrastructure-solutions-blog/posts/porting-x86-vector-bitmask-optimizations-to-arm-neon?CommentId=af187ac6-ae00-4e4d-bbf0-e142187aa92e |
46 | | return vget_lane_u64(vreinterpret_u64_u8(vshrn_n_u16(vreinterpretq_u16_u8(values), 4)), 0); |
47 | | } |
48 | | /* |
49 | | Input 16 bytes of data and convert it into a 64-bit integer, where one bit appears 4 times. |
50 | | Compare with bytes32_mask_to_bits32_mask, a u8 array with a length of 32 |
51 | | std::vector<uint8_t> vec = {1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, |
52 | | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}; |
53 | | |
54 | | bytes32_mask_to_bits32_mask 0100 0000 0000 0000,1101 0000 0000 0011 |
55 | | |
56 | | |
57 | | (1101 0000 0000 0011) |
58 | | bytes16_mask_to_bits64_mask 1111 1111 0000 1111,0000 0000 0000 0000,0000 0000 0000 0000,0000 0000 1111 1111 |
59 | | (0100 0000 0000 0000) |
60 | | 0000 1111 0000 0000,0000 0000 0000 0000,0000 0000 0000 0000,0000 0000 0000 0000 |
61 | | */ |
62 | | |
63 | | inline uint64_t bytes16_mask_to_bits64_mask(const uint8_t* data) { |
64 | | const uint8x16_t vfilter = vld1q_u8(data); |
65 | | return get_nibble_mask(vmvnq_u8(vceqzq_u8(vfilter))); |
66 | | } |
67 | | #endif |
68 | | |
69 | 46.7M | inline uint32_t bytes32_mask_to_bits32_mask(const uint8_t* data) { |
70 | 46.7M | #ifdef __AVX2__ |
71 | 46.7M | auto zero32 = _mm256_setzero_si256(); |
72 | 46.7M | auto mask = static_cast<uint32_t>(_mm256_movemask_epi8( |
73 | 46.7M | _mm256_cmpgt_epi8(_mm256_loadu_si256(reinterpret_cast<const __m256i*>(data)), zero32))); |
74 | | #elif defined(__SSE2__) |
75 | | auto zero16 = _mm_setzero_si128(); |
76 | | uint32_t mask = |
77 | | (static_cast<uint32_t>(_mm_movemask_epi8(_mm_cmpgt_epi8( |
78 | | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data)), zero16)))) | |
79 | | ((static_cast<uint32_t>(_mm_movemask_epi8(_mm_cmpgt_epi8( |
80 | | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 16)), zero16))) |
81 | | << 16) & |
82 | | 0xffff0000); |
83 | | #else |
84 | | uint32_t mask = 0; |
85 | | for (std::size_t i = 0; i < 32; ++i) { |
86 | | mask |= static_cast<uint32_t>(1 == *(data + i)) << i; |
87 | | } |
88 | | #endif |
89 | 46.7M | return mask; |
90 | 46.7M | } |
91 | | |
92 | 46.7M | inline auto bytes_mask_to_bits_mask(const uint8_t* data) { |
93 | | #if defined(__ARM_NEON) && defined(__aarch64__) |
94 | | return bytes16_mask_to_bits64_mask(data); |
95 | | #else |
96 | 46.7M | return bytes32_mask_to_bits32_mask(data); |
97 | 46.7M | #endif |
98 | 46.7M | } |
99 | | |
100 | 24.2M | inline constexpr auto bits_mask_all() { |
101 | | #if defined(__ARM_NEON) && defined(__aarch64__) |
102 | | return 0xffff'ffff'ffff'ffffULL; |
103 | | #else |
104 | 24.2M | return 0xffffffff; |
105 | 24.2M | #endif |
106 | 24.2M | } |
107 | | |
108 | | template <typename Func> |
109 | 13.6M | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { |
110 | | #if defined(__ARM_NEON) && defined(__aarch64__) |
111 | | mask &= 0x8888'8888'8888'8888ULL; |
112 | | while (mask) { |
113 | | const auto index = __builtin_ctzll(mask) >> 2; |
114 | | func(index); |
115 | | mask &= mask - 1; |
116 | | } |
117 | | |
118 | | #else |
119 | 270M | while (mask) { |
120 | 256M | const auto bit_pos = __builtin_ctzll(mask); |
121 | 256M | func(bit_pos); |
122 | 256M | mask = mask & (mask - 1); |
123 | 256M | } |
124 | 13.6M | #endif |
125 | 13.6M | } columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIhjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 2.15M | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 18.5M | while (mask) { | 120 | 16.4M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 16.4M | func(bit_pos); | 122 | 16.4M | mask = mask & (mask - 1); | 123 | 16.4M | } | 124 | 2.15M | #endif | 125 | 2.15M | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIhjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 117k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 977k | while (mask) { | 120 | 859k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 859k | func(bit_pos); | 122 | 859k | mask = mask & (mask - 1); | 123 | 859k | } | 124 | 117k | #endif | 125 | 117k | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIhjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIhjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIhmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 316 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 5.48k | while (mask) { | 120 | 5.16k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 5.16k | func(bit_pos); | 122 | 5.16k | mask = mask & (mask - 1); | 123 | 5.16k | } | 124 | 316 | #endif | 125 | 316 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIhmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 6 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 84 | while (mask) { | 120 | 78 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 78 | func(bit_pos); | 122 | 78 | mask = mask & (mask - 1); | 123 | 78 | } | 124 | 6 | #endif | 125 | 6 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIhmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 2.45M | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 66.2M | while (mask) { | 120 | 63.8M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 63.8M | func(bit_pos); | 122 | 63.8M | mask = mask & (mask - 1); | 123 | 63.8M | } | 124 | 2.45M | #endif | 125 | 2.45M | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIhmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 3.80k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 32.9k | while (mask) { | 120 | 29.1k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 29.1k | func(bit_pos); | 122 | 29.1k | mask = mask & (mask - 1); | 123 | 29.1k | } | 124 | 3.80k | #endif | 125 | 3.80k | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericItjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingItjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericItjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingItjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericItmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingItmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericItmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingItmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_15DateV2ValueTypeEEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_15DateV2ValueTypeEEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_15DateV2ValueTypeEEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_15DateV2ValueTypeEEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_15DateV2ValueTypeEEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Line | Count | Source | 109 | 316 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 7.05k | while (mask) { | 120 | 6.73k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 6.73k | func(bit_pos); | 122 | 6.73k | mask = mask & (mask - 1); | 123 | 6.73k | } | 124 | 316 | #endif | 125 | 316 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_15DateV2ValueTypeEEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Line | Count | Source | 109 | 169 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 347 | while (mask) { | 120 | 178 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 178 | func(bit_pos); | 122 | 178 | mask = mask & (mask - 1); | 123 | 178 | } | 124 | 169 | #endif | 125 | 169 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_15DateV2ValueTypeEEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_15DateV2ValueTypeEEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Line | Count | Source | 109 | 322 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 6.46k | while (mask) { | 120 | 6.13k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 6.13k | func(bit_pos); | 122 | 6.13k | mask = mask & (mask - 1); | 123 | 6.13k | } | 124 | 322 | #endif | 125 | 322 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Line | Count | Source | 109 | 585 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 12.7k | while (mask) { | 120 | 12.2k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 12.2k | func(bit_pos); | 122 | 12.2k | mask = mask & (mask - 1); | 123 | 12.2k | } | 124 | 585 | #endif | 125 | 585 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_11DateV2ValueINS_19DateTimeV2ValueTypeEEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16TimestampTzValueEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16TimestampTzValueEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16TimestampTzValueEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16TimestampTzValueEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16TimestampTzValueEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16TimestampTzValueEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16TimestampTzValueEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16TimestampTzValueEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIjjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIjjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIjjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIjjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIjmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIjmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIjmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIjmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericImjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingImjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericImjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingImjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericImmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingImmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericImmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingImmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIN4wide7integerILm128EjEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIN4wide7integerILm128EjEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIN4wide7integerILm128EjEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIN4wide7integerILm128EjEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIN4wide7integerILm128EjEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIN4wide7integerILm128EjEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIN4wide7integerILm128EjEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS9_IT0_Lm4096ESD_Lm16ELm15EEERSE_PSI_RKNS9_IhLm4096ESD_Lm16ELm15EEElEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIN4wide7integerILm128EjEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS9_IT0_Lm4096ESD_Lm16ELm15EEERKNS9_IhLm4096ESD_Lm16ELm15EEEEUlmE_EEvSA_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIajNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIajNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIajNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIajNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIamNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 364 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 7.23k | while (mask) { | 120 | 6.87k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 6.87k | func(bit_pos); | 122 | 6.87k | mask = mask & (mask - 1); | 123 | 6.87k | } | 124 | 364 | #endif | 125 | 364 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIamNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 15 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 192 | while (mask) { | 120 | 177 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 177 | func(bit_pos); | 122 | 177 | mask = mask & (mask - 1); | 123 | 177 | } | 124 | 15 | #endif | 125 | 15 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIamNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIamNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIsjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIsjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIsjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIsjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIsmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 316 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 5.47k | while (mask) { | 120 | 5.16k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 5.16k | func(bit_pos); | 122 | 5.16k | mask = mask & (mask - 1); | 123 | 5.16k | } | 124 | 316 | #endif | 125 | 316 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIsmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 9 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 90 | while (mask) { | 120 | 81 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 81 | func(bit_pos); | 122 | 81 | mask = mask & (mask - 1); | 123 | 81 | } | 124 | 9 | #endif | 125 | 9 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIsmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIsmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIijNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIijNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIijNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIijNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIimNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 101k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 2.09M | while (mask) { | 120 | 1.99M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 1.99M | func(bit_pos); | 122 | 1.99M | mask = mask & (mask - 1); | 123 | 1.99M | } | 124 | 101k | #endif | 125 | 101k | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIimNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 785 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 3.34k | while (mask) { | 120 | 2.56k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 2.56k | func(bit_pos); | 122 | 2.56k | mask = mask & (mask - 1); | 123 | 2.56k | } | 124 | 785 | #endif | 125 | 785 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIimNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIimNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIljNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIljNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIljNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIljNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIlmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 323 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 6.65k | while (mask) { | 120 | 6.32k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 6.32k | func(bit_pos); | 122 | 6.32k | mask = mask & (mask - 1); | 123 | 6.32k | } | 124 | 323 | #endif | 125 | 323 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIlmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 6 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 84 | while (mask) { | 120 | 78 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 78 | func(bit_pos); | 122 | 78 | mask = mask & (mask - 1); | 123 | 78 | } | 124 | 6 | #endif | 125 | 6 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIlmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIlmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16VecDateTimeValueEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16VecDateTimeValueEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16VecDateTimeValueEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16VecDateTimeValueEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16VecDateTimeValueEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16VecDateTimeValueEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_16VecDateTimeValueEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_16VecDateTimeValueEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericInjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingInjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericInjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingInjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericInmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingInmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericInmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingInmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIfjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIfjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIfjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIfjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIfmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 264 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 5.93k | while (mask) { | 120 | 5.67k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 5.67k | func(bit_pos); | 122 | 5.67k | mask = mask & (mask - 1); | 123 | 5.67k | } | 124 | 264 | #endif | 125 | 264 | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIfmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 6 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 84 | while (mask) { | 120 | 78 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 78 | func(bit_pos); | 122 | 78 | mask = mask & (mask - 1); | 123 | 78 | } | 124 | 6 | #endif | 125 | 6 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIfmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIfmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIdjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIdjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIdjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIdjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIdmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Line | Count | Source | 109 | 1.97M | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 56.3M | while (mask) { | 120 | 54.3M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 54.3M | func(bit_pos); | 122 | 54.3M | mask = mask & (mask - 1); | 123 | 54.3M | } | 124 | 1.97M | #endif | 125 | 1.97M | } |
columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIdmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Line | Count | Source | 109 | 320 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 4.30k | while (mask) { | 120 | 3.98k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 3.98k | func(bit_pos); | 122 | 3.98k | mask = mask & (mask - 1); | 123 | 3.98k | } | 124 | 320 | #endif | 125 | 320 | } |
Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericIdmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS6_IT0_Lm4096ESA_Lm16ELm15EEERSB_PSF_RKNS6_IhLm4096ESA_Lm16ELm15EEElEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingIdmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS6_IT0_Lm4096ESA_Lm16ELm15EEERKNS6_IhLm4096ESA_Lm16ELm15EEEEUlmE_EEvS7_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIiEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIiEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIiEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIiEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIiEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIiEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIiEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIiEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIlEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIlEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIlEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIlEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIlEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIlEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIlEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIlEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalInEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalInEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalInEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalInEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalInEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalInEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalInEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS8_IT0_Lm4096ESC_Lm16ELm15EEERSD_PSH_RKNS8_IhLm4096ESC_Lm16ELm15EEElEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalInEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS8_IT0_Lm4096ESC_Lm16ELm15EEERKNS8_IhLm4096ESC_Lm16ELm15EEEEUlmE_EEvS9_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_12Decimal128V3EjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_12Decimal128V3EjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_12Decimal128V3EjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_12Decimal128V3EjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_12Decimal128V3EmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_12Decimal128V3EmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_12Decimal128V3EmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNS7_IT0_Lm4096ESB_Lm16ELm15EEERSC_PSG_RKNS7_IhLm4096ESB_Lm16ELm15EEElEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_12Decimal128V3EmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNS7_IT0_Lm4096ESB_Lm16ELm15EEERKNS7_IhLm4096ESB_Lm16ELm15EEEEUlmE_EEvS8_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIN4wide7integerILm256EiEEEEjNS2_20ResultOffsetsBuilderIjLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNSB_IT0_Lm4096ESF_Lm16ELm15EEERSG_PSK_RKNSB_IhLm4096ESF_Lm16ELm15EEElEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIN4wide7integerILm256EiEEEEjNS2_20ResultOffsetsBuilderIjLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNSB_IT0_Lm4096ESF_Lm16ELm15EEERKNSB_IhLm4096ESF_Lm16ELm15EEEEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIN4wide7integerILm256EiEEEEjNS2_22NoResultOffsetsBuilderIjEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNSB_IT0_Lm4096ESF_Lm16ELm15EEERSG_PSK_RKNSB_IhLm4096ESF_Lm16ELm15EEElEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIN4wide7integerILm256EiEEEEjNS2_22NoResultOffsetsBuilderIjEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNSB_IT0_Lm4096ESF_Lm16ELm15EEERKNSB_IhLm4096ESF_Lm16ELm15EEEEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIN4wide7integerILm256EiEEEEmNS2_20ResultOffsetsBuilderImLb0EEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNSB_IT0_Lm4096ESF_Lm16ELm15EEERSG_PSK_RKNSB_IhLm4096ESF_Lm16ELm15EEElEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIN4wide7integerILm256EiEEEEmNS2_20ResultOffsetsBuilderImLb1EEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNSB_IT0_Lm4096ESF_Lm16ELm15EEERKNSB_IhLm4096ESF_Lm16ELm15EEEEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_126filter_arrays_impl_genericINS_7DecimalIN4wide7integerILm256EiEEEEmNS2_22NoResultOffsetsBuilderImEEEEvRKNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERKNSB_IT0_Lm4096ESF_Lm16ELm15EEERSG_PSK_RKNSB_IhLm4096ESF_Lm16ELm15EEElEUlmE_EEvSC_j Unexecuted instantiation: columns_common.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_12_GLOBAL__N_144filter_arrays_impl_generic_without_reservingINS_7DecimalIN4wide7integerILm256EiEEEEmNS2_22NoResultOffsetsBuilderImEEEEmRNS_8PODArrayIT_Lm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEERNSB_IT0_Lm4096ESF_Lm16ELm15EEERKNSB_IhLm4096ESF_Lm16ELm15EEEEUlmE_EEvSC_j _ZN5doris4simd25iterate_through_bits_maskIZNKS_13ColumnDecimalILNS_13PrimitiveTypeE28EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 63.8k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 1.97M | while (mask) { | 120 | 1.90M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 1.90M | func(bit_pos); | 122 | 1.90M | mask = mask & (mask - 1); | 123 | 1.90M | } | 124 | 63.8k | #endif | 125 | 63.8k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_13ColumnDecimalILNS_13PrimitiveTypeE28EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 7 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 181 | while (mask) { | 120 | 174 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 174 | func(bit_pos); | 122 | 174 | mask = mask & (mask - 1); | 123 | 174 | } | 124 | 7 | #endif | 125 | 7 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_13ColumnDecimalILNS_13PrimitiveTypeE29EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 618k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 19.0M | while (mask) { | 120 | 18.3M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 18.3M | func(bit_pos); | 122 | 18.3M | mask = mask & (mask - 1); | 123 | 18.3M | } | 124 | 618k | #endif | 125 | 618k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_13ColumnDecimalILNS_13PrimitiveTypeE29EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 4.37k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 33.4k | while (mask) { | 120 | 29.1k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 29.1k | func(bit_pos); | 122 | 29.1k | mask = mask & (mask - 1); | 123 | 29.1k | } | 124 | 4.37k | #endif | 125 | 4.37k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_13ColumnDecimalILNS_13PrimitiveTypeE20EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 2 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 64 | while (mask) { | 120 | 62 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 62 | func(bit_pos); | 122 | 62 | mask = mask & (mask - 1); | 123 | 62 | } | 124 | 2 | #endif | 125 | 2 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_13ColumnDecimalILNS_13PrimitiveTypeE20EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 2 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 64 | while (mask) { | 120 | 62 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 62 | func(bit_pos); | 122 | 62 | mask = mask & (mask - 1); | 123 | 62 | } | 124 | 2 | #endif | 125 | 2 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_13ColumnDecimalILNS_13PrimitiveTypeE30EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 135k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 1.95M | while (mask) { | 120 | 1.81M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 1.81M | func(bit_pos); | 122 | 1.81M | mask = mask & (mask - 1); | 123 | 1.81M | } | 124 | 135k | #endif | 125 | 135k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_13ColumnDecimalILNS_13PrimitiveTypeE30EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 17.3k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 168k | while (mask) { | 120 | 151k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 151k | func(bit_pos); | 122 | 151k | mask = mask & (mask - 1); | 123 | 151k | } | 124 | 17.3k | #endif | 125 | 17.3k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_13ColumnDecimalILNS_13PrimitiveTypeE35EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 211 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 4.85k | while (mask) { | 120 | 4.64k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 4.64k | func(bit_pos); | 122 | 4.64k | mask = mask & (mask - 1); | 123 | 4.64k | } | 124 | 211 | #endif | 125 | 211 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_13ColumnDecimalILNS_13PrimitiveTypeE35EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 7 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 224 | while (mask) { | 120 | 217 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 217 | func(bit_pos); | 122 | 217 | mask = mask & (mask - 1); | 123 | 217 | } | 124 | 7 | #endif | 125 | 7 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE2EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 1.18M | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 8.79M | while (mask) { | 120 | 7.60M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 7.60M | func(bit_pos); | 122 | 7.60M | mask = mask & (mask - 1); | 123 | 7.60M | } | 124 | 1.18M | #endif | 125 | 1.18M | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE2EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 455k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 4.96M | while (mask) { | 120 | 4.51M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 4.51M | func(bit_pos); | 122 | 4.51M | mask = mask & (mask - 1); | 123 | 4.51M | } | 124 | 455k | #endif | 125 | 455k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE3EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 18.8k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 532k | while (mask) { | 120 | 513k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 513k | func(bit_pos); | 122 | 513k | mask = mask & (mask - 1); | 123 | 513k | } | 124 | 18.8k | #endif | 125 | 18.8k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE3EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 23.2k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 291k | while (mask) { | 120 | 268k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 268k | func(bit_pos); | 122 | 268k | mask = mask & (mask - 1); | 123 | 268k | } | 124 | 23.2k | #endif | 125 | 23.2k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE4EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 24.6k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 624k | while (mask) { | 120 | 599k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 599k | func(bit_pos); | 122 | 599k | mask = mask & (mask - 1); | 123 | 599k | } | 124 | 24.6k | #endif | 125 | 24.6k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE4EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 2.75k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 37.1k | while (mask) { | 120 | 34.4k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 34.4k | func(bit_pos); | 122 | 34.4k | mask = mask & (mask - 1); | 123 | 34.4k | } | 124 | 2.75k | #endif | 125 | 2.75k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE5EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 669k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 15.8M | while (mask) { | 120 | 15.1M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 15.1M | func(bit_pos); | 122 | 15.1M | mask = mask & (mask - 1); | 123 | 15.1M | } | 124 | 669k | #endif | 125 | 669k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE5EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 14.7k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 283k | while (mask) { | 120 | 268k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 268k | func(bit_pos); | 122 | 268k | mask = mask & (mask - 1); | 123 | 268k | } | 124 | 14.7k | #endif | 125 | 14.7k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE6EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 399k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 2.71M | while (mask) { | 120 | 2.31M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 2.31M | func(bit_pos); | 122 | 2.31M | mask = mask & (mask - 1); | 123 | 2.31M | } | 124 | 399k | #endif | 125 | 399k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE6EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 73.8k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 583k | while (mask) { | 120 | 509k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 509k | func(bit_pos); | 122 | 509k | mask = mask & (mask - 1); | 123 | 509k | } | 124 | 73.8k | #endif | 125 | 73.8k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE7EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 5.23k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 153k | while (mask) { | 120 | 148k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 148k | func(bit_pos); | 122 | 148k | mask = mask & (mask - 1); | 123 | 148k | } | 124 | 5.23k | #endif | 125 | 5.23k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE7EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 1.09k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 6.12k | while (mask) { | 120 | 5.02k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 5.02k | func(bit_pos); | 122 | 5.02k | mask = mask & (mask - 1); | 123 | 5.02k | } | 124 | 1.09k | #endif | 125 | 1.09k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE8EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 16.0k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 471k | while (mask) { | 120 | 455k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 455k | func(bit_pos); | 122 | 455k | mask = mask & (mask - 1); | 123 | 455k | } | 124 | 16.0k | #endif | 125 | 16.0k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE8EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 3.08k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 12.5k | while (mask) { | 120 | 9.48k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 9.48k | func(bit_pos); | 122 | 9.48k | mask = mask & (mask - 1); | 123 | 9.48k | } | 124 | 3.08k | #endif | 125 | 3.08k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE9EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 1.59M | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 46.9M | while (mask) { | 120 | 45.3M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 45.3M | func(bit_pos); | 122 | 45.3M | mask = mask & (mask - 1); | 123 | 45.3M | } | 124 | 1.59M | #endif | 125 | 1.59M | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE9EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 21.7k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 61.2k | while (mask) { | 120 | 39.5k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 39.5k | func(bit_pos); | 122 | 39.5k | mask = mask & (mask - 1); | 123 | 39.5k | } | 124 | 21.7k | #endif | 125 | 21.7k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE36EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 152 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 4.75k | while (mask) { | 120 | 4.60k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 4.60k | func(bit_pos); | 122 | 4.60k | mask = mask & (mask - 1); | 123 | 4.60k | } | 124 | 152 | #endif | 125 | 152 | } |
Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE36EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j _ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE37EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 152 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 4.60k | while (mask) { | 120 | 4.45k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 4.45k | func(bit_pos); | 122 | 4.45k | mask = mask & (mask - 1); | 123 | 4.45k | } | 124 | 152 | #endif | 125 | 152 | } |
Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE37EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j _ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE11EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 39 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 1.21k | while (mask) { | 120 | 1.17k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 1.17k | func(bit_pos); | 122 | 1.17k | mask = mask & (mask - 1); | 123 | 1.17k | } | 124 | 39 | #endif | 125 | 39 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE11EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 734 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 1.54k | while (mask) { | 120 | 808 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 808 | func(bit_pos); | 122 | 808 | mask = mask & (mask - 1); | 123 | 808 | } | 124 | 734 | #endif | 125 | 734 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE25EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 96.6k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 707k | while (mask) { | 120 | 611k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 611k | func(bit_pos); | 122 | 611k | mask = mask & (mask - 1); | 123 | 611k | } | 124 | 96.6k | #endif | 125 | 96.6k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE25EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 228k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 4.46M | while (mask) { | 120 | 4.23M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 4.23M | func(bit_pos); | 122 | 4.23M | mask = mask & (mask - 1); | 123 | 4.23M | } | 124 | 228k | #endif | 125 | 228k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE12EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 96 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 2.62k | while (mask) { | 120 | 2.52k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 2.52k | func(bit_pos); | 122 | 2.52k | mask = mask & (mask - 1); | 123 | 2.52k | } | 124 | 96 | #endif | 125 | 96 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE12EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 306 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 640 | while (mask) { | 120 | 334 | const auto bit_pos = __builtin_ctzll(mask); | 121 | 334 | func(bit_pos); | 122 | 334 | mask = mask & (mask - 1); | 123 | 334 | } | 124 | 306 | #endif | 125 | 306 | } |
_ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE26EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 16.8k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 473k | while (mask) { | 120 | 456k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 456k | func(bit_pos); | 122 | 456k | mask = mask & (mask - 1); | 123 | 456k | } | 124 | 16.8k | #endif | 125 | 16.8k | } |
_ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE26EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 71.2k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 1.80M | while (mask) { | 120 | 1.73M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 1.73M | func(bit_pos); | 122 | 1.73M | mask = mask & (mask - 1); | 123 | 1.73M | } | 124 | 71.2k | #endif | 125 | 71.2k | } |
Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE27EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE27EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j _ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE42EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Line | Count | Source | 109 | 2.51k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 80.2k | while (mask) { | 120 | 77.6k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 77.6k | func(bit_pos); | 122 | 77.6k | mask = mask & (mask - 1); | 123 | 77.6k | } | 124 | 2.51k | #endif | 125 | 2.51k | } |
Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE42EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE38EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j _ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE38EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j Line | Count | Source | 109 | 342 | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 6.12k | while (mask) { | 120 | 5.78k | const auto bit_pos = __builtin_ctzll(mask); | 121 | 5.78k | func(bit_pos); | 122 | 5.78k | mask = mask & (mask - 1); | 123 | 5.78k | } | 124 | 342 | #endif | 125 | 342 | } |
Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNKS_12ColumnVectorILNS_13PrimitiveTypeE39EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEElEUlmE_EEvT_j Unexecuted instantiation: _ZN5doris4simd25iterate_through_bits_maskIZNS_12ColumnVectorILNS_13PrimitiveTypeE39EE6filterERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEEUlmE_EEvT_j segment_iterator.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_10segment_v215SegmentIterator33_evaluate_vectorization_predicateEPttE3$_0EEvT_j Line | Count | Source | 109 | 896k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 9.61M | while (mask) { | 120 | 8.71M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 8.71M | func(bit_pos); | 122 | 8.71M | mask = mask & (mask - 1); | 123 | 8.71M | } | 124 | 896k | #endif | 125 | 896k | } |
segment_iterator.cpp:_ZN5doris4simd25iterate_through_bits_maskIZNS_10segment_v215SegmentIterator28_evaluate_common_expr_filterEPttRKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb1EEELm16ELm15EEEE3$_0EEvT_j Line | Count | Source | 109 | 204k | void iterate_through_bits_mask(Func func, decltype(bytes_mask_to_bits_mask(nullptr)) mask) { | 110 | | #if defined(__ARM_NEON) && defined(__aarch64__) | 111 | | mask &= 0x8888'8888'8888'8888ULL; | 112 | | while (mask) { | 113 | | const auto index = __builtin_ctzll(mask) >> 2; | 114 | | func(index); | 115 | | mask &= mask - 1; | 116 | | } | 117 | | | 118 | | #else | 119 | 3.28M | while (mask) { | 120 | 3.08M | const auto bit_pos = __builtin_ctzll(mask); | 121 | 3.08M | func(bit_pos); | 122 | 3.08M | mask = mask & (mask - 1); | 123 | 3.08M | } | 124 | 204k | #endif | 125 | 204k | } |
|
126 | | |
127 | | template <typename T> |
128 | | requires requires { std::is_unsigned_v<T>; } |
129 | 968k | inline T count_zero_num(const int8_t* __restrict data, T size) { |
130 | 968k | T num = 0; |
131 | 968k | const int8_t* end = data + size; |
132 | | #if defined(__ARM_NEON) |
133 | | const int8_t* end64 = data + (size / 64 * 64); |
134 | | |
135 | | for (; data < end64; data += 64) { |
136 | | auto a0 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data)), 7); |
137 | | auto a1 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 16)), 7); |
138 | | auto a2 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 32)), 7); |
139 | | auto a3 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 48)), 7); |
140 | | |
141 | | auto s0 = vaddq_u8(a0, a1); |
142 | | auto s1 = vaddq_u8(a2, a3); |
143 | | auto s = vaddq_u8(s0, s1); |
144 | | num += vaddvq_u8(s); |
145 | | } |
146 | | #elif defined(__SSE2__) && defined(__POPCNT__) |
147 | | const __m128i zero16 = _mm_setzero_si128(); |
148 | 968k | const int8_t* end64 = data + (size / 64 * 64); |
149 | | |
150 | 16.1M | for (; data < end64; data += 64) { |
151 | 15.2M | num += __builtin_popcountll( |
152 | 15.2M | static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( |
153 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data)), zero16))) | |
154 | 15.2M | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( |
155 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 16)), zero16))) |
156 | 15.2M | << 16U) | |
157 | 15.2M | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( |
158 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 32)), zero16))) |
159 | 15.2M | << 32U) | |
160 | 15.2M | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( |
161 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 48)), zero16))) |
162 | 15.2M | << 48U)); |
163 | 15.2M | } |
164 | 968k | #endif |
165 | 18.1M | for (; data < end; ++data) { |
166 | 17.1M | num += (*data == 0); |
167 | 17.1M | } |
168 | 968k | return num; |
169 | 968k | } _ZN5doris4simd14count_zero_numImQrqXsr3stdE13is_unsigned_vIT_EEEES2_PKaS2_ Line | Count | Source | 129 | 856k | inline T count_zero_num(const int8_t* __restrict data, T size) { | 130 | 856k | T num = 0; | 131 | 856k | const int8_t* end = data + size; | 132 | | #if defined(__ARM_NEON) | 133 | | const int8_t* end64 = data + (size / 64 * 64); | 134 | | | 135 | | for (; data < end64; data += 64) { | 136 | | auto a0 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data)), 7); | 137 | | auto a1 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 16)), 7); | 138 | | auto a2 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 32)), 7); | 139 | | auto a3 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 48)), 7); | 140 | | | 141 | | auto s0 = vaddq_u8(a0, a1); | 142 | | auto s1 = vaddq_u8(a2, a3); | 143 | | auto s = vaddq_u8(s0, s1); | 144 | | num += vaddvq_u8(s); | 145 | | } | 146 | | #elif defined(__SSE2__) && defined(__POPCNT__) | 147 | | const __m128i zero16 = _mm_setzero_si128(); | 148 | 856k | const int8_t* end64 = data + (size / 64 * 64); | 149 | | | 150 | 16.0M | for (; data < end64; data += 64) { | 151 | 15.2M | num += __builtin_popcountll( | 152 | 15.2M | static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 153 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data)), zero16))) | | 154 | 15.2M | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 155 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 16)), zero16))) | 156 | 15.2M | << 16U) | | 157 | 15.2M | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 158 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 32)), zero16))) | 159 | 15.2M | << 32U) | | 160 | 15.2M | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 161 | 15.2M | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 48)), zero16))) | 162 | 15.2M | << 48U)); | 163 | 15.2M | } | 164 | 856k | #endif | 165 | 16.7M | for (; data < end; ++data) { | 166 | 15.8M | num += (*data == 0); | 167 | 15.8M | } | 168 | 856k | return num; | 169 | 856k | } |
_ZN5doris4simd14count_zero_numIlQrqXsr3stdE13is_unsigned_vIT_EEEES2_PKaS2_ Line | Count | Source | 129 | 54.9k | inline T count_zero_num(const int8_t* __restrict data, T size) { | 130 | 54.9k | T num = 0; | 131 | 54.9k | const int8_t* end = data + size; | 132 | | #if defined(__ARM_NEON) | 133 | | const int8_t* end64 = data + (size / 64 * 64); | 134 | | | 135 | | for (; data < end64; data += 64) { | 136 | | auto a0 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data)), 7); | 137 | | auto a1 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 16)), 7); | 138 | | auto a2 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 32)), 7); | 139 | | auto a3 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 48)), 7); | 140 | | | 141 | | auto s0 = vaddq_u8(a0, a1); | 142 | | auto s1 = vaddq_u8(a2, a3); | 143 | | auto s = vaddq_u8(s0, s1); | 144 | | num += vaddvq_u8(s); | 145 | | } | 146 | | #elif defined(__SSE2__) && defined(__POPCNT__) | 147 | | const __m128i zero16 = _mm_setzero_si128(); | 148 | 54.9k | const int8_t* end64 = data + (size / 64 * 64); | 149 | | | 150 | 54.9k | for (; data < end64; data += 64) { | 151 | 0 | num += __builtin_popcountll( | 152 | 0 | static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 153 | 0 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data)), zero16))) | | 154 | 0 | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 155 | 0 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 16)), zero16))) | 156 | 0 | << 16U) | | 157 | 0 | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 158 | 0 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 32)), zero16))) | 159 | 0 | << 32U) | | 160 | 0 | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 161 | 0 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 48)), zero16))) | 162 | 0 | << 48U)); | 163 | 0 | } | 164 | 54.9k | #endif | 165 | 109k | for (; data < end; ++data) { | 166 | 55.0k | num += (*data == 0); | 167 | 55.0k | } | 168 | 54.9k | return num; | 169 | 54.9k | } |
_ZN5doris4simd14count_zero_numIiQrqXsr3stdE13is_unsigned_vIT_EEEES2_PKaS2_ Line | Count | Source | 129 | 57.2k | inline T count_zero_num(const int8_t* __restrict data, T size) { | 130 | 57.2k | T num = 0; | 131 | 57.2k | const int8_t* end = data + size; | 132 | | #if defined(__ARM_NEON) | 133 | | const int8_t* end64 = data + (size / 64 * 64); | 134 | | | 135 | | for (; data < end64; data += 64) { | 136 | | auto a0 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data)), 7); | 137 | | auto a1 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 16)), 7); | 138 | | auto a2 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 32)), 7); | 139 | | auto a3 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 48)), 7); | 140 | | | 141 | | auto s0 = vaddq_u8(a0, a1); | 142 | | auto s1 = vaddq_u8(a2, a3); | 143 | | auto s = vaddq_u8(s0, s1); | 144 | | num += vaddvq_u8(s); | 145 | | } | 146 | | #elif defined(__SSE2__) && defined(__POPCNT__) | 147 | | const __m128i zero16 = _mm_setzero_si128(); | 148 | 57.2k | const int8_t* end64 = data + (size / 64 * 64); | 149 | | | 150 | 62.9k | for (; data < end64; data += 64) { | 151 | 5.66k | num += __builtin_popcountll( | 152 | 5.66k | static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 153 | 5.66k | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data)), zero16))) | | 154 | 5.66k | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 155 | 5.66k | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 16)), zero16))) | 156 | 5.66k | << 16U) | | 157 | 5.66k | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 158 | 5.66k | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 32)), zero16))) | 159 | 5.66k | << 32U) | | 160 | 5.66k | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_cmpeq_epi8( | 161 | 5.66k | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 48)), zero16))) | 162 | 5.66k | << 48U)); | 163 | 5.66k | } | 164 | 57.2k | #endif | 165 | 1.28M | for (; data < end; ++data) { | 166 | 1.22M | num += (*data == 0); | 167 | 1.22M | } | 168 | 57.2k | return num; | 169 | 57.2k | } |
|
170 | | |
171 | | template <typename T> |
172 | | requires requires { std::is_unsigned_v<T>; } |
173 | 490 | inline T count_zero_num(const int8_t* __restrict data, const uint8_t* __restrict null_map, T size) { |
174 | 490 | T num = 0; |
175 | 490 | const int8_t* end = data + size; |
176 | | #if defined(__ARM_NEON) |
177 | | const int8_t* end64 = data + (size / 64 * 64); |
178 | | |
179 | | for (; data < end64; data += 64, null_map += 64) { |
180 | | auto a0 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data)), 7); |
181 | | auto a1 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 16)), 7); |
182 | | auto a2 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 32)), 7); |
183 | | auto a3 = vshrq_n_u8(vceqzq_s8(vld1q_s8(data + 48)), 7); |
184 | | |
185 | | auto r0 = vorrq_u8(a0, vld1q_u8(null_map)); |
186 | | auto r1 = vorrq_u8(a1, vld1q_u8(null_map + 16)); |
187 | | auto r2 = vorrq_u8(a2, vld1q_u8(null_map + 32)); |
188 | | auto r3 = vorrq_u8(a3, vld1q_u8(null_map + 48)); |
189 | | |
190 | | auto s0 = vaddq_u8(r0, r1); |
191 | | auto s1 = vaddq_u8(r2, r3); |
192 | | auto s = vaddq_u8(s0, s1); |
193 | | num += vaddvq_u8(s); |
194 | | } |
195 | | #elif defined(__SSE2__) && defined(__POPCNT__) |
196 | | const __m128i zero16 = _mm_setzero_si128(); |
197 | 490 | const __m128i one16 = _mm_set1_epi8(1); |
198 | 490 | const int8_t* end64 = data + (size / 64 * 64); |
199 | | |
200 | 494 | for (; data < end64; data += 64, null_map += 64) { |
201 | 4 | num += __builtin_popcountll( |
202 | 4 | static_cast<uint64_t>(_mm_movemask_epi8(_mm_or_si128( |
203 | 4 | _mm_cmpeq_epi8(_mm_loadu_si128(reinterpret_cast<const __m128i*>(data)), |
204 | 4 | zero16), |
205 | 4 | _mm_cmpeq_epi8(_mm_loadu_si128(reinterpret_cast<const __m128i*>(null_map)), |
206 | 4 | one16)))) | |
207 | 4 | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_or_si128( |
208 | 4 | _mm_cmpeq_epi8( |
209 | 4 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 16)), |
210 | 4 | zero16), |
211 | 4 | _mm_cmpeq_epi8( |
212 | 4 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(null_map + 16)), |
213 | 4 | one16)))) |
214 | 4 | << 16U) | |
215 | 4 | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_or_si128( |
216 | 4 | _mm_cmpeq_epi8( |
217 | 4 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 32)), |
218 | 4 | zero16), |
219 | 4 | _mm_cmpeq_epi8( |
220 | 4 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(null_map + 32)), |
221 | 4 | one16)))) |
222 | 4 | << 32U) | |
223 | 4 | (static_cast<uint64_t>(_mm_movemask_epi8(_mm_or_si128( |
224 | 4 | _mm_cmpeq_epi8(_mm_loadu_si128(reinterpret_cast<const __m128i*>(data + 48)), |
225 | 4 | zero16), |
226 | 4 | _mm_cmpeq_epi8( |
227 | 4 | _mm_loadu_si128(reinterpret_cast<const __m128i*>(null_map + 48)), |
228 | 4 | one16))))) |
229 | 4 | << 48U); |
230 | 4 | } |
231 | 490 | #endif |
232 | 2.28k | for (; data < end; ++data, ++null_map) { |
233 | 1.79k | num += ((*data == 0) | *null_map); |
234 | 1.79k | } |
235 | 490 | return num; |
236 | 490 | } |
237 | | |
238 | | // TODO: compare with different SIMD implements |
239 | | template <class T> |
240 | 570k | static size_t find_byte(const std::vector<T>& vec, size_t start, T byte) { |
241 | 570k | if (start >= vec.size()) { |
242 | 30.3k | return start; |
243 | 30.3k | } |
244 | 540k | const void* p = std::memchr((const void*)(vec.data() + start), byte, vec.size() - start); |
245 | 540k | if (p == nullptr) { |
246 | 75.5k | return vec.size(); |
247 | 75.5k | } |
248 | 464k | return (T*)p - vec.data(); |
249 | 540k | } Unexecuted instantiation: unity_0_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: block.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: columns_common.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ column.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Line | Count | Source | 240 | 481k | static size_t find_byte(const std::vector<T>& vec, size_t start, T byte) { | 241 | 481k | if (start >= vec.size()) { | 242 | 23.3k | return start; | 243 | 23.3k | } | 244 | 457k | const void* p = std::memchr((const void*)(vec.data() + start), byte, vec.size() - start); | 245 | 457k | if (p == nullptr) { | 246 | 65.4k | return vec.size(); | 247 | 65.4k | } | 248 | 392k | return (T*)p - vec.data(); | 249 | 457k | } |
column_decimal.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Line | Count | Source | 240 | 231 | static size_t find_byte(const std::vector<T>& vec, size_t start, T byte) { | 241 | 231 | if (start >= vec.size()) { | 242 | 0 | return start; | 243 | 0 | } | 244 | 231 | const void* p = std::memchr((const void*)(vec.data() + start), byte, vec.size() - start); | 245 | 231 | if (p == nullptr) { | 246 | 231 | return vec.size(); | 247 | 231 | } | 248 | 0 | return (T*)p - vec.data(); | 249 | 231 | } |
Unexecuted instantiation: column_array.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ column_vector.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Line | Count | Source | 240 | 49.8k | static size_t find_byte(const std::vector<T>& vec, size_t start, T byte) { | 241 | 49.8k | if (start >= vec.size()) { | 242 | 6.29k | return start; | 243 | 6.29k | } | 244 | 43.5k | const void* p = std::memchr((const void*)(vec.data() + start), byte, vec.size() - start); | 245 | 43.5k | if (p == nullptr) { | 246 | 8.14k | return vec.size(); | 247 | 8.14k | } | 248 | 35.3k | return (T*)p - vec.data(); | 249 | 43.5k | } |
column_nullable.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Line | Count | Source | 240 | 712 | static size_t find_byte(const std::vector<T>& vec, size_t start, T byte) { | 241 | 712 | if (start >= vec.size()) { | 242 | 232 | return start; | 243 | 232 | } | 244 | 480 | const void* p = std::memchr((const void*)(vec.data() + start), byte, vec.size() - start); | 245 | 480 | if (p == nullptr) { | 246 | 252 | return vec.size(); | 247 | 252 | } | 248 | 228 | return (T*)p - vec.data(); | 249 | 480 | } |
column_string.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Line | Count | Source | 240 | 38.7k | static size_t find_byte(const std::vector<T>& vec, size_t start, T byte) { | 241 | 38.7k | if (start >= vec.size()) { | 242 | 411 | return start; | 243 | 411 | } | 244 | 38.3k | const void* p = std::memchr((const void*)(vec.data() + start), byte, vec.size() - start); | 245 | 38.3k | if (p == nullptr) { | 246 | 1.46k | return vec.size(); | 247 | 1.46k | } | 248 | 36.8k | return (T*)p - vec.data(); | 249 | 38.3k | } |
Unexecuted instantiation: data_type_nullable_serde.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: data_type_map_serde.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: column_map.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: column_struct.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: column_variant.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: column_varbinary.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_13_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_1_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_7_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_6_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_12_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_11_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_10_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_2_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_9_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_5_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_8_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_4_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_3_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: hashjoin_build_sink.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: join_build_sink_operator.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: operator.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: partitioned_aggregation_sink_operator.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: scan_operator.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: vfile_result_writer.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_30_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_29_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_28_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_27_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_26_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_25_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_24_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_23_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_21_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_20_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_19_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_18_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_17_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_16_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_15_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: unity_14_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: ai_functions.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: function_date_or_datetime_computation.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: function_datetime_floor_ceil.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: uuid.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: vorc_reader.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: vparquet_reader.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: parquet_common.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: paimon_predicate_converter.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: parquet_scan.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: common.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: orc_search_argument.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: vertical_block_reader.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: schema_change.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: column_writer.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: segment_iterator.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: segment_writer.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: variant_stats_calculator.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: descriptors.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: exec_env_init.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: fragment_mgr.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: query_context.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: result_block_buffer.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: record_batch_queue.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: runtime_state.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: workload_group.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: workload_group_manager.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: query_task_controller.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: point_query_executor.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: group_commit_mgr.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: ann_index.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ Unexecuted instantiation: ann_topn_runtime.cpp:_ZN5doris4simdL9find_byteIhEEmRKSt6vectorIT_SaIS3_EEmS3_ |
250 | | |
251 | | template <class T> |
252 | 0 | static size_t find_byte(const T* data, size_t start, size_t end, T byte) { |
253 | 0 | if (start >= end) { |
254 | 0 | return start; |
255 | 0 | } |
256 | 0 | const void* p = std::memchr((const void*)(data + start), byte, end - start); |
257 | 0 | if (p == nullptr) { |
258 | 0 | return end; |
259 | 0 | } |
260 | 0 | return (T*)p - data; |
261 | 0 | } Unexecuted instantiation: unity_0_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: block.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: columns_common.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_decimal.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_array.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_vector.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_nullable.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_string.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: data_type_nullable_serde.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: data_type_map_serde.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_map.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_struct.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_variant.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_varbinary.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_13_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_1_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_7_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_6_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_12_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_11_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_10_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_2_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_9_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_5_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_8_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_4_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_3_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: hashjoin_build_sink.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: join_build_sink_operator.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: operator.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: partitioned_aggregation_sink_operator.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: scan_operator.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: vfile_result_writer.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_30_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_29_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_28_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_27_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_26_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_25_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_24_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_23_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_21_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_20_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_19_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_18_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_17_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_16_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_15_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: unity_14_cxx.cxx:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: ai_functions.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: function_date_or_datetime_computation.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: function_datetime_floor_ceil.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: uuid.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: vorc_reader.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: vparquet_reader.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: parquet_common.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: paimon_predicate_converter.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: parquet_scan.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: common.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: orc_search_argument.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: vertical_block_reader.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: schema_change.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: column_writer.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: segment_iterator.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: segment_writer.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: variant_stats_calculator.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: descriptors.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: exec_env_init.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: fragment_mgr.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: query_context.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: result_block_buffer.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: record_batch_queue.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: runtime_state.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: workload_group.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: workload_group_manager.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: query_task_controller.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: point_query_executor.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: group_commit_mgr.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: ann_index.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ Unexecuted instantiation: ann_topn_runtime.cpp:_ZN5doris4simdL9find_byteIhEEmPKT_mmS2_ |
262 | | |
263 | 285k | inline size_t find_one(const std::vector<uint8_t>& vec, size_t start) { |
264 | 285k | return find_byte<uint8_t>(vec, start, 1); |
265 | 285k | } |
266 | | |
267 | 93 | inline size_t find_one(const uint8_t* data, size_t start, size_t end) { |
268 | 93 | return find_byte<uint8_t>(data, start, end, 1); |
269 | 93 | } |
270 | | |
271 | 310k | inline size_t find_zero(const std::vector<uint8_t>& vec, size_t start) { |
272 | 310k | return find_byte<uint8_t>(vec, start, 0); |
273 | 310k | } |
274 | | |
275 | 1.86M | inline bool contain_one(const uint8_t* __restrict data, size_t size) { |
276 | 1.86M | size_t i = 0; |
277 | 1.86M | #if defined(__AVX2__) |
278 | 58.9M | for (; i + 32 <= size; i += 32) { |
279 | 57.2M | __m256i chunk = _mm256_loadu_si256(reinterpret_cast<const __m256i*>(data + i)); |
280 | 57.2M | if (!_mm256_testz_si256(chunk, chunk)) { |
281 | 155k | return true; |
282 | 155k | } |
283 | 57.2M | } |
284 | | #elif defined(__SSE2__) |
285 | | const __m128i zero = _mm_setzero_si128(); |
286 | | for (; i + 16 <= size; i += 16) { |
287 | | __m128i chunk = _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + i)); |
288 | | if (_mm_movemask_epi8(_mm_cmpeq_epi8(chunk, zero)) != 0xFFFF) { |
289 | | return true; |
290 | | } |
291 | | } |
292 | | #endif |
293 | 13.1M | for (; i < size; ++i) { |
294 | 11.5M | if (data[i]) { |
295 | 188k | return true; |
296 | 188k | } |
297 | 11.5M | } |
298 | 1.52M | return false; |
299 | 1.71M | } |
300 | | |
301 | 72.7k | inline bool contain_zero(const uint8_t* __restrict data, size_t size) { |
302 | 72.7k | size_t i = 0; |
303 | 72.7k | #if defined(__AVX2__) |
304 | 72.7k | const __m256i zero = _mm256_setzero_si256(); |
305 | 711k | for (; i + 32 <= size; i += 32) { |
306 | 644k | __m256i chunk = _mm256_loadu_si256(reinterpret_cast<const __m256i*>(data + i)); |
307 | 644k | if (_mm256_movemask_epi8(_mm256_cmpeq_epi8(chunk, zero)) != 0) { |
308 | 4.93k | return true; |
309 | 4.93k | } |
310 | 644k | } |
311 | | #elif defined(__SSE2__) |
312 | | const __m128i zero = _mm_setzero_si128(); |
313 | | for (; i + 16 <= size; i += 16) { |
314 | | __m128i chunk = _mm_loadu_si128(reinterpret_cast<const __m128i*>(data + i)); |
315 | | if (_mm_movemask_epi8(_mm_cmpeq_epi8(chunk, zero)) != 0) { |
316 | | return true; |
317 | | } |
318 | | } |
319 | | #endif |
320 | 207k | for (; i < size; ++i) { |
321 | 176k | if (!data[i]) { |
322 | 36.6k | return true; |
323 | 36.6k | } |
324 | 176k | } |
325 | 31.2k | return false; |
326 | 67.8k | } |
327 | | |
328 | | } // namespace doris::simd |