Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: bf1dab73b14dafe56b0e5a9f987fdf8ca4f4ee66
      
https://github.com/WebKit/WebKit/commit/bf1dab73b14dafe56b0e5a9f987fdf8ca4f4ee66
  Author: Yusuke Suzuki <[email protected]>
  Date:   2026-08-06 (Thu, 06 Aug 2026)

  Changed paths:
    M Source/JavaScriptCore/bytecode/DataFormat.h
    M Source/JavaScriptCore/bytecode/ValueRecovery.cpp
    M Source/JavaScriptCore/bytecode/ValueRecovery.h
    M Source/JavaScriptCore/dfg/DFGAbstractValue.h
    M Source/JavaScriptCore/dfg/DFGGenerationInfo.h
    M Source/JavaScriptCore/dfg/DFGNode.h
    M Source/JavaScriptCore/dfg/DFGOSREntry.cpp
    M Source/JavaScriptCore/dfg/DFGOSRExit.cpp
    M Source/JavaScriptCore/dfg/DFGSilentRegisterSavePlan.h
    M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
    M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
    M Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp
    M Source/JavaScriptCore/dfg/DFGUseKind.h
    M Source/JavaScriptCore/dfg/DFGVariableEvent.h
    M Source/JavaScriptCore/dfg/DFGVariableEventStream.cpp
    M Source/JavaScriptCore/jit/CallFrameShuffler64.cpp
    M Source/JavaScriptCore/jit/JIT.h
    M Source/JavaScriptCore/jit/JITArithmetic.cpp
    M Source/JavaScriptCore/jit/JITCall.cpp
    M Source/JavaScriptCore/jit/JITInlines.h
    M Source/JavaScriptCore/jit/JITOpcodes.cpp
    M Source/JavaScriptCore/jit/JITPropertyAccess.cpp
    M Source/JavaScriptCore/wasm/WasmBBQJIT.cpp
    M Source/JavaScriptCore/wasm/WasmBBQJIT.h
    M Source/JavaScriptCore/wasm/WasmBBQJIT64.h

  Log Message:
  -----------
  [JSC] Remove many 32bit-only concept from JIT
https://bugs.webkit.org/show_bug.cgi?id=321164
rdar://184200996

Reviewed by Sosuke Suzuki.

We remove many GPR pairs which are only used for 32bit's JSValue
representation. Also remove various DFG formats which are only used
in 32bit. Additionally, dropping 32bit-only-related OSR entry code.

