Coverage Report

Created: 2025-06-18 15:39

/root/doris/be/src/vec/functions/modulo.cpp
Line
Count
Source (jump to first uncovered line)
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/Modulo.cpp
19
// and modified by Doris
20
21
#include <string.h>
22
23
#include <cmath>
24
#include <memory>
25
#include <utility>
26
27
#include "runtime/decimalv2_value.h"
28
#include "vec/columns/column_vector.h"
29
#include "vec/core/types.h"
30
#include "vec/data_types/number_traits.h"
31
#include "vec/functions/function_binary_arithmetic.h"
32
#include "vec/functions/simple_function_factory.h"
33
34
namespace doris::vectorized {
35
36
template <typename A, typename B>
37
4
inline void throw_if_division_leads_to_FPE(A a, B b) {
38
    // http://avva.livejournal.com/2548306.html
39
    // (-9223372036854775808 % -1) will cause coredump directly, so check this case to throw exception, or maybe could return 0 as result
40
4
    if constexpr (std::is_signed_v<A> && std::is_signed_v<B>) {
41
4
        if (b == -1 && a == std::numeric_limits<A>::min()) {
42
0
            throw Exception(ErrorCode::INVALID_ARGUMENT,
43
0
                            "Division of minimal signed number by minus one is an undefined "
44
0
                            "behavior, {} % {}. ",
45
0
                            a, b);
46
0
        }
47
4
    }
48
4
}
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIbbEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIhbEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIbaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIhaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIbsEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIhsEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIbiEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIhiEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIblEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIhlEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIbnEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIhnEEvT_T0_
_ZN5doris10vectorized30throw_if_division_leads_to_FPEIiiEEvT_T0_
Line
Count
Source
37
4
inline void throw_if_division_leads_to_FPE(A a, B b) {
38
    // http://avva.livejournal.com/2548306.html
39
    // (-9223372036854775808 % -1) will cause coredump directly, so check this case to throw exception, or maybe could return 0 as result
40
4
    if constexpr (std::is_signed_v<A> && std::is_signed_v<B>) {
41
4
        if (b == -1 && a == std::numeric_limits<A>::min()) {
42
0
            throw Exception(ErrorCode::INVALID_ARGUMENT,
43
0
                            "Division of minimal signed number by minus one is an undefined "
44
0
                            "behavior, {} % {}. ",
45
0
                            a, b);
46
0
        }
47
4
    }
48
4
}
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIllEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEInnEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIN4wide7integerILm256EiEES4_EEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIabEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIaaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIasEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIaiEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIalEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIanEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIsbEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIsaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIssEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIsiEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIslEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIsnEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIibEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIiaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIisEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIilEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIinEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIlbEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIlaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIlsEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIliEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIlnEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEInbEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEInaEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEInsEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEIniEEvT_T0_
Unexecuted instantiation: _ZN5doris10vectorized30throw_if_division_leads_to_FPEInlEEvT_T0_
49
50
template <PrimitiveType TypeA, PrimitiveType TypeB>
51
struct ModuloImpl {
52
    using A = typename PrimitiveTypeTraits<TypeA>::CppNativeType;
53
    using B = typename PrimitiveTypeTraits<TypeB>::CppNativeType;
54
    static constexpr PrimitiveType ResultType = NumberTraits::ResultOfModulo<A, B>::Type;
55
    using Traits = NumberTraits::BinaryOperatorTraits<TypeA, TypeB>;
56
57
    template <PrimitiveType Result = ResultType>
58
    static void apply(const typename Traits::ArrayA& a, B b,
59
                      typename PrimitiveTypeTraits<Result>::ColumnType::Container& c,
60
0
                      typename Traits::ArrayNull& null_map) {
61
0
        size_t size = c.size();
62
0
        UInt8 is_null = b == 0;
63
0
        memset(null_map.data(), is_null, sizeof(UInt8) * size);
64
65
0
        if (!is_null) {
66
0
            for (size_t i = 0; i < size; i++) {
67
0
                if constexpr (is_float_or_double(Result)) {
68
0
                    c[i] = std::fmod((double)a[i], (double)b);
69
0
                } else {
70
0
                    throw_if_division_leads_to_FPE(a[i], b);
71
0
                    c[i] = a[i] % b;
72
0
                }
73
0
            }
74
0
        }
75
0
    }
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_2EE5applyILS2_4EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_3EE5applyILS2_3EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_4EE5applyILS2_4EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_2EE5applyILS2_3EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_3EE5applyILS2_3EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_4EE5applyILS2_4EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_2EE5applyILS2_4EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_3EE5applyILS2_4EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_4EE5applyILS2_4EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_2EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_3EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_4EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_2EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_3EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_4EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_5EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_2EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_3EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_4EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_5EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_6EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_2EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_3EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_4EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_5EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_6EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_7EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_2EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_3EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_4EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_5EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_6EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_7EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_8EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
76
77
    template <PrimitiveType Result = ResultType>
78
    static inline typename PrimitiveTypeTraits<Result>::CppNativeType apply(A a, B b,
79
4
                                                                            UInt8& is_null) {
80
4
        is_null = b == 0;
81
4
        b += is_null;
82
83
4
        if constexpr (is_float_or_double(Result)) {
84
4
            return std::fmod((double)a, (double)b);
85
4
        } else {
86
4
            throw_if_division_leads_to_FPE(a, b);
87
4
            return a % b;
88
4
        }
89
4
    }
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_2EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbbRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_3EE5applyILS2_3EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_4EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbsRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbiRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEblRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbfRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE2ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbdRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE28ELS2_28EE5applyILS2_28EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEiiRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE29ELS2_29EE5applyILS2_29EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEllRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE20ELS2_20EE5applyILS2_20EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE30ELS2_30EE5applyILS2_30EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE35ELS2_35EE5applyILS2_35EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEN4wide7integerILm256EiEESA_Rh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_2EE5applyILS2_3EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEabRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_3EE5applyILS2_3EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEaaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_4EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEasRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEaiRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEalRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEanRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEafRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE3ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEadRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_2EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsbRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_3EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_4EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEssRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsiRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEslRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsfRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE4ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsdRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_2EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEibRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_3EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEiaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_4EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEisRh
_ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEiiRh
Line
Count
Source
79
4
                                                                            UInt8& is_null) {
80
4
        is_null = b == 0;
81
4
        b += is_null;
82
83
4
        if constexpr (is_float_or_double(Result)) {
84
4
            return std::fmod((double)a, (double)b);
85
4
        } else {
86
4
            throw_if_division_leads_to_FPE(a, b);
87
4
            return a % b;
88
4
        }
89
4
    }
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEilRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEinRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEifRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE5ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEidRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_2EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElbRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_3EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_4EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElsRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_5EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEliRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEllRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElfRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE6ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEldRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_2EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnbRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_3EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_4EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnsRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_5EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEniRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_6EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnlRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnfRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE7ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEndRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_2EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfbRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_3EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_4EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfsRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_5EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfiRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_6EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEflRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_7EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEffRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE8ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfdRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_2EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdbRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_3EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdaRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_4EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdsRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_5EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdiRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_6EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdlRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_7EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdnRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_8EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdfRh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE9ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEddRh
90
91
    template <PrimitiveType Result = TYPE_DECIMALV2>
92
0
    static inline DecimalV2Value apply(DecimalV2Value a, DecimalV2Value b, UInt8& is_null) {
93
0
        is_null = b == DecimalV2Value(0);
94
0
        return a % (b + DecimalV2Value(is_null));
95
0
    }
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE28ELS2_28EE5applyILS2_20EEENS_14DecimalV2ValueES5_S5_Rh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE29ELS2_29EE5applyILS2_20EEENS_14DecimalV2ValueES5_S5_Rh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE20ELS2_20EE5applyILS2_20EEENS_14DecimalV2ValueES5_S5_Rh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE30ELS2_30EE5applyILS2_20EEENS_14DecimalV2ValueES5_S5_Rh
Unexecuted instantiation: _ZN5doris10vectorized10ModuloImplILNS_13PrimitiveTypeE35ELS2_35EE5applyILS2_20EEENS_14DecimalV2ValueES5_S5_Rh
96
};
97
98
template <PrimitiveType TypeA, PrimitiveType TypeB>
99
struct PModuloImpl {
100
    using A = typename PrimitiveTypeTraits<TypeA>::CppType;
101
    using B = typename PrimitiveTypeTraits<TypeB>::CppType;
102
    static constexpr PrimitiveType ResultType = NumberTraits::ResultOfModulo<A, B>::Type;
103
    using Traits = NumberTraits::BinaryOperatorTraits<TypeA, TypeB>;
104
105
    template <PrimitiveType Result = ResultType>
106
    static void apply(const typename Traits::ArrayA& a, B b,
107
                      typename PrimitiveTypeTraits<Result>::ColumnType::Container& c,
108
0
                      typename Traits::ArrayNull& null_map) {
109
0
        size_t size = c.size();
110
0
        UInt8 is_null = b == 0;
111
0
        memset(null_map.data(), is_null, size);
112
113
0
        if (!is_null) {
114
0
            for (size_t i = 0; i < size; i++) {
115
0
                if constexpr (is_float_or_double(Result)) {
116
0
                    c[i] = std::fmod(std::fmod((double)a[i], (double)b) + (double)b, double(b));
117
0
                } else {
118
0
                    throw_if_division_leads_to_FPE(a[i], b);
119
0
                    c[i] = (a[i] % b + b) % b;
120
0
                }
121
0
            }
122
0
        }
123
0
    }
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_2EE5applyILS2_4EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_3EE5applyILS2_3EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_4EE5applyILS2_4EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIhLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERS9_
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_2EE5applyILS2_3EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_3EE5applyILS2_3EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_4EE5applyILS2_4EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIaLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_2EE5applyILS2_4EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_3EE5applyILS2_4EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_4EE5applyILS2_4EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIsLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_2EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_3EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_4EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_5EE5applyILS2_5EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIiLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_2EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_3EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_4EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_5EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_6EE5applyILS2_6EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIlLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_2EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_3EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_4EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_5EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_6EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_7EE5applyILS2_7EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayInLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_2EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_3EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_4EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_5EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_6EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_7EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_8EE5applyILS2_8EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIfLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_2EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEbRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_3EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEaRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_4EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEsRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_5EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEiRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_6EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEElRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_7EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEnRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_8EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEfRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_9EE5applyILS2_9EEEvRKNS0_8PODArrayIdLm4096ENS_9AllocatorILb0ELb0ELb0ENS_32NoTrackingDefaultMemoryAllocatorEEELm16ELm15EEEdRNS_19PrimitiveTypeTraitsIXT_EE10ColumnType9ContainerERNS5_IhLm4096ES8_Lm16ELm15EEE
124
125
    template <PrimitiveType Result = ResultType>
126
    static inline typename PrimitiveTypeTraits<Result>::CppNativeType apply(A a, B b,
127
0
                                                                            UInt8& is_null) {
128
0
        is_null = b == 0;
129
0
        b += is_null;
130
131
0
        if constexpr (is_float_or_double(Result)) {
132
0
            return std::fmod(std::fmod((double)a, (double)b) + (double)b, (double)b);
133
0
        } else {
134
0
            throw_if_division_leads_to_FPE(a, b);
135
0
            return (a % b + b) % b;
136
0
        }
137
0
    }
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_2EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbbRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_3EE5applyILS2_3EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_4EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbsRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbiRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEblRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbnRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbfRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE2ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEbdRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_2EE5applyILS2_3EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEabRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_3EE5applyILS2_3EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEaaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_4EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEasRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEaiRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEalRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEanRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEafRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE3ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEadRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_2EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsbRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_3EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_4EE5applyILS2_4EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEssRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsiRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEslRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsnRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsfRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE4ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEsdRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_2EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEibRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_3EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEiaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_4EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEisRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_5EE5applyILS2_5EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEiiRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEilRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEinRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEifRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE5ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEidRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_2EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElbRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_3EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_4EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElsRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_5EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEliRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_6EE5applyILS2_6EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEllRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElnRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeElfRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE6ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEldRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_2EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnbRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_3EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_4EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnsRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_5EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEniRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_6EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnlRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_7EE5applyILS2_7EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnnRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEnfRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE7ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEndRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_2EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfbRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_3EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_4EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfsRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_5EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfiRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_6EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEflRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_7EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfnRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_8EE5applyILS2_8EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEffRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE8ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEfdRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_2EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdbRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_3EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdaRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_4EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdsRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_5EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdiRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_6EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdlRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_7EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdnRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_8EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEdfRh
Unexecuted instantiation: _ZN5doris10vectorized11PModuloImplILNS_13PrimitiveTypeE9ELS2_9EE5applyILS2_9EEENS_19PrimitiveTypeTraitsIXT_EE13CppNativeTypeEddRh
138
139
    template <PrimitiveType Result = TYPE_DECIMALV2>
140
    static inline DecimalV2Value apply(DecimalV2Value a, DecimalV2Value b, UInt8& is_null) {
141
        is_null = b == DecimalV2Value(0);
142
        b += DecimalV2Value(is_null);
143
        return (a % b + b) % b;
144
    }
145
};
146
147
struct NameModulo {
148
    static constexpr auto name = "mod";
149
};
150
struct NamePModulo {
151
    static constexpr auto name = "pmod";
152
};
153
154
using FunctionModulo = FunctionBinaryArithmetic<ModuloImpl, NameModulo, true>;
155
using FunctionPModulo = FunctionBinaryArithmetic<PModuloImpl, NamePModulo, true>;
156
157
1
void register_function_modulo(SimpleFunctionFactory& factory) {
158
1
    factory.register_function<FunctionModulo>();
159
1
    factory.register_function<FunctionPModulo>();
160
1
    factory.register_alias("mod", "fmod");
161
1
}
162
163
} // namespace doris::vectorized