aboutsummaryrefslogtreecommitdiff
path: root/src/bun.js/bindings/ZigGlobalObject.cpp
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2023-07-29 06:18:51 -0700
committerGravatar GitHub <noreply@github.com> 2023-07-29 06:18:51 -0700
commit681be10294c19b8ce402ec44df5cd6554e2c86c0 (patch)
treed7729f1c4b2cd6f2f9e9ad45002b8fa3f44ba8fe /src/bun.js/bindings/ZigGlobalObject.cpp
parentdccf82b1c682a84c42540ba9e00e5e9296cc7e5f (diff)
downloadbun-681be10294c19b8ce402ec44df5cd6554e2c86c0.tar.gz
bun-681be10294c19b8ce402ec44df5cd6554e2c86c0.tar.zst
bun-681be10294c19b8ce402ec44df5cd6554e2c86c0.zip
Make `bun:jsc` memoryUsage more accurate (#3876)
Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Diffstat (limited to 'src/bun.js/bindings/ZigGlobalObject.cpp')
-rw-r--r--src/bun.js/bindings/ZigGlobalObject.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/bun.js/bindings/ZigGlobalObject.cpp b/src/bun.js/bindings/ZigGlobalObject.cpp
index 1aefe476c..ffd6e990a 100644
--- a/src/bun.js/bindings/ZigGlobalObject.cpp
+++ b/src/bun.js/bindings/ZigGlobalObject.cpp
@@ -3222,6 +3222,13 @@ void GlobalObject::finishCreation(VM& vm)
init.set(Bun::createCommonJSModuleStructure(reinterpret_cast<Zig::GlobalObject*>(init.owner)));
});
+ m_memoryFootprintStructure.initLater(
+ [](const JSC::LazyProperty<JSC::JSGlobalObject, Structure>::Initializer& init) {
+ init.set(
+ createMemoryFootprintStructure(
+ init.vm, reinterpret_cast<Zig::GlobalObject*>(init.owner)));
+ });
+
m_commonJSFunctionArgumentsStructure.initLater(
[](const Initializer<Structure>& init) {
auto* globalObject = reinterpret_cast<Zig::GlobalObject*>(init.owner);
@@ -4688,6 +4695,7 @@ void GlobalObject::visitChildrenImpl(JSCell* cell, Visitor& visitor)
thisObject->m_lazyTestModuleObject.visit(visitor);
thisObject->m_lazyPreloadTestModuleObject.visit(visitor);
thisObject->m_commonJSModuleObjectStructure.visit(visitor);
+ thisObject->m_memoryFootprintStructure.visit(visitor);
thisObject->m_lazyPasswordObject.visit(visitor);
thisObject->m_commonJSFunctionArgumentsStructure.visit(visitor);
thisObject->m_cachedGlobalObjectStructure.visit(visitor);