* Source/JavaScriptCore/bytecode/DataFormat.h:
(JSC::isJSFormat): Deleted.
(JSC::isJSInt32): Deleted.
(JSC::isJSDouble): Deleted.
(JSC::isJSCell): Deleted.
(JSC::isJSBoolean): Deleted.
* Source/JavaScriptCore/bytecode/ValueRecovery.cpp:
(JSC::ValueRecovery::dumpInContext const):
* Source/JavaScriptCore/bytecode/ValueRecovery.h:
(JSC::ValueRecovery::inGPR):
(JSC::ValueRecovery::isInGPR const):
(JSC::ValueRecovery::dataFormat const):
(JSC::ValueRecovery::forEachReg):
* Source/JavaScriptCore/dfg/DFGAbstractValue.h:
* Source/JavaScriptCore/dfg/DFGGenerationInfo.h:
(JSC::DFG::GenerationInfo::initCell):
(JSC::DFG::GenerationInfo::fillStrictInt52):
(JSC::DFG::GenerationInfo::initBoolean): Deleted.
(JSC::DFG::GenerationInfo::isJSFormat): Deleted.
(JSC::DFG::GenerationInfo::isJSInt32): Deleted.
(JSC::DFG::GenerationInfo::isJSDouble): Deleted.
(JSC::DFG::GenerationInfo::isJSCell): Deleted.
(JSC::DFG::GenerationInfo::isJSBoolean): Deleted.
(JSC::DFG::GenerationInfo::fillBoolean): Deleted.
* Source/JavaScriptCore/dfg/DFGNode.h:
(JSC::DFG::Node::asBoolean): Deleted.
* Source/JavaScriptCore/dfg/DFGOSREntry.cpp:
(JSC::DFG::prepareOSREntry):
* Source/JavaScriptCore/dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::compileExit):
* Source/JavaScriptCore/dfg/DFGSilentRegisterSavePlan.h:
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::silentSpillImpl):
(JSC::DFG::SpeculativeJIT::silentFillImpl):
(JSC::DFG::SpeculativeJIT::checkGeneratedTypeForToInt32):
(JSC::DFG::SpeculativeJIT::compileExtractFromTuple):
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::spill):
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::fillSpeculateBigInt32):
* Source/JavaScriptCore/dfg/DFGUseKind.h:
* Source/JavaScriptCore/dfg/DFGVariableEvent.h:
* Source/JavaScriptCore/dfg/DFGVariableEventStream.cpp:
* Source/JavaScriptCore/jit/CallFrameShuffler64.cpp:
(JSC::CallFrameShuffler::emitStore):
(JSC::CallFrameShuffler::emitBox):
* Source/JavaScriptCore/jit/JIT.h:
* Source/JavaScriptCore/jit/JITArithmetic.cpp:
(JSC::JIT::emit_compareUnsignedAndJumpImpl):
(JSC::JIT::emit_compareUnsignedImpl):
* Source/JavaScriptCore/jit/JITCall.cpp:
(JSC::JIT::compileCallDirectEval):
(JSC::JIT::emit_op_async_iterator_next):
(JSC::JIT::emit_op_instanceof):
* Source/JavaScriptCore/jit/JITInlines.h:
(JSC::JIT::emitGetVirtualRegisterPayload): Deleted.
* Source/JavaScriptCore/jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_set_function_name):
(JSC::JIT::emit_op_get_parent_scope):
(JSC::JIT::emit_op_create_this):
(JSC::JIT::emitNewFuncCommon):
(JSC::JIT::emitNewFuncExprCommon):
(JSC::JIT::emit_op_create_lexical_environment):
(JSC::JIT::emit_op_create_scoped_arguments):
(JSC::JIT::emit_op_log_shadow_chicken_prologue):
(JSC::JIT::emit_op_log_shadow_chicken_tail):
* Source/JavaScriptCore/jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter_by_id):
(JSC::JIT::emit_op_put_getter_by_val):
(JSC::JIT::emit_op_put_setter_by_val):
(JSC::JIT::emit_op_resolve_scope):
(JSC::JIT::emitSlow_op_resolve_scope):
(JSC::JIT::emit_op_get_from_scope):
(JSC::JIT::emitSlow_op_get_from_scope):
(JSC::JIT::emit_op_put_to_scope):
(JSC::JIT::emit_op_get_from_arguments):
(JSC::JIT::emit_op_put_to_arguments):
(JSC::JIT::emit_op_get_internal_field):
(JSC::JIT::emit_op_put_internal_field):
* Source/JavaScriptCore/wasm/WasmBBQJIT.cpp:
(JSC::Wasm::BBQJITImpl::Location::dump const):
(JSC::Wasm::BBQJITImpl::Location::operator== const):
(JSC::Wasm::BBQJITImpl::BBQJIT::saveValuesAcrossCallAndPassArguments):
(JSC::Wasm::BBQJITImpl::BBQJIT::returnValuesFromCall):
(JSC::Wasm::BBQJITImpl::BBQJIT::addFusedIfCompare):
(JSC::Wasm::BBQJITImpl::BBQJIT::setLRUKey):
(JSC::Wasm::BBQJITImpl::BBQJIT::allocateWithHint):
(JSC::Wasm::BBQJITImpl::BBQJIT::bind):
(JSC::Wasm::BBQJITImpl::BBQJIT::unbind):
(JSC::Wasm::BBQJITImpl::Location::isGPR2 const): Deleted.
(JSC::Wasm::BBQJITImpl::Location::asGPRlo const): Deleted.
(JSC::Wasm::BBQJITImpl::Location::asGPRhi const): Deleted.
* Source/JavaScriptCore/wasm/WasmBBQJIT.h:
(JSC::Wasm::BBQJITImpl::BBQJIT::ScratchScope::initializedPreservedSet):
* Source/JavaScriptCore/wasm/WasmBBQJIT64.h:
(JSC::Wasm::BBQJITImpl::BBQJIT::typeNeedsGPR2): Deleted.

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



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

Reply via email to