blob: 74c89ea774789d6f950c3d8f0caa879781e01f61 [file]
/*
* Copyright 2010-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
* that can be found in the LICENSE file.
*/
#include "GlobalsRegistry.hpp"
#include <iterator>
#include "GlobalData.hpp"
#include "ThreadData.hpp"
using namespace kotlin;
// static
mm::GlobalsRegistry& mm::GlobalsRegistry::Instance() noexcept {
return GlobalData::Instance().globalsRegistry();
}
void mm::GlobalsRegistry::RegisterStorageForGlobal(mm::ThreadData* threadData, ObjHeader** location) noexcept {
threadData->globalsThreadQueue().Insert(location);
}
void mm::GlobalsRegistry::ProcessThread(mm::ThreadData* threadData) noexcept {
threadData->globalsThreadQueue().Publish();
}
mm::GlobalsRegistry::GlobalsRegistry() = default;
mm::GlobalsRegistry::~GlobalsRegistry() = default;