Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0f2107b6d20520db631fb3321211c53d17c3235f
https://github.com/WebKit/WebKit/commit/0f2107b6d20520db631fb3321211c53d17c3235f
Author: Yusuke Suzuki <[email protected]>
Date: 2026-07-01 (Wed, 01 Jul 2026)
Changed paths:
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M Source/JavaScriptCore/Sources.txt
M Source/JavaScriptCore/b3/B3LowerToAir.cpp
M Source/JavaScriptCore/b3/B3Procedure.h
M Source/JavaScriptCore/b3/air/AirAllocateRegistersByGreedy.cpp
M Source/JavaScriptCore/b3/air/AirCustom.h
M Source/JavaScriptCore/b3/air/AirEmitShuffle.cpp
M Source/JavaScriptCore/b3/air/AirEmitShuffle.h
M Source/JavaScriptCore/b3/air/AirGenerate.cpp
M Source/JavaScriptCore/b3/air/AirLowerAfterRegAlloc.cpp
R Source/JavaScriptCore/b3/air/AirLowerMacros.cpp
R Source/JavaScriptCore/b3/air/AirLowerMacros.h
M Source/JavaScriptCore/b3/air/AirOpcode.opcodes
M Source/JavaScriptCore/b3/air/testair.cpp
Log Message:
-----------
[JSC] Remove Air::lowerMacros
https://bugs.webkit.org/show_bug.cgi?id=318177
rdar://180988076
Reviewed by Yijia Huang and Justin Michaud.
Originally this phase existed because we were emitting Air inst directly
from Wasm BBQ, and we do not want to emit low-level sequence of
Air instructions for SIMD etc. But it is not happening now and it does
not make sense to have this phase since B3 is basically a macro for Air.
We should directly lower B3 nodes to Air instead of using some Air nodes
as a macro.
We also track the use of ColdCCall and Shuffle, and run
lowerAfterRegAlloc only when we have these Air insts. They are rare ones
so we may not have them in major cases.
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/Sources.txt:
* Source/JavaScriptCore/b3/B3LowerToAir.cpp:
* Source/JavaScriptCore/b3/B3Procedure.h:
(JSC::B3::Procedure::setUsesColdCCall):
(JSC::B3::Procedure::usesColdCCall const):
(JSC::B3::Procedure::setUsesShuffle):
(JSC::B3::Procedure::usesShuffle const):
* Source/JavaScriptCore/b3/air/AirAllocateRegistersByGreedy.cpp:
(JSC::B3::Air::Greedy::GreedyAllocator::insertFixupCode):
* Source/JavaScriptCore/b3/air/AirCustom.h:
* Source/JavaScriptCore/b3/air/AirEmitShuffle.cpp:
(JSC::B3::Air::createShuffle):
* Source/JavaScriptCore/b3/air/AirEmitShuffle.h:
* Source/JavaScriptCore/b3/air/AirGenerate.cpp:
(JSC::B3::Air::prepareForGeneration):
* Source/JavaScriptCore/b3/air/AirLowerAfterRegAlloc.cpp:
(JSC::B3::Air::lowerAfterRegAlloc):
* Source/JavaScriptCore/b3/air/AirLowerMacros.cpp: Removed.
* Source/JavaScriptCore/b3/air/AirLowerMacros.h: Removed.
* Source/JavaScriptCore/b3/air/AirOpcode.opcodes:
* Source/JavaScriptCore/b3/air/testair.cpp:
Canonical link: https://commits.webkit.org/316308@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications