[webkit-changes] [WebKit/WebKit] 655996: Remove most legacy C API shared VM code

Keith Miller noreply at github.com
Sun Oct 20 20:16:53 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 655996c94106d0a331a2c863639f11f67b461cf1
      https://github.com/WebKit/WebKit/commit/655996c94106d0a331a2c863639f11f67b461cf1
  Author: Keith Miller <keith_miller at apple.com>
  Date:   2024-10-20 (Sun, 20 Oct 2024)

  Changed paths:
    M Source/JavaScriptCore/API/JSContextRef.cpp
    M Source/JavaScriptCore/runtime/AtomicsObject.cpp
    M Source/JavaScriptCore/runtime/JSLock.cpp
    M Source/JavaScriptCore/runtime/JSLock.h
    M Source/JavaScriptCore/runtime/VM.cpp
    M Source/JavaScriptCore/runtime/VM.h

  Log Message:
  -----------
  Remove most legacy C API shared VM code
https://bugs.webkit.org/show_bug.cgi?id=281841
rdar://138286903

Reviewed by Yijia Huang.

Right now there's a bunch of code in VM and JSLock for the super legacy
shared VM for C API. This patch removes most of that code and hides
the last remnents of the single shared VM in `JSGlobalContextCreate`.

This shouldn't be a semantic change only a code cleanup. The only
places we looked at the VMType was to see if it was an API VM or
Web VM.

Lastly, VMType is now an enum class.

* Source/JavaScriptCore/API/JSContextRef.cpp:
(JSGlobalContextCreate):
* Source/JavaScriptCore/runtime/AtomicsObject.cpp:
(JSC::AtomicsObject::finishCreation):
* Source/JavaScriptCore/runtime/JSLock.cpp:
(JSC::GlobalJSLock::GlobalJSLock): Deleted.
(JSC::GlobalJSLock::~GlobalJSLock): Deleted.
* Source/JavaScriptCore/runtime/JSLock.h:
* Source/JavaScriptCore/runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::~VM):
(JSC::VM::createContextGroup):
(JSC::VM::create):
(JSC::VM::tryCreate):
(JSC::VM::sharedInstanceExists): Deleted.
(JSC::VM::sharedInstance): Deleted.
(JSC::VM::sharedInstanceInternal): Deleted.
* Source/JavaScriptCore/runtime/VM.h:
(JSC::VM::usingAPI):
(JSC::VM::isSharedInstance): Deleted.

Canonical link: https://commits.webkit.org/285497@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list