Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0b634d738806db5de0d151920a066b5170fd20d5
      
https://github.com/WebKit/WebKit/commit/0b634d738806db5de0d151920a066b5170fd20d5
  Author: Dan Hecht <[email protected]>
  Date:   2026-04-21 (Tue, 21 Apr 2026)

  Changed paths:
    M Source/JavaScriptCore/b3/air/AirAllocateRegistersByGreedy.cpp

  Log Message:
  -----------
  [JSC] GreedyRegAlloc: Split SplitMetadata into per-kind types
https://bugs.webkit.org/show_bug.cgi?id=312801
rdar://175188148

Reviewed by Yusuke Suzuki.

Replace the single SplitMetadata struct with separate
AroundClobbersSplitMetadata and IntraBlockSplitMetadata types, each
stored in its own vector. This makes the per-kind invariants explicit
in the type system and prepares for adding a third split kind.

AroundClobbersSplitMetadata::Split no longer carries the unused
lastDefPoint field. The type-switch dispatch in insertFixupCode() is
replaced by separate loops over each vector.

* Source/JavaScriptCore/b3/air/AirAllocateRegistersByGreedy.cpp:
(JSC::B3::Air::Greedy::AroundClobbersSplitMetadata::Split::dump const):
(JSC::B3::Air::Greedy::AroundClobbersSplitMetadata::AroundClobbersSplitMetadata):
(JSC::B3::Air::Greedy::AroundClobbersSplitMetadata::dump const):
(JSC::B3::Air::Greedy::IntraBlockSplitMetadata::IntraBlockSplitMetadata):
(JSC::B3::Air::Greedy::IntraBlockSplitMetadata::dump const):
(JSC::B3::Air::Greedy::GreedyAllocator::GreedyAllocator):
(JSC::B3::Air::Greedy::GreedyAllocator::dump const):
(JSC::B3::Air::Greedy::GreedyAllocator::trySplitAroundClobbers):
(JSC::B3::Air::Greedy::GreedyAllocator::trySplitIntraBlock):
(JSC::B3::Air::Greedy::GreedyAllocator::spill):
(JSC::B3::Air::Greedy::GreedyAllocator::insertFixupCode):
(JSC::B3::Air::Greedy::GreedyAllocator::insertSplitAroundClobbersFixupCode):
(JSC::B3::Air::Greedy::GreedyAllocator::insertSplitIntraBlockFixupCode):
(JSC::B3::Air::Greedy::SplitMetadata::Split::dump const): Deleted.
(JSC::B3::Air::Greedy::SplitMetadata::SplitMetadata): Deleted.
(JSC::B3::Air::Greedy::SplitMetadata::dump const): Deleted.

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



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

Reply via email to