[webkit-changes] [WebKit/WebKit] 45179f: [JSC] Do some speculation in DFG strength reductio...

Yusuke Suzuki noreply at github.com
Tue Oct 15 16:14:36 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 45179f2bdc70baa9fab73da5ab9f8b89b6228a59
      https://github.com/WebKit/WebKit/commit/45179f2bdc70baa9fab73da5ab9f8b89b6228a59
  Author: Yusuke Suzuki <ysuzuki at apple.com>
  Date:   2024-10-15 (Tue, 15 Oct 2024)

  Changed paths:
    M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
    M Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp

  Log Message:
  -----------
  [JSC] Do some speculation in DFG strength reduction for comparisons
https://bugs.webkit.org/show_bug.cgi?id=281413
<rdar://problem/137862450>

Reviewed by Yijia Huang.

It is possible that later optimization wipes some type-polluting nodes,
and it turned out that in the later strength reduction, some type
speculation can be obvious while it was not obvious when doing fixup
phase. So, doing some simple speculation for comparisons in DFG strength
reduction.

We also clean up GPRInfo::numberOfRegisters based check in DFG (mainly
used for comparisons) since all supported archs have more than 10
registers.

* Source/JavaScriptCore/dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupCompareStrictEqAndSameValue):
* Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):

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