Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2ca559226b1bdd624bc8c4224662a5794227c048
      
https://github.com/WebKit/WebKit/commit/2ca559226b1bdd624bc8c4224662a5794227c048
  Author: Anand Srinivasan <[email protected]>
  Date:   2026-08-25 (Tue, 25 Aug 2026)

  Changed paths:
    A JSTests/microbenchmarks/temporal-plain-month-day-lunisolar-month-code.js
    A JSTests/stress/temporal-lunisolar-memo-aliasing.js
    M Source/JavaScriptCore/runtime/temporal/core/CalendarICUBridge.cpp

  Log Message:
  -----------
  Speed up lunisolar calendar month walk in JS Temporal
https://bugs.webkit.org/show_bug.cgi?id=322044
rdar://185152703

Reviewed by Yijia Huang.

Optimize chinese/dangi month code resolution in CalendarICUBridge.cpp by
caching results and no longer single stepping forward day by day.

                                                  TipOfTree                  
Changes
temporal-plain-month-day-lunisolar-month-code
                                            14785.2729+-102.0720   ^    
223.6251+-4.9208        ^ definitely 66.1163x faster
<geometric>                                 14785.2729+-102.0720   ^    
223.6251+-4.9208        ^ definitely 66.1163x faster

Tests: JSTests/microbenchmarks/temporal-plain-month-day-lunisolar-month-code.js
       JSTests/stress/temporal-lunisolar-memo-aliasing.js

* Source/JavaScriptCore/runtime/temporal/core/CalendarICUBridge.cpp:
(JSC::TemporalCore::advanceToNextLunisolarMonth):
(JSC::TemporalCore::actualLunisolarMonthLength):
(JSC::TemporalCore::nonISOCalendarDateToISO):
(JSC::TemporalCore::WTF_GUARDED_BY_LOCK):
(JSC::TemporalCore::addUTCCalendarDays):
(JSC::TemporalCore::nonISODateUntil):
* JSTests/microbenchmarks/temporal-plain-month-day-lunisolar-month-code.js: 
Added.
* JSTests/stress/temporal-lunisolar-memo-aliasing.js: Added.
(shouldBe):
(walkSlot):

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



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

Reply via email to