#include "src/heap/cppgc/gc-info-table.h"
#include <algorithm>
#include <limits>
#include <memory>
#include "include/cppgc/internal/gc-info.h"
#include "include/cppgc/platform.h"
#include "src/base/bits.h"
#include "src/base/lazy-instance.h"
#include "src/base/page-allocator.h"
#include "src/heap/cppgc/platform.h"
namespace cppgc {
namespace internal {
namespace {
constexpr size_t kEntrySize = …;
static_assert …;
}
GCInfoTable* GlobalGCInfoTable::global_table_ = …;
constexpr GCInfoIndex GCInfoTable::kMaxIndex;
constexpr GCInfoIndex GCInfoTable::kMinIndex;
constexpr GCInfoIndex GCInfoTable::kInitialWantedLimit;
void GlobalGCInfoTable::Initialize(PageAllocator& page_allocator) { … }
GCInfoTable::GCInfoTable(PageAllocator& page_allocator,
FatalOutOfMemoryHandler& oom_handler)
: … { … }
GCInfoTable::~GCInfoTable() { … }
size_t GCInfoTable::MaxTableSize() const { … }
GCInfoIndex GCInfoTable::InitialTableLimit() const { … }
void GCInfoTable::Resize() { … }
void GCInfoTable::CheckMemoryIsZeroed(uintptr_t* base, size_t len) { … }
GCInfoIndex GCInfoTable::RegisterNewGCInfo(
std::atomic<GCInfoIndex>& registered_index, const GCInfo& info) { … }
}
}