#include "src/ic/stub-cache.h"
#include "src/ast/ast.h"
#include "src/base/bits.h"
#include "src/heap/heap-inl.h"
#include "src/ic/ic-inl.h"
#include "src/logging/counters.h"
#include "src/objects/tagged-value-inl.h"
namespace v8 {
namespace internal {
StubCache::StubCache(Isolate* isolate) : … { … }
void StubCache::Initialize() { … }
int StubCache::PrimaryOffset(Tagged<Name> name, Tagged<Map> map) { … }
int StubCache::SecondaryOffset(Tagged<Name> name, Tagged<Map> old_map) { … }
int StubCache::PrimaryOffsetForTesting(Tagged<Name> name, Tagged<Map> map) { … }
int StubCache::SecondaryOffsetForTesting(Tagged<Name> name, Tagged<Map> map) { … }
#ifdef DEBUG
namespace {
bool CommonStubCacheChecks(StubCache* stub_cache, Tagged<Name> name,
Tagged<Map> map, Tagged<MaybeObject> handler) { … }
}
#endif
void StubCache::Set(Tagged<Name> name, Tagged<Map> map,
Tagged<MaybeObject> handler) { … }
Tagged<MaybeObject> StubCache::Get(Tagged<Name> name, Tagged<Map> map) { … }
void StubCache::Clear() { … }
}
}