diff options
Diffstat (limited to 'src/javascript/jsc/bindings/BunClientData.cpp')
-rw-r--r-- | src/javascript/jsc/bindings/BunClientData.cpp | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/src/javascript/jsc/bindings/BunClientData.cpp b/src/javascript/jsc/bindings/BunClientData.cpp deleted file mode 100644 index 2cdd8b25a..000000000 --- a/src/javascript/jsc/bindings/BunClientData.cpp +++ /dev/null @@ -1,82 +0,0 @@ -#include "root.h" - -#include "BunClientData.h" - -#include "ExtendedDOMClientIsoSubspaces.h" -#include "ExtendedDOMIsoSubspaces.h" -#include "JavaScriptCore/FastMallocAlignedMemoryAllocator.h" -#include "JavaScriptCore/HeapInlines.h" -#include "JavaScriptCore/IsoHeapCellType.h" -#include "JavaScriptCore/JSDestructibleObjectHeapCellType.h" -// #include "JavaScriptCore/MarkingConstraint.h" -#include "JavaScriptCore/SubspaceInlines.h" -#include "JavaScriptCore/VM.h" -#include "wtf/MainThread.h" - -#include "JSDOMConstructorBase.h" -#include "JSDOMBuiltinConstructorBase.h" - -#include "BunGCOutputConstraint.h" -#include "WebCoreTypedArrayController.h" -#include "JavaScriptCore/JSCInlines.h" - -#include "JSDOMWrapper.h" - -namespace WebCore { -using namespace JSC; - -JSHeapData::JSHeapData(Heap& heap) - : m_heapCellTypeForJSWorkerGlobalScope(JSC::IsoHeapCellType::Args<Zig::GlobalObject>()) - , m_domBuiltinConstructorSpace ISO_SUBSPACE_INIT(heap, heap.cellHeapCellType, JSDOMBuiltinConstructorBase) - , m_domConstructorSpace ISO_SUBSPACE_INIT(heap, heap.cellHeapCellType, JSDOMConstructorBase) - , m_domNamespaceObjectSpace ISO_SUBSPACE_INIT(heap, heap.cellHeapCellType, JSDOMObject) - , m_subspaces(makeUnique<ExtendedDOMIsoSubspaces>()) - -{ -} - -#define CLIENT_ISO_SUBSPACE_INIT(subspace) subspace(m_heapData->subspace) - -JSVMClientData::JSVMClientData(VM& vm) - : m_builtinFunctions(vm) - , m_builtinNames(vm) - , m_heapData(JSHeapData::ensureHeapData(vm.heap)) - , CLIENT_ISO_SUBSPACE_INIT(m_domBuiltinConstructorSpace) - , CLIENT_ISO_SUBSPACE_INIT(m_domConstructorSpace) - , CLIENT_ISO_SUBSPACE_INIT(m_domNamespaceObjectSpace) - , m_clientSubspaces(makeUnique<ExtendedDOMClientIsoSubspaces>()) - -{ -} - -#undef CLIENT_ISO_SUBSPACE_INIT - -JSHeapData* JSHeapData::ensureHeapData(Heap& heap) -{ - if (!Options::useGlobalGC()) - return new JSHeapData(heap); - - static JSHeapData* singleton = nullptr; - static std::once_flag onceFlag; - std::call_once(onceFlag, [&] { - singleton = new JSHeapData(heap); - }); - return singleton; -} - -JSVMClientData::~JSVMClientData() -{ - ASSERT(m_normalWorld->hasOneRef()); - m_normalWorld = nullptr; -} -void JSVMClientData::create(VM* vm) -{ - JSVMClientData* clientData = new JSVMClientData(*vm); - vm->clientData = clientData; // ~VM deletes this pointer. - clientData->m_normalWorld = DOMWrapperWorld::create(*vm, DOMWrapperWorld::Type::Normal); - - vm->heap.addMarkingConstraint(makeUnique<WebCore::DOMGCOutputConstraint>(*vm, clientData->heapData())); - vm->m_typedArrayController = adoptRef(new WebCoreTypedArrayController(true)); -} - -} // namespace WebCore
\ No newline at end of file |