Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dd6466790ff0627f99c0321f2b61214dc4971dde
      
https://github.com/WebKit/WebKit/commit/dd6466790ff0627f99c0321f2b61214dc4971dde
  Author: Yijia Huang <[email protected]>
  Date:   2025-04-15 (Tue, 15 Apr 2025)

  Changed paths:
    M Source/JavaScriptCore/dfg/DFGCloneHelper.h
    M Source/JavaScriptCore/dfg/DFGLoopUnrollingPhase.cpp

  Log Message:
  -----------
  [JSC] Fix CloneHelper usage in loop unrolling to pass both original and clone 
blocks
https://bugs.webkit.org/show_bug.cgi?id=291543
rdar://149243490

Reviewed by Yusuke Suzuki.

Fixes the call to CloneHelper::cloneBlock to correctly pass both the original 
and cloned
BasicBlock to the customization lambda. This ensures the successor 
customization logic
can distinguish which block is being cloned and update the tail block’s branch 
correctly.

Previously, only the clone block was passed, which caused ambiguity and 
incorrect behavior
when customizing successors in loop unrolling.

Also updates the loop unrolling logic to clone from the loop header directly 
instead of
looping through all blocks, simplifying the logic and improving correctness.

* Source/JavaScriptCore/dfg/DFGCloneHelper.h:
(JSC::DFG::CloneHelper::cloneBlock):
* Source/JavaScriptCore/dfg/DFGLoopUnrollingPhase.cpp:
(JSC::DFG::LoopUnrollingPhase::unrollLoop):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to