mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-21 15:12:02 +00:00
Update libdivide
This will includes at least [1]. [1]: https://github.com/ridiculousfish/libdivide/pull/94 v2: Define LIBDIVIDE_* macros mutually exclusive Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
This commit is contained in:
parent
3ae9f121d9
commit
cdfe62f303
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -294,3 +294,6 @@
|
|||||||
[submodule "contrib/google-benchmark"]
|
[submodule "contrib/google-benchmark"]
|
||||||
path = contrib/google-benchmark
|
path = contrib/google-benchmark
|
||||||
url = https://github.com/google/benchmark.git
|
url = https://github.com/google/benchmark.git
|
||||||
|
[submodule "contrib/libdivide"]
|
||||||
|
path = contrib/libdivide
|
||||||
|
url = https://github.com/ridiculousfish/libdivide.git
|
||||||
|
2
contrib/CMakeLists.txt
vendored
2
contrib/CMakeLists.txt
vendored
@ -65,7 +65,7 @@ add_contrib (dragonbox-cmake dragonbox)
|
|||||||
add_contrib (vectorscan-cmake vectorscan)
|
add_contrib (vectorscan-cmake vectorscan)
|
||||||
add_contrib (jemalloc-cmake jemalloc)
|
add_contrib (jemalloc-cmake jemalloc)
|
||||||
add_contrib (libcpuid-cmake libcpuid)
|
add_contrib (libcpuid-cmake libcpuid)
|
||||||
add_contrib (libdivide)
|
add_contrib (libdivide-cmake)
|
||||||
add_contrib (libmetrohash)
|
add_contrib (libmetrohash)
|
||||||
add_contrib (lz4-cmake lz4)
|
add_contrib (lz4-cmake lz4)
|
||||||
add_contrib (murmurhash)
|
add_contrib (murmurhash)
|
||||||
|
1
contrib/libdivide
vendored
Submodule
1
contrib/libdivide
vendored
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 3bd34388573681ce563348cdf04fe15d24770d04
|
7
contrib/libdivide-cmake/CMakeLists.txt
Normal file
7
contrib/libdivide-cmake/CMakeLists.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
set(LIBDIVIDE_SOURCE_DIR "${ClickHouse_SOURCE_DIR}/contrib/libdivide")
|
||||||
|
add_library (_libdivide INTERFACE)
|
||||||
|
# for libdivide.h
|
||||||
|
target_include_directories (_libdivide SYSTEM BEFORE INTERFACE ${LIBDIVIDE_SOURCE_DIR})
|
||||||
|
# for libdivide-config.h
|
||||||
|
target_include_directories (_libdivide SYSTEM BEFORE INTERFACE .)
|
||||||
|
add_library (ch_contrib::libdivide ALIAS _libdivide)
|
9
contrib/libdivide-cmake/libdivide-config.h
Normal file
9
contrib/libdivide-cmake/libdivide-config.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#if defined(__SSE2__)
|
||||||
|
# define LIBDIVIDE_SSE2
|
||||||
|
#elif defined(__AVX512F__) || defined(__AVX512BW__) || defined(__AVX512VL__)
|
||||||
|
# define LIBDIVIDE_AVX512
|
||||||
|
#elif defined(__AVX2__)
|
||||||
|
# define LIBDIVIDE_AVX2
|
||||||
|
#elif defined(__aarch64__) && defined(__ARM_NEON)
|
||||||
|
# define LIBDIVIDE_NEON
|
||||||
|
#endif
|
@ -1,3 +0,0 @@
|
|||||||
add_library (_libdivide INTERFACE)
|
|
||||||
target_include_directories (_libdivide SYSTEM BEFORE INTERFACE .)
|
|
||||||
add_library (ch_contrib::libdivide ALIAS _libdivide)
|
|
@ -1,20 +0,0 @@
|
|||||||
libdivide
|
|
||||||
Copyright (C) 2010 ridiculous_fish
|
|
||||||
|
|
||||||
This software is provided 'as-is', without any express or implied
|
|
||||||
warranty. In no event will the authors be held liable for any damages
|
|
||||||
arising from the use of this software.
|
|
||||||
|
|
||||||
Permission is granted to anyone to use this software for any purpose,
|
|
||||||
including commercial applications, and to alter it and redistribute it
|
|
||||||
freely, subject to the following restrictions:
|
|
||||||
|
|
||||||
1. The origin of this software must not be misrepresented; you must not
|
|
||||||
claim that you wrote the original software. If you use this software
|
|
||||||
in a product, an acknowledgment in the product documentation would be
|
|
||||||
appreciated but is not required.
|
|
||||||
2. Altered source versions must be plainly marked as such, and must not be
|
|
||||||
misrepresented as being the original software.
|
|
||||||
3. This notice may not be removed or altered from any source distribution.
|
|
||||||
|
|
||||||
libdivide@ridiculousfish.com
|
|
@ -1,2 +0,0 @@
|
|||||||
https://github.com/ridiculousfish/libdivide
|
|
||||||
http://libdivide.com/
|
|
File diff suppressed because it is too large
Load Diff
@ -116,6 +116,7 @@ function clone_submodules
|
|||||||
contrib/base64
|
contrib/base64
|
||||||
contrib/cctz
|
contrib/cctz
|
||||||
contrib/libcpuid
|
contrib/libcpuid
|
||||||
|
contrib/libdivide
|
||||||
contrib/double-conversion
|
contrib/double-conversion
|
||||||
contrib/llvm-project
|
contrib/llvm-project
|
||||||
contrib/lz4
|
contrib/lz4
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
/// This translation unit should be compiled multiple times
|
/// This translation unit should be compiled multiple times
|
||||||
/// with different values of NAMESPACE and machine flags (sse2, avx2).
|
/// with different values of NAMESPACE and machine flags (sse2, avx2).
|
||||||
|
|
||||||
|
/// See also <libdivide-config.h>
|
||||||
#if defined(__AVX2__)
|
#if defined(__AVX2__)
|
||||||
#define REG_SIZE 32
|
#define REG_SIZE 32
|
||||||
#define LIBDIVIDE_AVX2
|
#define LIBDIVIDE_AVX2
|
||||||
|
@ -1,16 +1,7 @@
|
|||||||
#include <Functions/FunctionFactory.h>
|
#include <Functions/FunctionFactory.h>
|
||||||
#include <Functions/FunctionBinaryArithmetic.h>
|
#include <Functions/FunctionBinaryArithmetic.h>
|
||||||
|
|
||||||
#if defined(__SSE2__)
|
#include <libdivide-config.h>
|
||||||
# define LIBDIVIDE_SSE2
|
|
||||||
#elif defined(__AVX512F__) || defined(__AVX512BW__) || defined(__AVX512VL__)
|
|
||||||
# define LIBDIVIDE_AVX512
|
|
||||||
#elif defined(__AVX2__)
|
|
||||||
# define LIBDIVIDE_AVX2
|
|
||||||
#elif defined(__aarch64__) && defined(__ARM_NEON)
|
|
||||||
# define LIBDIVIDE_NEON
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <libdivide.h>
|
#include <libdivide.h>
|
||||||
|
|
||||||
|
|
||||||
|
@ -5,16 +5,7 @@
|
|||||||
|
|
||||||
#include <type_traits>
|
#include <type_traits>
|
||||||
|
|
||||||
#if defined(__SSE2__)
|
#include <libdivide-config.h>
|
||||||
# define LIBDIVIDE_SSE2
|
|
||||||
#elif defined(__AVX512F__) || defined(__AVX512BW__) || defined(__AVX512VL__)
|
|
||||||
# define LIBDIVIDE_AVX512
|
|
||||||
#elif defined(__AVX2__)
|
|
||||||
# define LIBDIVIDE_AVX2
|
|
||||||
#elif defined(__aarch64__) && defined(__ARM_NEON)
|
|
||||||
# define LIBDIVIDE_NEON
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <libdivide.h>
|
#include <libdivide.h>
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user