[webkit-changes] [WebKit/WebKit] 9c06eb: [JSC] Use more m_vmValue in FTL

Yusuke Suzuki noreply at github.com
Tue Sep 20 13:11:20 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9c06eb3162b5f48ee882984e91f8ac9d4f9f1fdd
      https://github.com/WebKit/WebKit/commit/9c06eb3162b5f48ee882984e91f8ac9d4f9f1fdd
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2022-09-20 (Tue, 20 Sep 2022)

  Changed paths:
    M Source/JavaScriptCore/ftl/FTLAbstractHeapRepository.h
    M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
    M Source/JavaScriptCore/runtime/VM.h

  Log Message:
  -----------
  [JSC] Use more m_vmValue in FTL
https://bugs.webkit.org/show_bug.cgi?id=245409
rdar://problem/100155777

Reviewed by Mark Lam.

This patch leverages more on m_vmValue in FTL, this potentially allows FTL to reduce VM pointer
materialization more. We also move some of frequently accessed fields to the top of VM so that
we can load with immediate offset in ARM64 (so reducing machine code size).

* Source/JavaScriptCore/ftl/FTLAbstractHeapRepository.h:
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::lower):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateActivation):
(JSC::FTL::DFG::LowerDFGToB3::compileNewFunction):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateDirectArguments):
(JSC::FTL::DFG::LowerDFGToB3::compileNewStringObject):
(JSC::FTL::DFG::LowerDFGToB3::compileNotifyWrite):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
* Source/JavaScriptCore/runtime/VM.h:
(JSC::VM::offsetOfSoftStackLimit):

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




More information about the webkit-changes mailing list