Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 68cde6ba2ad363f71e6c9faa71ae9ba7955b4506
      
https://github.com/WebKit/WebKit/commit/68cde6ba2ad363f71e6c9faa71ae9ba7955b4506
  Author: Justin Michaud <[email protected]>
  Date:   2026-07-31 (Fri, 31 Jul 2026)

  Changed paths:
    M Source/JavaScriptCore/dfg/DFGIntegerRangeOptimizationPhase.cpp
    M Source/JavaScriptCore/dfg/DFGNodeFlowProjection.h
    M Source/JavaScriptCore/runtime/OptionsList.h

  Log Message:
  -----------
  Make IRO faster
https://bugs.webkit.org/show_bug.cgi?id=320289

Reviewed by Keith Miller.

IRO is pretty dumb sometimes, but it takes up a lot of compile time. Here
I have tuned it to not pessimise any existing benchmarks, but to stop
early in larger functions. When we get larger functions that benefit
from IRO in our benchmarks, we can reconsider this tuning (or perhaps
do something even more clever, such as an adjustable budget based on
trip count).

This saves ~20% of IRO execution time on IRO-heavy JS3 subtests, which is
~3% of FTL compile time.

* Source/JavaScriptCore/dfg/DFGIntegerRangeOptimizationPhase.cpp:
* Source/JavaScriptCore/dfg/DFGNodeFlowProjection.h:
(JSC::DFG::NodeFlowProjection::hash const):
* Source/JavaScriptCore/runtime/OptionsList.h:

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



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

Reply via email to