Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 64baa91531461afd210795068a7bff5b2ebf5dc4
      
https://github.com/WebKit/WebKit/commit/64baa91531461afd210795068a7bff5b2ebf5dc4
  Author: Shu-yu Guo <[email protected]>
  Date:   2026-09-30 (Wed, 30 Sep 2026)

  Changed paths:
    A JSTests/stress/constant-folding-clip-skips-cfa-unreachable-blocks.js
    M Source/JavaScriptCore/dfg/DFGConstantFoldingPhase.cpp

  Log Message:
  -----------
  [JSC] Don't visit CFA-unreachable blocks in ConstantFoldingPhase
https://bugs.webkit.org/show_bug.cgi?id=325835
rdar://187976312

Reviewed by Yusuke Suzuki.

A CFA-unreachable block will have all its AI values be bottom (None), which may
trip debug asserts like the array materialization indexing type one, which
depends on AI populating types. This PR skips CFA-unreachable blocks during
constant folding.

Test: JSTests/stress/constant-folding-clip-skips-cfa-unreachable-blocks.js

* JSTests/stress/constant-folding-clip-skips-cfa-unreachable-blocks.js: Added.
(let.generator):
(async generator):
(drainMicrotasks):
(opt):
* Source/JavaScriptCore/dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::run):

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



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

Reply via email to