4#include "tracy/Tracy.hpp"
13#ifndef TRACY_HACK_GATES_AS_MEMORY
14#define TRACY_ALLOC(t, size) TracyAllocS(t, size, 10)
15#define TRACY_FREE(t) TracyFreeS(t, 10)
16#define TRACY_GATE_ALLOC(t)
17#define TRACY_GATE_FREE(t)
21#define TRACY_ALLOC(t, size)
28static std::mutex GLOBAL_GATE_MUTEX;
29static size_t GLOBAL_GATE = 0;
32#define TRACY_GATE_ALLOC(index) TracyAllocS(reinterpret_cast<void*>(index), 1, 50)
33#define TRACY_GATE_FREE(index) TracyFreeS(reinterpret_cast<void*>(index), 50)
38#define pad(size, alignment) (size - (size % alignment) + ((size % alignment) == 0 ? 0 : alignment))
41inline void* aligned_alloc(
size_t alignment,
size_t size)
44 posix_memalign(&t, alignment, size);
46 info(
"bad alloc of size: ", size);
53inline void aligned_free(
void*
mem)
60#if defined(__linux__) || defined(__wasm__)
61inline void* protected_aligned_alloc(
size_t alignment,
size_t size)
63 size += (size % alignment);
66 if (size % alignment != 0) {
67 size += alignment - (size % alignment);
70 t = aligned_alloc(alignment, size);
72 info(
"bad alloc of size: ", size);
79#define aligned_alloc protected_aligned_alloc
81inline void aligned_free(
void*
mem)
90inline void* aligned_alloc(
size_t alignment,
size_t size)
92 void* t = _aligned_malloc(size, alignment);
97inline void aligned_free(
void*
mem)
123 void* t = malloc(size);
void tracy_free(void *mem)
#define TRACY_ALLOC(t, size)
void * tracy_malloc(size_t size)
Entry point for Barretenberg command-line interface.
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept