diff options
| author | Stefan Boberg <[email protected]> | 2024-11-25 10:26:59 +0100 |
|---|---|---|
| committer | GitHub Enterprise <[email protected]> | 2024-11-25 10:26:59 +0100 |
| commit | 1e43506a365c91e411c2375ec55a7d5ad918df0e (patch) | |
| tree | acfb1ff64f6f8b038b75129379d50eecd4f2301c /src | |
| parent | Insights-compatible memory tracking (#214) (diff) | |
| download | zen-1e43506a365c91e411c2375ec55a7d5ad918df0e.tar.xz zen-1e43506a365c91e411c2375ec55a7d5ad918df0e.zip | |
split zencore/memory.h -> memoryview.h, memcmp.h (#228)
minor clean-up
`zencore/memory.h` used to contain a variety of things including `Malloc` support along with `MemoryView` etc
since the memory allocator stuff moved into `zencore/memory/memory.h` there was basically only `MemoryView` and `MemCmp` in there which seemed better to split out into separate headers to avoid overloading `memory.h`
Diffstat (limited to 'src')
22 files changed, 69 insertions, 55 deletions
diff --git a/src/zencore/compactbinaryvalidation.cpp b/src/zencore/compactbinaryvalidation.cpp index 82738e678..6f53bba69 100644 --- a/src/zencore/compactbinaryvalidation.cpp +++ b/src/zencore/compactbinaryvalidation.cpp @@ -4,7 +4,7 @@ #include <zencore/compactbinarypackage.h> #include <zencore/endian.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/string.h> #include <zencore/testing.h> diff --git a/src/zencore/include/zencore/blake3.h b/src/zencore/include/zencore/blake3.h index 86d050e1a..28bb348c0 100644 --- a/src/zencore/include/zencore/blake3.h +++ b/src/zencore/include/zencore/blake3.h @@ -6,7 +6,7 @@ #include <compare> #include <cstring> -#include <zencore/memory.h> +#include <zencore/memoryview.h> namespace zen { diff --git a/src/zencore/include/zencore/compactbinary.h b/src/zencore/include/zencore/compactbinary.h index 38918d80c..0fdb56d67 100644 --- a/src/zencore/include/zencore/compactbinary.h +++ b/src/zencore/include/zencore/compactbinary.h @@ -9,7 +9,7 @@ #include <zencore/intmath.h> #include <zencore/iobuffer.h> #include <zencore/iohash.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/meta.h> #include <zencore/sharedbuffer.h> #include <zencore/uid.h> diff --git a/src/zencore/include/zencore/compactbinaryvalue.h b/src/zencore/include/zencore/compactbinaryvalue.h index 0124a8983..aa2d2821d 100644 --- a/src/zencore/include/zencore/compactbinaryvalue.h +++ b/src/zencore/include/zencore/compactbinaryvalue.h @@ -6,7 +6,7 @@ #include <zencore/endian.h> #include <zencore/iobuffer.h> #include <zencore/iohash.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> namespace zen { diff --git a/src/zencore/include/zencore/crypto.h b/src/zencore/include/zencore/crypto.h index 83d416b0f..88d156879 100644 --- a/src/zencore/include/zencore/crypto.h +++ b/src/zencore/include/zencore/crypto.h @@ -3,7 +3,7 @@ #pragma once -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/zencore.h> #include <memory> diff --git a/src/zencore/include/zencore/iobuffer.h b/src/zencore/include/zencore/iobuffer.h index 93a27ea58..63779407e 100644 --- a/src/zencore/include/zencore/iobuffer.h +++ b/src/zencore/include/zencore/iobuffer.h @@ -4,7 +4,7 @@ #include <memory.h> #include <zenbase/refcount.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <atomic> #include "zencore.h" diff --git a/src/zencore/include/zencore/iohash.h b/src/zencore/include/zencore/iohash.h index 9c9f487bb..8871a5895 100644 --- a/src/zencore/include/zencore/iohash.h +++ b/src/zencore/include/zencore/iohash.h @@ -5,7 +5,8 @@ #include "zencore.h" #include <zencore/blake3.h> -#include <zencore/memory.h> +#include <zencore/memcmp.h> +#include <zencore/memoryview.h> #include <compare> #include <string_view> diff --git a/src/zencore/include/zencore/memcmp.h b/src/zencore/include/zencore/memcmp.h new file mode 100644 index 000000000..5608f10f0 --- /dev/null +++ b/src/zencore/include/zencore/memcmp.h @@ -0,0 +1,47 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#pragma once + +#include <zenbase/zenbase.h> +#include <zencore/zencore.h> + +#include <cstddef> + +namespace zen { + +template<std::size_t SIZE> +inline int +MemCmpFixed(const void* a1, const void* a2) +{ + auto const s1 = reinterpret_cast<const unsigned char*>(a1); + auto const s2 = reinterpret_cast<const unsigned char*>(a2); + auto const diff = *s1 - *s2; + return diff ? diff : MemCmpFixed<SIZE - 1>(s1 + 1, s2 + 1); +} + +template<> +inline int +MemCmpFixed<0>(const void*, const void*) +{ + return 0; +} + +template<std::size_t SIZE, typename EQTYPE> +inline int +MemCmpFixed(const void* a1, const void* a2) +{ + ZEN_ASSERT_SLOW((uintptr_t(a1) & (sizeof(EQTYPE) - 1)) == 0); + ZEN_ASSERT_SLOW((uintptr_t(a2) & (sizeof(EQTYPE) - 1)) == 0); + auto const s1 = reinterpret_cast<const EQTYPE*>(a1); + auto const s2 = reinterpret_cast<const EQTYPE*>(a2); + return (*s1 != *s2) ? MemCmpFixed<sizeof(EQTYPE)>(s1, s2) : MemCmpFixed<SIZE - sizeof(EQTYPE), EQTYPE>(s1 + 1, s2 + 1); +} + +template<> +inline int +MemCmpFixed<0, uint32_t>(const void*, const void*) +{ + return 0; +} + +} // namespace zen diff --git a/src/zencore/include/zencore/memory.h b/src/zencore/include/zencore/memoryview.h index 8361ab9d8..92f5aea3f 100644 --- a/src/zencore/include/zencore/memory.h +++ b/src/zencore/include/zencore/memoryview.h @@ -354,41 +354,6 @@ MakeMutableMemoryView(void* Data, void* DataEnd) return MutableMemoryView(Data, DataEnd); } -template<std::size_t SIZE> -inline int -MemCmpFixed(const void* a1, const void* a2) -{ - auto const s1 = reinterpret_cast<const unsigned char*>(a1); - auto const s2 = reinterpret_cast<const unsigned char*>(a2); - auto const diff = *s1 - *s2; - return diff ? diff : MemCmpFixed<SIZE - 1>(s1 + 1, s2 + 1); -} - -template<> -inline int -MemCmpFixed<0>(const void*, const void*) -{ - return 0; -} - -template<std::size_t SIZE, typename EQTYPE> -inline int -MemCmpFixed(const void* a1, const void* a2) -{ - ZEN_ASSERT_SLOW((uintptr_t(a1) & (sizeof(EQTYPE) - 1)) == 0); - ZEN_ASSERT_SLOW((uintptr_t(a2) & (sizeof(EQTYPE) - 1)) == 0); - auto const s1 = reinterpret_cast<const EQTYPE*>(a1); - auto const s2 = reinterpret_cast<const EQTYPE*>(a2); - return (*s1 != *s2) ? MemCmpFixed<sizeof(EQTYPE)>(s1, s2) : MemCmpFixed<SIZE - sizeof(EQTYPE), EQTYPE>(s1 + 1, s2 + 1); -} - -template<> -inline int -MemCmpFixed<0, uint32_t>(const void*, const void*) -{ - return 0; -} - void memory_forcelink(); // internal } // namespace zen diff --git a/src/zencore/include/zencore/sharedbuffer.h b/src/zencore/include/zencore/sharedbuffer.h index 9d77a2814..7df5109cb 100644 --- a/src/zencore/include/zencore/sharedbuffer.h +++ b/src/zencore/include/zencore/sharedbuffer.h @@ -6,7 +6,7 @@ #include <zenbase/refcount.h> #include <zencore/iobuffer.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <memory.h> diff --git a/src/zencore/include/zencore/stream.h b/src/zencore/include/zencore/stream.h index fae393666..77e763518 100644 --- a/src/zencore/include/zencore/stream.h +++ b/src/zencore/include/zencore/stream.h @@ -4,7 +4,7 @@ #include "zencore.h" -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/thread.h> #include <vector> diff --git a/src/zencore/include/zencore/uid.h b/src/zencore/include/zencore/uid.h index 1b6fc3f6a..64d3b6b9b 100644 --- a/src/zencore/include/zencore/uid.h +++ b/src/zencore/include/zencore/uid.h @@ -2,7 +2,8 @@ #pragma once -#include <zencore/memory.h> +#include <zencore/memcmp.h> +#include <zencore/memoryview.h> #include <zencore/zencore.h> #include <compare> diff --git a/src/zencore/include/zencore/xxhash.h b/src/zencore/include/zencore/xxhash.h index 04872f4c3..94d98be98 100644 --- a/src/zencore/include/zencore/xxhash.h +++ b/src/zencore/include/zencore/xxhash.h @@ -4,7 +4,7 @@ #include "zencore.h" -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <xxh3.h> diff --git a/src/zencore/iobuffer.cpp b/src/zencore/iobuffer.cpp index d6d02eb0b..02f85a9d9 100644 --- a/src/zencore/iobuffer.cpp +++ b/src/zencore/iobuffer.cpp @@ -7,9 +7,9 @@ #include <zencore/fmtutils.h> #include <zencore/iohash.h> #include <zencore/logging.h> -#include <zencore/memory.h> #include <zencore/memory/llm.h> #include <zencore/memory/memory.h> +#include <zencore/memoryview.h> #include <zencore/testing.h> #include <zencore/thread.h> #include <zencore/trace.h> diff --git a/src/zencore/memory.cpp b/src/zencore/memoryview.cpp index a2fe02f3a..1f6a6996c 100644 --- a/src/zencore/memory.cpp +++ b/src/zencore/memoryview.cpp @@ -3,8 +3,8 @@ #include <zencore/except.h> #include <zencore/fmtutils.h> #include <zencore/intmath.h> -#include <zencore/memory.h> #include <zencore/memory/memory.h> +#include <zencore/memoryview.h> #include <zencore/testing.h> #include <zencore/zencore.h> diff --git a/src/zencore/stream.cpp b/src/zencore/stream.cpp index 13c90fd92..a800ce121 100644 --- a/src/zencore/stream.cpp +++ b/src/zencore/stream.cpp @@ -1,7 +1,7 @@ // Copyright Epic Games, Inc. All Rights Reserved. #include <stdarg.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/stream.h> #include <zencore/testing.h> diff --git a/src/zencore/string.cpp b/src/zencore/string.cpp index 263c49f7e..242d41abe 100644 --- a/src/zencore/string.cpp +++ b/src/zencore/string.cpp @@ -1,7 +1,7 @@ // Copyright Epic Games, Inc. All Rights Reserved. -#include <zencore/memory.h> #include <zencore/memory/memory.h> +#include <zencore/memoryview.h> #include <zencore/string.h> #include <zencore/testing.h> diff --git a/src/zencore/zencore.cpp b/src/zencore/zencore.cpp index 6a963110b..e813a3e6c 100644 --- a/src/zencore/zencore.cpp +++ b/src/zencore/zencore.cpp @@ -20,7 +20,7 @@ #include <zencore/iobuffer.h> #include <zencore/jobqueue.h> #include <zencore/logging.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/mpscqueue.h> #include <zencore/process.h> #include <zencore/sha1.h> diff --git a/src/zenserver-test/zenserver-test.cpp b/src/zenserver-test/zenserver-test.cpp index e3f701be1..382c9a095 100644 --- a/src/zenserver-test/zenserver-test.cpp +++ b/src/zenserver-test/zenserver-test.cpp @@ -12,7 +12,7 @@ #include <zencore/fmtutils.h> #include <zencore/iohash.h> #include <zencore/logging.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/stream.h> #include <zencore/string.h> #include <zencore/testutils.h> diff --git a/src/zenserver/upstream/zen.h b/src/zenserver/upstream/zen.h index c1e4fbd0f..78b6bc589 100644 --- a/src/zenserver/upstream/zen.h +++ b/src/zenserver/upstream/zen.h @@ -5,7 +5,7 @@ #include <zencore/iobuffer.h> #include <zencore/iohash.h> #include <zencore/logging.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/thread.h> #include <zencore/uid.h> #include <zencore/zencore.h> diff --git a/src/zenstore/cas.cpp b/src/zenstore/cas.cpp index bff221fc7..60dc9a505 100644 --- a/src/zenstore/cas.cpp +++ b/src/zenstore/cas.cpp @@ -11,7 +11,7 @@ #include <zencore/except.h> #include <zencore/fmtutils.h> #include <zencore/logging.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/scopeguard.h> #include <zencore/string.h> #include <zencore/testing.h> diff --git a/src/zenstore/caslog.cpp b/src/zenstore/caslog.cpp index 139456349..6c7b1b297 100644 --- a/src/zenstore/caslog.cpp +++ b/src/zenstore/caslog.cpp @@ -6,7 +6,7 @@ #include <zencore/filesystem.h> #include <zencore/fmtutils.h> #include <zencore/logging.h> -#include <zencore/memory.h> +#include <zencore/memoryview.h> #include <zencore/string.h> #include <xxhash.h> |