[webkit-changes] [WebKit/WebKit] a9771d: [JSC] Implement DeleteById and DeleteByVal handlers

Yusuke Suzuki noreply at github.com
Thu Jun 20 15:18:41 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a9771d495526fdb81c50e1f22655533b052a9eef
      https://github.com/WebKit/WebKit/commit/a9771d495526fdb81c50e1f22655533b052a9eef
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2024-06-20 (Thu, 20 Jun 2024)

  Changed paths:
    M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
    M Source/JavaScriptCore/bytecode/InlineCacheCompiler.h
    M Source/JavaScriptCore/jit/BaselineJITRegisters.h
    M Source/JavaScriptCore/jit/JITThunks.h

  Log Message:
  -----------
  [JSC] Implement DeleteById and DeleteByVal handlers
https://bugs.webkit.org/show_bug.cgi?id=275705
rdar://130224209

Reviewed by Yijia Huang.

This patch adds DeleteById and DeleteByVal handlers for Handler IC.
The implementation is quite simple, and it is just following to what we did for PutByVal etc.
We also make handler code generator function names consistent. Name them as Handler, not HandlerCodeGenerator.

* Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp:
(JSC::InlineCacheHandler::createPreCompiled):
(JSC::getByIdLoadHandlerImpl):
(JSC::getByIdLoadOwnPropertyHandler):
(JSC::getByIdLoadPrototypePropertyHandler):
(JSC::getByIdMissHandler):
(JSC::putByIdReplaceHandler):
(JSC::putByIdTransitionHandlerImpl):
(JSC::putByIdTransitionNonAllocatingHandler):
(JSC::putByIdTransitionNewlyAllocatingHandler):
(JSC::putByIdTransitionReallocatingHandler):
(JSC::deleteByIdDeleteHandler):
(JSC::deleteByIdIgnoreHandlerImpl):
(JSC::deleteByIdDeleteNonConfigurableHandler):
(JSC::deleteByIdDeleteMissHandler):
(JSC::getByValLoadHandlerImpl):
(JSC::getByValWithStringLoadOwnPropertyHandler):
(JSC::getByValWithStringLoadPrototypePropertyHandler):
(JSC::getByValWithSymbolLoadOwnPropertyHandler):
(JSC::getByValWithSymbolLoadPrototypePropertyHandler):
(JSC::getByValMissHandlerImpl):
(JSC::getByValWithStringMissHandler):
(JSC::getByValWithSymbolMissHandler):
(JSC::putByValReplaceHandlerImpl):
(JSC::putByValWithStringReplaceHandler):
(JSC::putByValWithSymbolReplaceHandler):
(JSC::putByValTransitionHandlerImpl):
(JSC::putByValWithStringTransitionNonAllocatingHandler):
(JSC::putByValWithSymbolTransitionNonAllocatingHandler):
(JSC::putByValWithStringTransitionNewlyAllocatingHandler):
(JSC::putByValWithSymbolTransitionNewlyAllocatingHandler):
(JSC::putByValWithStringTransitionReallocatingHandler):
(JSC::putByValWithSymbolTransitionReallocatingHandler):
(JSC::deleteByValDeleteHandlerImpl):
(JSC::deleteByValIgnoreHandlerImpl):
(JSC::deleteByValWithStringDeleteHandler):
(JSC::deleteByValWithStringDeleteNonConfigurableHandler):
(JSC::deleteByValWithStringDeleteMissHandler):
(JSC::deleteByValWithSymbolDeleteHandler):
(JSC::deleteByValWithSymbolDeleteNonConfigurableHandler):
(JSC::deleteByValWithSymbolDeleteMissHandler):
(JSC::InlineCacheCompiler::compileOneAccessCaseHandler):
(JSC::getByIdLoadHandlerCodeGeneratorImpl): Deleted.
(JSC::getByIdLoadOwnPropertyHandlerCodeGenerator): Deleted.
(JSC::getByIdLoadPrototypePropertyHandlerCodeGenerator): Deleted.
(JSC::getByIdMissHandlerCodeGenerator): Deleted.
(JSC::putByIdReplaceHandlerCodeGenerator): Deleted.
(JSC::putByIdTransitionHandlerCodeGeneratorImpl): Deleted.
(JSC::putByIdTransitionNonAllocatingHandlerCodeGenerator): Deleted.
(JSC::putByIdTransitionNewlyAllocatingHandlerCodeGenerator): Deleted.
(JSC::putByIdTransitionReallocatingHandlerCodeGenerator): Deleted.
(JSC::getByValLoadHandlerCodeGeneratorImpl): Deleted.
(JSC::getByValWithStringLoadOwnPropertyHandlerCodeGenerator): Deleted.
(JSC::getByValWithStringLoadPrototypePropertyHandlerCodeGenerator): Deleted.
(JSC::getByValWithSymbolLoadOwnPropertyHandlerCodeGenerator): Deleted.
(JSC::getByValWithSymbolLoadPrototypePropertyHandlerCodeGenerator): Deleted.
(JSC::getByValMissHandlerCodeGeneratorImpl): Deleted.
(JSC::getByValWithStringMissHandlerCodeGenerator): Deleted.
(JSC::getByValWithSymbolMissHandlerCodeGenerator): Deleted.
(JSC::putByValReplaceHandlerCodeGeneratorImpl): Deleted.
(JSC::putByValWithStringReplaceHandlerCodeGenerator): Deleted.
(JSC::putByValWithSymbolReplaceHandlerCodeGenerator): Deleted.
(JSC::putByValTransitionHandlerCodeGeneratorImpl): Deleted.
(JSC::putByValWithStringTransitionNonAllocatingHandlerCodeGenerator): Deleted.
(JSC::putByValWithSymbolTransitionNonAllocatingHandlerCodeGenerator): Deleted.
(JSC::putByValWithStringTransitionNewlyAllocatingHandlerCodeGenerator): Deleted.
(JSC::putByValWithSymbolTransitionNewlyAllocatingHandlerCodeGenerator): Deleted.
(JSC::putByValWithStringTransitionReallocatingHandlerCodeGenerator): Deleted.
(JSC::putByValWithSymbolTransitionReallocatingHandlerCodeGenerator): Deleted.
* Source/JavaScriptCore/bytecode/InlineCacheCompiler.h:
* Source/JavaScriptCore/jit/BaselineJITRegisters.h:
* Source/JavaScriptCore/jit/JITThunks.h:

Canonical link: https://commits.webkit.org/280223@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