From cdabcfd9d09d2f4928ba7a918f654e001bb3c2eb Mon Sep 17 00:00:00 2001 From: Jarred SUmner Date: Sat, 2 Oct 2021 22:54:19 -0700 Subject: Linux works now. --- src/javascript/jsc/bindings/ZigGlobalObject.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/javascript/jsc/bindings/ZigGlobalObject.cpp') diff --git a/src/javascript/jsc/bindings/ZigGlobalObject.cpp b/src/javascript/jsc/bindings/ZigGlobalObject.cpp index dd98742d2..e470e27b5 100644 --- a/src/javascript/jsc/bindings/ZigGlobalObject.cpp +++ b/src/javascript/jsc/bindings/ZigGlobalObject.cpp @@ -58,6 +58,8 @@ #include #include +#include + #include #include #include @@ -82,22 +84,21 @@ namespace JSCastingHelpers = JSC::JSCastingHelpers; bool has_loaded_jsc = false; -extern "C" JSC__JSGlobalObject *Zig__GlobalObject__create(JSClassRef *globalObjectClass, int count, - void *console_client) { - - if (!has_loaded_jsc) { +extern "C" void JSCInitialize() { + if (has_loaded_jsc) return; JSC::Options::useSourceProviderCache() = true; JSC::Options::useUnlinkedCodeBlockJettisoning() = false; // JSC::Options::useTopLevelAwait() = true; JSC::Options::exposeInternalModuleLoader() = true; - std::set_terminate([]() { Zig__GlobalObject__onCrash(); }); + // std::set_terminate([]() { Zig__GlobalObject__onCrash(); }); WTF::initializeMainThread(); JSC::initialize(); + // Gigacage::disablePrimitiveGigacage(); has_loaded_jsc = true; - } - - // JSC::Options::useCodeCache() = false; +} +extern "C" JSC__JSGlobalObject *Zig__GlobalObject__create(JSClassRef *globalObjectClass, int count, + void *console_client) { auto heapSize = JSC::LargeHeap; JSC::VM &vm = JSC::VM::create(heapSize).leakRef(); -- cgit v1.2.3