be/src/exprs/function/if.h
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 | | // This file is copied from |
18 | | // https://github.com/ClickHouse/ClickHouse/blob/master/src/Functions/If.cpp |
19 | | // and modified by Doris |
20 | | |
21 | | #include <glog/logging.h> |
22 | | #include <stddef.h> |
23 | | |
24 | | #include <boost/iterator/iterator_facade.hpp> |
25 | | |
26 | | #include "core/column/column.h" |
27 | | #include "core/column/column_vector.h" |
28 | | #include "core/data_type/data_type.h" |
29 | | #include "core/data_type/primitive_type.h" |
30 | | #include "core/pod_array_fwd.h" |
31 | | #include "core/types.h" |
32 | | #include "exprs/function/function_helpers.h" |
33 | | |
34 | | #ifdef __ARM_NEON |
35 | | #include <arm_acle.h> |
36 | | #include <arm_neon.h> |
37 | | #endif |
38 | | |
39 | | namespace doris { |
40 | | |
41 | | template <PrimitiveType PType> |
42 | | struct NumIfImpl { |
43 | | private: |
44 | | using Type = typename PrimitiveTypeTraits<PType>::CppType; |
45 | | using ArrayCond = PaddedPODArray<UInt8>; |
46 | | using Array = PaddedPODArray<Type>; |
47 | | using ColVecT = typename PrimitiveTypeTraits<PType>::ColumnType; |
48 | | |
49 | | public: |
50 | 1.69k | static const Array& get_data_from_column_const(const ColumnConst* column) { |
51 | 1.69k | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); |
52 | 1.69k | } _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 143 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 143 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 143 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 1.29k | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 1.29k | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 1.29k | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 4 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 4 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 113 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 113 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 113 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 72 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 72 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 72 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 4 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 4 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 4 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 4 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 13 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 13 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 13 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE26get_data_from_column_constEPKNS_11ColumnConstE _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 5 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 5 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 5 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE26get_data_from_column_constEPKNS_11ColumnConstE _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE26get_data_from_column_constEPKNS_11ColumnConstE Line | Count | Source | 50 | 46 | static const Array& get_data_from_column_const(const ColumnConst* column) { | 51 | 46 | return assert_cast<const ColVecT&>(column->get_data_column()).get_data(); | 52 | 46 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE26get_data_from_column_constEPKNS_11ColumnConstE Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE26get_data_from_column_constEPKNS_11ColumnConstE |
53 | | |
54 | 1.14k | static auto create_column(const ArrayCond& cond, int scale) { |
55 | 1.14k | if constexpr (is_decimal(PType)) { |
56 | 53 | return ColVecT::create(cond.size(), scale); |
57 | 1.08k | } else { |
58 | 1.08k | return ColVecT::create(cond.size()); |
59 | 1.08k | } |
60 | 1.14k | } _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 160 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 160 | } else { | 58 | 160 | return ColVecT::create(cond.size()); | 59 | 160 | } | 60 | 160 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 690 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 690 | } else { | 58 | 690 | return ColVecT::create(cond.size()); | 59 | 690 | } | 60 | 690 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 4 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 4 | } else { | 58 | 4 | return ColVecT::create(cond.size()); | 59 | 4 | } | 60 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 125 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 125 | } else { | 58 | 125 | return ColVecT::create(cond.size()); | 59 | 125 | } | 60 | 125 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 79 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 79 | } else { | 58 | 79 | return ColVecT::create(cond.size()); | 59 | 79 | } | 60 | 79 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 4 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 4 | } else { | 58 | 4 | return ColVecT::create(cond.size()); | 59 | 4 | } | 60 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 4 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 4 | } else { | 58 | 4 | return ColVecT::create(cond.size()); | 59 | 4 | } | 60 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 22 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | | if constexpr (is_decimal(PType)) { | 56 | | return ColVecT::create(cond.size(), scale); | 57 | 22 | } else { | 58 | 22 | return ColVecT::create(cond.size()); | 59 | 22 | } | 60 | 22 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 5 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | 5 | if constexpr (is_decimal(PType)) { | 56 | 5 | return ColVecT::create(cond.size(), scale); | 57 | | } else { | 58 | | return ColVecT::create(cond.size()); | 59 | | } | 60 | 5 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 47 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | 47 | if constexpr (is_decimal(PType)) { | 56 | 47 | return ColVecT::create(cond.size(), scale); | 57 | | } else { | 58 | | return ColVecT::create(cond.size()); | 59 | | } | 60 | 47 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Line | Count | Source | 54 | 1 | static auto create_column(const ArrayCond& cond, int scale) { | 55 | 1 | if constexpr (is_decimal(PType)) { | 56 | 1 | return ColVecT::create(cond.size(), scale); | 57 | | } else { | 58 | | return ColVecT::create(cond.size()); | 59 | | } | 60 | 1 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE13create_columnERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEEi |
61 | | |
62 | | static ColumnPtr execute_if(const ArrayCond& cond, const ColumnPtr& then_col, |
63 | 1.14k | const ColumnPtr& else_col, int result_scale) { |
64 | 1.14k | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { |
65 | 303 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { |
66 | 54 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), |
67 | 54 | result_scale); |
68 | 249 | } else if (const auto* col_const_else = |
69 | 249 | check_and_get_column_const<ColVecT>(else_col.get())) { |
70 | 249 | return execute_impl<false, true>(cond, col_then->get_data(), |
71 | 249 | get_data_from_column_const(col_const_else), |
72 | 249 | result_scale); |
73 | 249 | } |
74 | 838 | } else if (const auto* col_const_then = |
75 | 838 | check_and_get_column_const<ColVecT>(then_col.get())) { |
76 | 838 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { |
77 | 228 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), |
78 | 228 | col_else->get_data(), result_scale); |
79 | 610 | } else if (const auto* col_const_else = |
80 | 610 | check_and_get_column_const<ColVecT>(else_col.get())) { |
81 | 610 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), |
82 | 610 | get_data_from_column_const(col_const_else), |
83 | 610 | result_scale); |
84 | 610 | } |
85 | 838 | } |
86 | 0 | return nullptr; |
87 | 1.14k | } _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 160 | const ColumnPtr& else_col, int result_scale) { | 64 | 160 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 115 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 17 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 17 | result_scale); | 68 | 98 | } else if (const auto* col_const_else = | 69 | 98 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 98 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 98 | get_data_from_column_const(col_const_else), | 72 | 98 | result_scale); | 73 | 98 | } | 74 | 115 | } else if (const auto* col_const_then = | 75 | 45 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 45 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 45 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 45 | col_else->get_data(), result_scale); | 79 | 45 | } else if (const auto* col_const_else = | 80 | 0 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 0 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 0 | get_data_from_column_const(col_const_else), | 83 | 0 | result_scale); | 84 | 0 | } | 85 | 45 | } | 86 | 0 | return nullptr; | 87 | 160 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 690 | const ColumnPtr& else_col, int result_scale) { | 64 | 690 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 85 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 1 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 1 | result_scale); | 68 | 84 | } else if (const auto* col_const_else = | 69 | 84 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 84 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 84 | get_data_from_column_const(col_const_else), | 72 | 84 | result_scale); | 73 | 84 | } | 74 | 605 | } else if (const auto* col_const_then = | 75 | 605 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 605 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 1 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 1 | col_else->get_data(), result_scale); | 79 | 604 | } else if (const auto* col_const_else = | 80 | 604 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 604 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 604 | get_data_from_column_const(col_const_else), | 83 | 604 | result_scale); | 84 | 604 | } | 85 | 605 | } | 86 | 0 | return nullptr; | 87 | 690 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 4 | const ColumnPtr& else_col, int result_scale) { | 64 | 4 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 2 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 1 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 1 | result_scale); | 68 | 1 | } else if (const auto* col_const_else = | 69 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 1 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 1 | get_data_from_column_const(col_const_else), | 72 | 1 | result_scale); | 73 | 1 | } | 74 | 2 | } else if (const auto* col_const_then = | 75 | 2 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 2 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 1 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 1 | col_else->get_data(), result_scale); | 79 | 1 | } else if (const auto* col_const_else = | 80 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 1 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 1 | get_data_from_column_const(col_const_else), | 83 | 1 | result_scale); | 84 | 1 | } | 85 | 2 | } | 86 | 0 | return nullptr; | 87 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 125 | const ColumnPtr& else_col, int result_scale) { | 64 | 125 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 17 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 13 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 13 | result_scale); | 68 | 13 | } else if (const auto* col_const_else = | 69 | 4 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 4 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 4 | get_data_from_column_const(col_const_else), | 72 | 4 | result_scale); | 73 | 4 | } | 74 | 108 | } else if (const auto* col_const_then = | 75 | 108 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 108 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 107 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 107 | col_else->get_data(), result_scale); | 79 | 107 | } else if (const auto* col_const_else = | 80 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 1 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 1 | get_data_from_column_const(col_const_else), | 83 | 1 | result_scale); | 84 | 1 | } | 85 | 108 | } | 86 | 0 | return nullptr; | 87 | 125 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 79 | const ColumnPtr& else_col, int result_scale) { | 64 | 79 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 15 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 8 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 8 | result_scale); | 68 | 8 | } else if (const auto* col_const_else = | 69 | 7 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 7 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 7 | get_data_from_column_const(col_const_else), | 72 | 7 | result_scale); | 73 | 7 | } | 74 | 64 | } else if (const auto* col_const_then = | 75 | 64 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 64 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 63 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 63 | col_else->get_data(), result_scale); | 79 | 63 | } else if (const auto* col_const_else = | 80 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 1 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 1 | get_data_from_column_const(col_const_else), | 83 | 1 | result_scale); | 84 | 1 | } | 85 | 64 | } | 86 | 0 | return nullptr; | 87 | 79 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 4 | const ColumnPtr& else_col, int result_scale) { | 64 | 4 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 2 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 1 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 1 | result_scale); | 68 | 1 | } else if (const auto* col_const_else = | 69 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 1 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 1 | get_data_from_column_const(col_const_else), | 72 | 1 | result_scale); | 73 | 1 | } | 74 | 2 | } else if (const auto* col_const_then = | 75 | 2 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 2 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 1 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 1 | col_else->get_data(), result_scale); | 79 | 1 | } else if (const auto* col_const_else = | 80 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 1 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 1 | get_data_from_column_const(col_const_else), | 83 | 1 | result_scale); | 84 | 1 | } | 85 | 2 | } | 86 | 0 | return nullptr; | 87 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 4 | const ColumnPtr& else_col, int result_scale) { | 64 | 4 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 2 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 1 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 1 | result_scale); | 68 | 1 | } else if (const auto* col_const_else = | 69 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 1 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 1 | get_data_from_column_const(col_const_else), | 72 | 1 | result_scale); | 73 | 1 | } | 74 | 2 | } else if (const auto* col_const_then = | 75 | 2 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 2 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 1 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 1 | col_else->get_data(), result_scale); | 79 | 1 | } else if (const auto* col_const_else = | 80 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 1 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 1 | get_data_from_column_const(col_const_else), | 83 | 1 | result_scale); | 84 | 1 | } | 85 | 2 | } | 86 | 0 | return nullptr; | 87 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 22 | const ColumnPtr& else_col, int result_scale) { | 64 | 22 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 17 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 10 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 10 | result_scale); | 68 | 10 | } else if (const auto* col_const_else = | 69 | 7 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 7 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 7 | get_data_from_column_const(col_const_else), | 72 | 7 | result_scale); | 73 | 7 | } | 74 | 17 | } else if (const auto* col_const_then = | 75 | 5 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 5 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 4 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 4 | col_else->get_data(), result_scale); | 79 | 4 | } else if (const auto* col_const_else = | 80 | 1 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 1 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 1 | get_data_from_column_const(col_const_else), | 83 | 1 | result_scale); | 84 | 1 | } | 85 | 5 | } | 86 | 0 | return nullptr; | 87 | 22 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 5 | const ColumnPtr& else_col, int result_scale) { | 64 | 5 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 0 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 0 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 0 | result_scale); | 68 | 0 | } else if (const auto* col_const_else = | 69 | 0 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 0 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 0 | get_data_from_column_const(col_const_else), | 72 | 0 | result_scale); | 73 | 0 | } | 74 | 5 | } else if (const auto* col_const_then = | 75 | 5 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 5 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 5 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 5 | col_else->get_data(), result_scale); | 79 | 5 | } else if (const auto* col_const_else = | 80 | 0 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 0 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 0 | get_data_from_column_const(col_const_else), | 83 | 0 | result_scale); | 84 | 0 | } | 85 | 5 | } | 86 | 0 | return nullptr; | 87 | 5 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 47 | const ColumnPtr& else_col, int result_scale) { | 64 | 47 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 47 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 1 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 1 | result_scale); | 68 | 46 | } else if (const auto* col_const_else = | 69 | 46 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 46 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 46 | get_data_from_column_const(col_const_else), | 72 | 46 | result_scale); | 73 | 46 | } | 74 | 47 | } else if (const auto* col_const_then = | 75 | 0 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 0 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 0 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 0 | col_else->get_data(), result_scale); | 79 | 0 | } else if (const auto* col_const_else = | 80 | 0 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 0 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 0 | get_data_from_column_const(col_const_else), | 83 | 0 | result_scale); | 84 | 0 | } | 85 | 0 | } | 86 | 0 | return nullptr; | 87 | 47 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Line | Count | Source | 63 | 1 | const ColumnPtr& else_col, int result_scale) { | 64 | 1 | if (const auto* col_then = check_and_get_column<ColVecT>(then_col.get())) { | 65 | 1 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 66 | 1 | return execute_impl<false, false>(cond, col_then->get_data(), col_else->get_data(), | 67 | 1 | result_scale); | 68 | 1 | } else if (const auto* col_const_else = | 69 | 0 | check_and_get_column_const<ColVecT>(else_col.get())) { | 70 | 0 | return execute_impl<false, true>(cond, col_then->get_data(), | 71 | 0 | get_data_from_column_const(col_const_else), | 72 | 0 | result_scale); | 73 | 0 | } | 74 | 1 | } else if (const auto* col_const_then = | 75 | 0 | check_and_get_column_const<ColVecT>(then_col.get())) { | 76 | 0 | if (const auto* col_else = check_and_get_column<ColVecT>(else_col.get())) { | 77 | 0 | return execute_impl<true, false>(cond, get_data_from_column_const(col_const_then), | 78 | 0 | col_else->get_data(), result_scale); | 79 | 0 | } else if (const auto* col_const_else = | 80 | 0 | check_and_get_column_const<ColVecT>(else_col.get())) { | 81 | 0 | return execute_impl<true, true>(cond, get_data_from_column_const(col_const_then), | 82 | 0 | get_data_from_column_const(col_const_else), | 83 | 0 | result_scale); | 84 | 0 | } | 85 | 0 | } | 86 | 0 | return nullptr; | 87 | 1 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE10execute_ifERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS_3COWINS_7IColumnEE13immutable_ptrISB_EESG_i |
88 | | |
89 | | private: |
90 | | template <bool is_const_a, bool is_const_b> |
91 | | static ColumnPtr execute_impl(const ArrayCond& cond, const Array& a, const Array& b, |
92 | 1.14k | int result_scale) { |
93 | | #ifdef __ARM_NEON |
94 | | if constexpr (can_use_neon_opt()) { |
95 | | auto col_res = create_column(cond, result_scale); |
96 | | auto res = col_res->get_data().data(); |
97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); |
98 | | return col_res; |
99 | | } |
100 | | #endif |
101 | 1.14k | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); |
102 | 1.14k | } _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i Line | Count | Source | 92 | 17 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 17 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 17 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i Line | Count | Source | 92 | 98 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 98 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 98 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i Line | Count | Source | 92 | 45 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 45 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 45 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 84 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 84 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 84 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 604 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 604 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 604 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 13 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 13 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 13 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 4 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 4 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 107 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 107 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 107 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 8 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 8 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 8 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 7 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 7 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 7 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 63 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 63 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 63 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 10 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 10 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 10 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 7 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 7 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 7 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 4 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 4 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i Line | Count | Source | 92 | 5 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 5 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 5 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i Line | Count | Source | 92 | 46 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 46 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 46 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Line | Count | Source | 92 | 1 | int result_scale) { | 93 | | #ifdef __ARM_NEON | 94 | | if constexpr (can_use_neon_opt()) { | 95 | | auto col_res = create_column(cond, result_scale); | 96 | | auto res = col_res->get_data().data(); | 97 | | neon_execute<is_const_a, is_const_b>(cond.data(), res, a.data(), b.data(), cond.size()); | 98 | | return col_res; | 99 | | } | 100 | | #endif | 101 | 1 | return native_execute<is_const_a, is_const_b>(cond, a, b, result_scale); | 102 | 1 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE12execute_implILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE12execute_implILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE12execute_implILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE12execute_implILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i |
103 | | |
104 | | // res[i] = cond[i] ? a[i] : b[i]; |
105 | | template <bool is_const_a, bool is_const_b> |
106 | | static ColumnPtr native_execute(const ArrayCond& cond, const Array& a, const Array& b, |
107 | 1.14k | int result_scale) { |
108 | 1.14k | size_t size = cond.size(); |
109 | 1.14k | auto col_res = create_column(cond, result_scale); |
110 | 1.14k | auto& res = col_res->get_data(); |
111 | 97.6k | for (size_t i = 0; i < size; ++i) { |
112 | 96.4k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] |
113 | 96.4k | : b[index_check_const<is_const_b>(i)]; |
114 | 96.4k | } |
115 | 1.14k | return col_res; |
116 | 1.14k | } _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i Line | Count | Source | 107 | 17 | int result_scale) { | 108 | 17 | size_t size = cond.size(); | 109 | 17 | auto col_res = create_column(cond, result_scale); | 110 | 17 | auto& res = col_res->get_data(); | 111 | 70 | for (size_t i = 0; i < size; ++i) { | 112 | 53 | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 53 | : b[index_check_const<is_const_b>(i)]; | 114 | 53 | } | 115 | 17 | return col_res; | 116 | 17 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i Line | Count | Source | 107 | 98 | int result_scale) { | 108 | 98 | size_t size = cond.size(); | 109 | 98 | auto col_res = create_column(cond, result_scale); | 110 | 98 | auto& res = col_res->get_data(); | 111 | 7.99k | for (size_t i = 0; i < size; ++i) { | 112 | 7.89k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 7.89k | : b[index_check_const<is_const_b>(i)]; | 114 | 7.89k | } | 115 | 98 | return col_res; | 116 | 98 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i Line | Count | Source | 107 | 45 | int result_scale) { | 108 | 45 | size_t size = cond.size(); | 109 | 45 | auto col_res = create_column(cond, result_scale); | 110 | 45 | auto& res = col_res->get_data(); | 111 | 139 | for (size_t i = 0; i < size; ++i) { | 112 | 94 | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 94 | : b[index_check_const<is_const_b>(i)]; | 114 | 94 | } | 115 | 45 | return col_res; | 116 | 45 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE2EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEESF_SF_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 84 | int result_scale) { | 108 | 84 | size_t size = cond.size(); | 109 | 84 | auto col_res = create_column(cond, result_scale); | 110 | 84 | auto& res = col_res->get_data(); | 111 | 1.34k | for (size_t i = 0; i < size; ++i) { | 112 | 1.25k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.25k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.25k | } | 115 | 84 | return col_res; | 116 | 84 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE3EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IaLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 604 | int result_scale) { | 108 | 604 | size_t size = cond.size(); | 109 | 604 | auto col_res = create_column(cond, result_scale); | 110 | 604 | auto& res = col_res->get_data(); | 111 | 19.7k | for (size_t i = 0; i < size; ++i) { | 112 | 19.1k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 19.1k | : b[index_check_const<is_const_b>(i)]; | 114 | 19.1k | } | 115 | 604 | return col_res; | 116 | 604 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE4EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IsLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 13 | int result_scale) { | 108 | 13 | size_t size = cond.size(); | 109 | 13 | auto col_res = create_column(cond, result_scale); | 110 | 13 | auto& res = col_res->get_data(); | 111 | 2.13k | for (size_t i = 0; i < size; ++i) { | 112 | 2.11k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 2.11k | : b[index_check_const<is_const_b>(i)]; | 114 | 2.11k | } | 115 | 13 | return col_res; | 116 | 13 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 4 | int result_scale) { | 108 | 4 | size_t size = cond.size(); | 109 | 4 | auto col_res = create_column(cond, result_scale); | 110 | 4 | auto& res = col_res->get_data(); | 111 | 1.06k | for (size_t i = 0; i < size; ++i) { | 112 | 1.06k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.06k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.06k | } | 115 | 4 | return col_res; | 116 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 107 | int result_scale) { | 108 | 107 | size_t size = cond.size(); | 109 | 107 | auto col_res = create_column(cond, result_scale); | 110 | 107 | auto& res = col_res->get_data(); | 111 | 1.85k | for (size_t i = 0; i < size; ++i) { | 112 | 1.74k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.74k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.74k | } | 115 | 107 | return col_res; | 116 | 107 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE5EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IiLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 8 | int result_scale) { | 108 | 8 | size_t size = cond.size(); | 109 | 8 | auto col_res = create_column(cond, result_scale); | 110 | 8 | auto& res = col_res->get_data(); | 111 | 1.08k | for (size_t i = 0; i < size; ++i) { | 112 | 1.07k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.07k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.07k | } | 115 | 8 | return col_res; | 116 | 8 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 7 | int result_scale) { | 108 | 7 | size_t size = cond.size(); | 109 | 7 | auto col_res = create_column(cond, result_scale); | 110 | 7 | auto& res = col_res->get_data(); | 111 | 1.10k | for (size_t i = 0; i < size; ++i) { | 112 | 1.10k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.10k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.10k | } | 115 | 7 | return col_res; | 116 | 7 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 63 | int result_scale) { | 108 | 63 | size_t size = cond.size(); | 109 | 63 | auto col_res = create_column(cond, result_scale); | 110 | 63 | auto& res = col_res->get_data(); | 111 | 1.53k | for (size_t i = 0; i < size; ++i) { | 112 | 1.46k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.46k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.46k | } | 115 | 63 | return col_res; | 116 | 63 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE6EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IlLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE7EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_InLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE8EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IfLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 10 | int result_scale) { | 108 | 10 | size_t size = cond.size(); | 109 | 10 | auto col_res = create_column(cond, result_scale); | 110 | 10 | auto& res = col_res->get_data(); | 111 | 1.09k | for (size_t i = 0; i < size; ++i) { | 112 | 1.08k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.08k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.08k | } | 115 | 10 | return col_res; | 116 | 10 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 7 | int result_scale) { | 108 | 7 | size_t size = cond.size(); | 109 | 7 | auto col_res = create_column(cond, result_scale); | 110 | 7 | auto& res = col_res->get_data(); | 111 | 8.69k | for (size_t i = 0; i < size; ++i) { | 112 | 8.68k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 8.68k | : b[index_check_const<is_const_b>(i)]; | 114 | 8.68k | } | 115 | 7 | return col_res; | 116 | 7 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 4 | int result_scale) { | 108 | 4 | size_t size = cond.size(); | 109 | 4 | auto col_res = create_column(cond, result_scale); | 110 | 4 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 4 | return col_res; | 116 | 4 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE9EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 1.05k | for (size_t i = 0; i < size; ++i) { | 112 | 1.05k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1.05k | : b[index_check_const<is_const_b>(i)]; | 114 | 1.05k | } | 115 | 1 | return col_res; | 116 | 1 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE28EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIiEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i Line | Count | Source | 107 | 5 | int result_scale) { | 108 | 5 | size_t size = cond.size(); | 109 | 5 | auto col_res = create_column(cond, result_scale); | 110 | 5 | auto& res = col_res->get_data(); | 111 | 26 | for (size_t i = 0; i < size; ++i) { | 112 | 21 | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 21 | : b[index_check_const<is_const_b>(i)]; | 114 | 21 | } | 115 | 5 | return col_res; | 116 | 5 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE29EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIlEELm4096ESC_Lm16ELm15EEESK_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE20EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_14DecimalV2ValueELm4096ESC_Lm16ELm15EEESJ_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 2 | for (size_t i = 0; i < size; ++i) { | 112 | 1 | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1 | : b[index_check_const<is_const_b>(i)]; | 114 | 1 | } | 115 | 1 | return col_res; | 116 | 1 | } |
_ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i Line | Count | Source | 107 | 46 | int result_scale) { | 108 | 46 | size_t size = cond.size(); | 109 | 46 | auto col_res = create_column(cond, result_scale); | 110 | 46 | auto& res = col_res->get_data(); | 111 | 30.8k | for (size_t i = 0; i < size; ++i) { | 112 | 30.7k | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 30.7k | : b[index_check_const<is_const_b>(i)]; | 114 | 30.7k | } | 115 | 46 | return col_res; | 116 | 46 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE30EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_12Decimal128V3ELm4096ESC_Lm16ELm15EEESJ_i _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Line | Count | Source | 107 | 1 | int result_scale) { | 108 | 1 | size_t size = cond.size(); | 109 | 1 | auto col_res = create_column(cond, result_scale); | 110 | 1 | auto& res = col_res->get_data(); | 111 | 2 | for (size_t i = 0; i < size; ++i) { | 112 | 1 | res[i] = cond[i] ? a[index_check_const<is_const_a>(i)] | 113 | 1 | : b[index_check_const<is_const_b>(i)]; | 114 | 1 | } | 115 | 1 | return col_res; | 116 | 1 | } |
Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE35EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_7DecimalIN4wide7integerILm256EiEEEELm4096ESC_Lm16ELm15EEESN_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE11EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE25EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_15DateV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE26EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_11DateV2ValueINS_19DateTimeV2ValueTypeEEELm4096ESC_Lm16ELm15EEESL_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE12EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16VecDateTimeValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE27EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IdLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE42EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_INS_16TimestampTzValueELm4096ESC_Lm16ELm15EEESJ_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE36EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IjLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE14native_executeILb0ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE14native_executeILb0ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE14native_executeILb1ELb0EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i Unexecuted instantiation: _ZN5doris9NumIfImplILNS_13PrimitiveTypeE37EE14native_executeILb1ELb1EEENS_3COWINS_7IColumnEE13immutable_ptrIS5_EERKNS_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_22DefaultMemoryAllocatorELb0EEELm16ELm15EEERKNS9_IoLm4096ESC_Lm16ELm15EEESI_i |
117 | | |
118 | | #ifdef __ARM_NEON |
119 | | constexpr static bool can_use_neon_opt() { |
120 | | return sizeof(Type) == 1 || sizeof(Type) == 2 || sizeof(Type) == 4 || sizeof(Type) == 8; |
121 | | } |
122 | | |
123 | | template <bool is_a_const, bool is_b_const> |
124 | | static void neon_execute(const uint8_t* cond, Type* res, const Type* a, const Type* b, |
125 | | size_t size) { |
126 | | const Type* res_end = res + size; |
127 | | constexpr int data_size = sizeof(Type); |
128 | | constexpr int elements_per_process = 16; |
129 | | |
130 | | // Process 16 element of data at a time |
131 | | while (res + elements_per_process < res_end) { |
132 | | // Load 16 cond masks |
133 | | uint8x16_t loaded_mask = vld1q_u8(cond); |
134 | | //[1, 0, 1, 0, 1, 0, 1, 0, ...] |
135 | | |
136 | | loaded_mask = vceqq_u8(loaded_mask, vdupq_n_u8(0)); |
137 | | //[0, FF, 0, FF, 0, FF, 0, FF, ...] |
138 | | |
139 | | loaded_mask = vmvnq_u8(loaded_mask); |
140 | | //[FF, 0, FF, 0, FF, 0, FF, 0, ...] |
141 | | |
142 | | if constexpr (data_size == 1) { |
143 | | uint8x16_t vec_a; |
144 | | if constexpr (!is_a_const) { |
145 | | vec_a = vld1q_u8(reinterpret_cast<const uint8_t*>(a)); |
146 | | } else { |
147 | | vec_a = vdupq_n_u8(*reinterpret_cast<const uint8_t*>(a)); |
148 | | } |
149 | | |
150 | | uint8x16_t vec_b; |
151 | | if constexpr (!is_b_const) { |
152 | | vec_b = vld1q_u8(reinterpret_cast<const uint8_t*>(b)); |
153 | | } else { |
154 | | vec_b = vdupq_n_u8(*reinterpret_cast<const uint8_t*>(b)); |
155 | | } |
156 | | |
157 | | uint8x16_t result = vbslq_u8(loaded_mask, vec_a, vec_b); |
158 | | |
159 | | vst1q_u8(reinterpret_cast<uint8_t*>(res), result); |
160 | | |
161 | | } else if constexpr (data_size == 2) { |
162 | | // Process 2 groups, each handling 8 int16 |
163 | | for (int i = 0; i < 2; i++) { |
164 | | uint16x8_t vec_a; |
165 | | if constexpr (!is_a_const) { |
166 | | vec_a = vld1q_u16(reinterpret_cast<const uint16_t*>(a) + i * 8); |
167 | | } else { |
168 | | vec_a = vdupq_n_u16(*reinterpret_cast<const uint16_t*>(a)); |
169 | | } |
170 | | |
171 | | uint16x8_t vec_b; |
172 | | if constexpr (!is_b_const) { |
173 | | vec_b = vld1q_u16(reinterpret_cast<const uint16_t*>(b) + i * 8); |
174 | | } else { |
175 | | vec_b = vdupq_n_u16(*reinterpret_cast<const uint16_t*>(b)); |
176 | | } |
177 | | |
178 | | uint8x16_t index = {0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7}; |
179 | | uint8x16_t mask = vqtbl1q_u8(loaded_mask, index); |
180 | | // loaded_mask = [A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P] : u8 |
181 | | // index = [0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7] : u8 |
182 | | // mask = [A, A, B, B, C, C, D, D, E, E, F, F, G, G, H, H] : u8 |
183 | | |
184 | | uint16x8_t result = vbslq_u16(vreinterpretq_u16_u8(mask), vec_a, vec_b); |
185 | | |
186 | | vst1q_u16(reinterpret_cast<uint16_t*>(res) + i * 8, result); |
187 | | loaded_mask = vextq_u8(loaded_mask, loaded_mask, 8); |
188 | | } |
189 | | } else if constexpr (data_size == 4) { |
190 | | // Process 4 groups, each handling 4 int32 |
191 | | for (int i = 0; i < 4; i++) { |
192 | | uint32x4_t vec_a; |
193 | | if constexpr (!is_a_const) { |
194 | | vec_a = vld1q_u32(reinterpret_cast<const uint32_t*>(a) + i * 4); |
195 | | } else { |
196 | | vec_a = vdupq_n_u32(*reinterpret_cast<const uint32_t*>(a)); |
197 | | } |
198 | | |
199 | | uint32x4_t vec_b; |
200 | | if constexpr (!is_b_const) { |
201 | | vec_b = vld1q_u32(reinterpret_cast<const uint32_t*>(b) + i * 4); |
202 | | } else { |
203 | | vec_b = vdupq_n_u32(*reinterpret_cast<const uint32_t*>(b)); |
204 | | } |
205 | | |
206 | | uint8x16_t index = {0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3}; |
207 | | uint8x16_t mask = vqtbl1q_u8(loaded_mask, index); |
208 | | |
209 | | uint32x4_t result = vbslq_u32(vreinterpretq_u32_u8(mask), vec_a, vec_b); |
210 | | |
211 | | vst1q_u32(reinterpret_cast<uint32_t*>(res) + i * 4, result); |
212 | | loaded_mask = vextq_u8(loaded_mask, loaded_mask, 4); |
213 | | } |
214 | | } else if constexpr (data_size == 8) { |
215 | | // Process 8 groups, each handling 2 int64 |
216 | | for (int i = 0; i < 8; i++) { |
217 | | uint64x2_t vec_a; |
218 | | if constexpr (!is_a_const) { |
219 | | vec_a = vld1q_u64(reinterpret_cast<const uint64_t*>(a) + i * 2); |
220 | | } else { |
221 | | vec_a = vdupq_n_u64(*reinterpret_cast<const uint64_t*>(a)); |
222 | | } |
223 | | |
224 | | uint64x2_t vec_b; |
225 | | if constexpr (!is_b_const) { |
226 | | vec_b = vld1q_u64(reinterpret_cast<const uint64_t*>(b) + i * 2); |
227 | | } else { |
228 | | vec_b = vdupq_n_u64(*reinterpret_cast<const uint64_t*>(b)); |
229 | | } |
230 | | |
231 | | uint8x16_t index = {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1}; |
232 | | uint8x16_t mask = vqtbl1q_u8(loaded_mask, index); |
233 | | |
234 | | uint64x2_t result = vbslq_u64(vreinterpretq_u64_u8(mask), vec_a, vec_b); |
235 | | |
236 | | vst1q_u64(reinterpret_cast<uint64_t*>(res) + i * 2, result); |
237 | | |
238 | | loaded_mask = vextq_u8(loaded_mask, loaded_mask, 2); |
239 | | } |
240 | | } |
241 | | |
242 | | res += elements_per_process; |
243 | | cond += elements_per_process; |
244 | | if (!is_a_const) { |
245 | | a += elements_per_process; |
246 | | } |
247 | | if (!is_b_const) { |
248 | | b += elements_per_process; |
249 | | } |
250 | | } |
251 | | |
252 | | // for the remaining data |
253 | | while (res < res_end) { |
254 | | *res = *cond ? *a : *b; |
255 | | res++; |
256 | | cond++; |
257 | | if (!is_a_const) { |
258 | | a++; |
259 | | } |
260 | | if (!is_b_const) { |
261 | | b++; |
262 | | } |
263 | | } |
264 | | } |
265 | | |
266 | | #endif |
267 | | }; |
268 | | |
269 | | } // namespace doris |