From 098fc31e1e567435a1e9899a6188e7ab551e6ef5 Mon Sep 17 00:00:00 2001 From: Nick Gerrets Date: Wed, 12 Jul 2023 12:34:07 +0200 Subject: [PATCH] inline --- src/include/duckdb/common/bitpacking.hpp | 8 ++++---- src/storage/compression/bitpacking.cpp | 20 ++++++++++---------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/include/duckdb/common/bitpacking.hpp b/src/include/duckdb/common/bitpacking.hpp index f0d440870575..21a3ce71f938 100644 --- a/src/include/duckdb/common/bitpacking.hpp +++ b/src/include/duckdb/common/bitpacking.hpp @@ -205,19 +205,19 @@ class BitpackingPrimitives { } template - static void PackGroup(data_ptr_t dst, T *values, bitpacking_width_t width) { + static inline void PackGroup(data_ptr_t dst, T *values, bitpacking_width_t width) { // packing reinterprets the integral type as it's unsigned counterpart, // except for hugeints which are exclusively signed (for now) PackGroupImpl(dst, reinterpret_cast::type *>(values), width); } template - static void PackGroupImpl(data_ptr_t dst, T *values, bitpacking_width_t width) { + static inline void PackGroupImpl(data_ptr_t dst, T *values, bitpacking_width_t width) { throw InternalException("Unsupported type for bitpacking"); } template - static void UnPackGroup(data_ptr_t dst, data_ptr_t src, bitpacking_width_t width, + static inline void UnPackGroup(data_ptr_t dst, data_ptr_t src, bitpacking_width_t width, bool skip_sign_extension = false) { UnPackGroupImpl(reinterpret_cast::type *>(dst), src, width); @@ -227,7 +227,7 @@ class BitpackingPrimitives { } template - static void UnPackGroupImpl(T *dst, data_ptr_t src, bitpacking_width_t width) { + static inline void UnPackGroupImpl(T *dst, data_ptr_t src, bitpacking_width_t width) { throw InternalException("Unsupported type for bitpacking"); } }; diff --git a/src/storage/compression/bitpacking.cpp b/src/storage/compression/bitpacking.cpp index a1d90066828b..8d506161bcfe 100644 --- a/src/storage/compression/bitpacking.cpp +++ b/src/storage/compression/bitpacking.cpp @@ -950,44 +950,44 @@ bool BitpackingFun::TypeIsSupported(PhysicalType type) { //===--------------------------------------------------------------------===// template <> -void BitpackingPrimitives::UnPackGroupImpl(uint8_t *dst, data_ptr_t src, bitpacking_width_t width) { +inline void BitpackingPrimitives::UnPackGroupImpl(uint8_t *dst, data_ptr_t src, bitpacking_width_t width) { duckdb_fastpforlib::fastunpack(reinterpret_cast(src), dst, static_cast(width)); } template <> -void BitpackingPrimitives::UnPackGroupImpl(uint16_t *dst, data_ptr_t src, bitpacking_width_t width) { +inline void BitpackingPrimitives::UnPackGroupImpl(uint16_t *dst, data_ptr_t src, bitpacking_width_t width) { duckdb_fastpforlib::fastunpack(reinterpret_cast(src), dst, static_cast(width)); } template <> -void BitpackingPrimitives::UnPackGroupImpl(uint32_t *dst, data_ptr_t src, bitpacking_width_t width) { +inline void BitpackingPrimitives::UnPackGroupImpl(uint32_t *dst, data_ptr_t src, bitpacking_width_t width) { duckdb_fastpforlib::fastunpack(reinterpret_cast(src), dst, static_cast(width)); } template <> -void BitpackingPrimitives::UnPackGroupImpl(uint64_t *dst, data_ptr_t src, bitpacking_width_t width) { +inline void BitpackingPrimitives::UnPackGroupImpl(uint64_t *dst, data_ptr_t src, bitpacking_width_t width) { duckdb_fastpforlib::fastunpack(reinterpret_cast(src), dst, static_cast(width)); } template <> -void BitpackingPrimitives::UnPackGroupImpl(hugeint_t *dst, data_ptr_t src, bitpacking_width_t width) { +inline void BitpackingPrimitives::UnPackGroupImpl(hugeint_t *dst, data_ptr_t src, bitpacking_width_t width) { HugeIntPacker::Unpack(reinterpret_cast(src), dst, width); } template <> -void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint8_t *values, bitpacking_width_t width) { +inline void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint8_t *values, bitpacking_width_t width) { duckdb_fastpforlib::fastpack(values, reinterpret_cast(dst), static_cast(width)); } template <> -void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint16_t *values, bitpacking_width_t width) { +inline void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint16_t *values, bitpacking_width_t width) { duckdb_fastpforlib::fastpack(values, reinterpret_cast(dst), static_cast(width)); } template <> -void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint32_t *values, bitpacking_width_t width) { +inline void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint32_t *values, bitpacking_width_t width) { duckdb_fastpforlib::fastpack(values, reinterpret_cast(dst), static_cast(width)); } template <> -void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint64_t *values, bitpacking_width_t width) { +inline void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, uint64_t *values, bitpacking_width_t width) { duckdb_fastpforlib::fastpack(values, reinterpret_cast(dst), static_cast(width)); } template <> -void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, hugeint_t *values, bitpacking_width_t width) { +inline void BitpackingPrimitives::PackGroupImpl(data_ptr_t dst, hugeint_t *values, bitpacking_width_t width) { HugeIntPacker::Pack(values, reinterpret_cast(dst), width); }