Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 05c4d7bc6de03c2975f98b4c2916c829b064581d
      
https://github.com/WebKit/WebKit/commit/05c4d7bc6de03c2975f98b4c2916c829b064581d
  Author: Yijia Huang <yijia_hu...@apple.com>
  Date:   2025-04-04 (Fri, 04 Apr 2025)

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

  Log Message:
  -----------
  [JSC] DFG Loop Unrolling: Track and print clone source for debug assertions
https://bugs.webkit.org/show_bug.cgi?id=291090
rdar://148601073

Reviewed by Yusuke Suzuki.

This patch enhances loop unrolling debugging by adding support for tracking
the original source block (cloneSource) for each cloned basic block in 
DFGBasicBlock.
The cloneSource pointer is enabled only under ASSERT_ENABLED to avoid runtime
overhead in release builds.

Additionally, Graph::dumpBlockHeader() now prints the clone source block if
available, improving traceability during debugging and validation of loop
unrolling logic.

After loop unrolling, we might see output like the following, where block 17
is a clone of block 9:

    9 24:   Block #9 (bc#52):
 0  9 24:   D@62:<!0:->     LoopHint(MustGen, W:SideState, bc#52, ExitValid)
            ...

   17 24:   Block #17<-#9 (bc#52):
 0 17 24:   D@256:<!0:->        LoopHint(MustGen, W:SideState, bc#52, ExitValid)
            ...

* Source/JavaScriptCore/dfg/DFGBasicBlock.h:
* Source/JavaScriptCore/dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dumpBlockHeader):
* Source/JavaScriptCore/dfg/DFGLoopUnrollingPhase.cpp:
(JSC::DFG::LoopUnrollingPhase::unrollLoop):

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



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

Reply via email to