Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 819db6a41c384e0b26782fa3b702617a17d4dc73
      
https://github.com/WebKit/WebKit/commit/819db6a41c384e0b26782fa3b702617a17d4dc73
  Author: Yusuke Suzuki <[email protected]>
  Date:   2026-10-12 (Mon, 12 Oct 2026)

  Changed paths:
    M Source/JavaScriptCore/dfg/DFGPutStackSinkingPhase.cpp

  Log Message:
  -----------
  [JSC] PutStackSinkingPhase should compute reaching defs with a single 
dominator tree walk
https://bugs.webkit.org/show_bug.cgi?id=327153
rdar://189742151

Reviewed by Dan Hecht.

We found that DFGPutStackSinkingPhase's SSACalculator::reachingDefAtHead
is taking very long time. Each query walks up the dominator tree doing a
hash lookup per block, so the phase was O(blocks * operands * dominator depth)
plus hash table growth from path compression.

Instead, this patch handles blocks in dominator tree preorder while
maintaining the defs reaching the current block's tail. Collecting the
def as undo logs to move to the different dominator subtree. The mapping
at the head of a block is then just a copy of that array.

* Source/JavaScriptCore/dfg/DFGPutStackSinkingPhase.cpp:

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



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

Reply via email to