Skip to content

Commit 6adb4a8

Browse files
committed
Unreviewed, revert 255583@main because of build breakage
https://bugs.webkit.org/show_bug.cgi?id=246588 rdar://101211820 * JSTests/wasm/wasm.json: * Source/JavaScriptCore/b3/B3Bank.h: (JSC::B3::minimumWidth): Deleted. (JSC::B3::conservativeWidthWithoutVectors): Deleted. (JSC::B3::conservativeWidth): Deleted. (JSC::B3::conservativeRegisterBytes): Deleted. (JSC::B3::conservativeRegisterBytesWithoutVectors): Deleted. * Source/JavaScriptCore/b3/B3ConstrainedValue.h: (JSC::B3::ArgumentLocation::ArgumentLocation): Deleted. * Source/JavaScriptCore/b3/B3Effects.h: * Source/JavaScriptCore/b3/B3LowerMacros.cpp: * Source/JavaScriptCore/b3/B3LowerToAir.cpp: * Source/JavaScriptCore/b3/B3MemoryValue.cpp: (JSC::B3::MemoryValue::accessByteSize const): * Source/JavaScriptCore/b3/B3MemoryValue.h: * Source/JavaScriptCore/b3/B3Procedure.cpp: (JSC::B3::Procedure::mutableGPRs): (JSC::B3::Procedure::mutableFPRs): * Source/JavaScriptCore/b3/B3Procedure.h: * Source/JavaScriptCore/b3/B3StackmapGenerationParams.cpp: (JSC::B3::StackmapGenerationParams::usedRegisters const): (JSC::B3::StackmapGenerationParams::unavailableRegisters const): * Source/JavaScriptCore/b3/B3StackmapGenerationParams.h: * Source/JavaScriptCore/b3/B3StackmapSpecial.cpp: (JSC::B3::StackmapSpecial::reportUsedRegisters): (JSC::B3::StackmapSpecial::extraClobberedRegs): (JSC::B3::StackmapSpecial::extraEarlyClobberedRegs): * Source/JavaScriptCore/b3/B3StackmapSpecial.h: * Source/JavaScriptCore/b3/B3StackmapValue.h: * Source/JavaScriptCore/b3/B3ValueRep.cpp: (JSC::B3::ValueRep::addUsedRegistersTo const): (JSC::B3::ValueRep::usedRegisters const): * Source/JavaScriptCore/b3/B3ValueRep.h: (JSC::B3::ValueRep::usedRegisters): * Source/JavaScriptCore/b3/B3Width.cpp: (JSC::B3::bestType): (WTF::printInternal): * Source/JavaScriptCore/b3/B3Width.h: (JSC::B3::pointerWidth): (JSC::B3::canonicalWidth): (JSC::B3::isCanonicalWidth): (JSC::B3::conservativeWidth): (JSC::B3::minimumWidth): (JSC::B3::bytes): (JSC::B3::widthForBytes): (JSC::B3::bytesForWidth): (JSC::B3::mask): * Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackAndGenerateCode.cpp: (JSC::B3::Air::GenerateAndAllocateRegisters::checkConsistency): (JSC::B3::Air::GenerateAndAllocateRegisters::release): (JSC::B3::Air::GenerateAndAllocateRegisters::flush): (JSC::B3::Air::GenerateAndAllocateRegisters::alloc): (JSC::B3::Air::GenerateAndAllocateRegisters::assignTmp): (JSC::B3::Air::GenerateAndAllocateRegisters::isDisallowedRegister): (JSC::B3::Air::GenerateAndAllocateRegisters::prepareForGeneration): (JSC::B3::Air::GenerateAndAllocateRegisters::generate): * Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackAndGenerateCode.h: * Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackByLinearScan.cpp: * Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp: * Source/JavaScriptCore/b3/air/AirAllocateStackByGraphColoring.cpp: * Source/JavaScriptCore/b3/air/AirArg.h: (JSC::B3::Air::Arg::isValidScale): (JSC::B3::Air::Arg::widthArg): (JSC::B3::Air::Arg::isRepresentableAs): (JSC::B3::Air::Arg::castToType): (JSC::B3::Air::Arg::width const): (JSC::B3::Air::Arg::isValidAddrForm): * Source/JavaScriptCore/b3/air/AirCCallSpecial.cpp: (JSC::B3::Air::CCallSpecial::CCallSpecial): (JSC::B3::Air::CCallSpecial::reportUsedRegisters): (JSC::B3::Air::CCallSpecial::extraEarlyClobberedRegs): (JSC::B3::Air::CCallSpecial::extraClobberedRegs): * Source/JavaScriptCore/b3/air/AirCCallSpecial.h: * Source/JavaScriptCore/b3/air/AirCode.cpp: (JSC::B3::Air::Code::Code): (JSC::B3::Air::Code::setRegsInPriorityOrder): (JSC::B3::Air::Code::pinRegister): (JSC::B3::Air::Code::mutableGPRs): (JSC::B3::Air::Code::mutableFPRs): (JSC::B3::Air::Code::setCalleeSaveRegisterAtOffsetList): * Source/JavaScriptCore/b3/air/AirCode.h: (JSC::B3::Air::Code::isPinned const): (JSC::B3::Air::Code::calleeSaveRegisters const): * Source/JavaScriptCore/b3/air/AirCustom.cpp: (JSC::B3::Air::PatchCustom::isValidForm): * Source/JavaScriptCore/b3/air/AirFixPartialRegisterStalls.cpp: (JSC::B3::Air::fixPartialRegisterStalls): * Source/JavaScriptCore/b3/air/AirHandleCalleeSaves.cpp: (JSC::B3::Air::handleCalleeSaves): * Source/JavaScriptCore/b3/air/AirHandleCalleeSaves.h: * Source/JavaScriptCore/b3/air/AirInst.h: * Source/JavaScriptCore/b3/air/AirInstInlines.h: (JSC::B3::Air::Inst::extraClobberedRegs): (JSC::B3::Air::Inst::extraEarlyClobberedRegs): (JSC::B3::Air::Inst::forEachDefWithExtraClobberedRegs): (JSC::B3::Air::Inst::reportUsedRegisters): * Source/JavaScriptCore/b3/air/AirLogRegisterPressure.cpp: (JSC::B3::Air::logRegisterPressure): * Source/JavaScriptCore/b3/air/AirLowerAfterRegAlloc.cpp: (JSC::B3::Air::lowerAfterRegAlloc): * Source/JavaScriptCore/b3/air/AirLowerStackArgs.cpp: (JSC::B3::Air::lowerStackArgs): * Source/JavaScriptCore/b3/air/AirPrintSpecial.cpp: (JSC::B3::Air::PrintSpecial::reportUsedRegisters): (JSC::B3::Air::PrintSpecial::extraEarlyClobberedRegs): (JSC::B3::Air::PrintSpecial::extraClobberedRegs): * Source/JavaScriptCore/b3/air/AirPrintSpecial.h: * Source/JavaScriptCore/b3/air/AirRegLiveness.cpp: (JSC::B3::Air::RegLiveness::RegLiveness): (JSC::B3::Air::RegLiveness::LocalCalcForUnifiedTmpLiveness::LocalCalcForUnifiedTmpLiveness): (JSC::B3::Air::RegLiveness::LocalCalcForUnifiedTmpLiveness::execute): * Source/JavaScriptCore/b3/air/AirRegLiveness.h: (JSC::B3::Air::RegLiveness::Actions::Actions): (JSC::B3::Air::RegLiveness::LocalCalcBase::isLive const): (JSC::B3::Air::RegLiveness::LocalCalc::execute): * Source/JavaScriptCore/b3/air/AirReportUsedRegisters.cpp: (JSC::B3::Air::reportUsedRegisters): * Source/JavaScriptCore/b3/air/AirSpecial.h: * Source/JavaScriptCore/b3/air/AirTmpMap.h: (JSC::B3::Air::TmpMap::clear): * Source/JavaScriptCore/b3/air/AirTmpWidth.cpp: (JSC::B3::Air::TmpWidth::recompute): * Source/JavaScriptCore/b3/air/AirTmpWidth.h: * Source/JavaScriptCore/b3/air/testair.cpp: * Source/JavaScriptCore/b3/testb3_3.cpp: (testStorePartial8BitRegisterOnX86): * Source/JavaScriptCore/b3/testb3_4.cpp: (testStoreRelAddFenceLoadAcq8): (testSimplePatchpointWithoutOuputClobbersGPArgs): (testSimplePatchpointWithOuputClobbersGPArgs): (testSimplePatchpointWithoutOuputClobbersFPArgs): (testSimplePatchpointWithOuputClobbersFPArgs): (testPatchpointWithEarlyClobber): (testPatchpointGPScratch): (testPatchpointFPScratch): (testPatchpointLotsOfLateAnys): * Source/JavaScriptCore/b3/testb3_5.cpp: (testPatchpointWithStackArgumentResult): (testPatchpointWithAnyResult): * Source/JavaScriptCore/b3/testb3_6.cpp: (testSpillDefSmallerThanUse): (testSpillUseLargerThanDef): (testLateRegister): (testInterpreter): (testTerminalPatchpointThatNeedsToBeSpilled): (testTerminalPatchpointThatNeedsToBeSpilled2): (testPatchpointTerminalReturnValue): * Source/JavaScriptCore/b3/testb3_7.cpp: (testPinRegisters): (testFastTLSLoad): (testFastTLSStore): (testShuffleDoesntTrashCalleeSaves): (testReportUsedRegistersLateUseFollowedByEarlyDefDoesNotMarkUseAsDead): (testSimpleTuplePair): (testSimpleTuplePairUnused): (testSimpleTuplePairStack): (tailDupedTuplePair): (tuplePairVariableLoop): (tupleNestedLoop): * Source/JavaScriptCore/b3/testb3_8.cpp: (testWasmAddressDoesNotCSE): (testStoreAfterClobberExitsSideways): (testStoreAfterClobberExitsSidewaysSuccessor): * Source/JavaScriptCore/bytecode/AccessCase.cpp: (JSC::AccessCase::generateImpl): * Source/JavaScriptCore/bytecode/AccessCase.h: (JSC::SharedJITStubSet::Hash::Key::Key): * Source/JavaScriptCore/bytecode/AccessCaseSnippetParams.cpp: (JSC::AccessCaseSnippetParams::emitSlowPathCalls): * Source/JavaScriptCore/bytecode/AccessCaseSnippetParams.h: * Source/JavaScriptCore/bytecode/CodeBlock.h: (JSC::CodeBlock::numberOfLLIntBaselineCalleeSaveRegisters): * Source/JavaScriptCore/bytecode/GetterSetterAccessCase.cpp: (JSC::GetterSetterAccessCase::emitDOMJITGetter): * Source/JavaScriptCore/bytecode/InlineAccess.cpp: (JSC::getScratchRegister): * Source/JavaScriptCore/bytecode/PolymorphicAccess.cpp: (JSC::AccessGenerationState::liveRegistersForCall): (JSC::AccessGenerationState::liveRegistersToPreserveAtExceptionHandlingCallSite): (JSC::calleeSaveRegisters): (JSC::AccessGenerationState::calculateLiveRegistersForCallAndExceptionHandling): (JSC::AccessGenerationState::preserveLiveRegistersToStackForCall): (JSC::AccessGenerationState::preserveLiveRegistersToStackForCallWithoutExceptions): (JSC::AccessGenerationState::restoreLiveRegistersFromStackForCallWithThrownException): (JSC::AccessGenerationState::restoreLiveRegistersFromStackForCall): (JSC::AccessGenerationState::makeDefaultScratchAllocator): * Source/JavaScriptCore/bytecode/PolymorphicAccess.h: (JSC::AccessGenerationState::SpillState::SpillState): * Source/JavaScriptCore/bytecode/ProxyObjectAccessCase.cpp: (JSC::ProxyObjectAccessCase::emit): * Source/JavaScriptCore/bytecode/StructureStubInfo.cpp: (JSC::StructureStubInfo::initializeFromUnlinkedStructureStubInfo): * Source/JavaScriptCore/bytecode/StructureStubInfo.h: * Source/JavaScriptCore/dfg/DFGJITCode.cpp: (JSC::DFG::JITCode::liveRegistersToPreserveAtExceptionHandlingCallSite): * Source/JavaScriptCore/dfg/DFGJITCode.h: * Source/JavaScriptCore/dfg/DFGOSREntry.cpp: (JSC::DFG::prepareOSREntry): * Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.cpp: (JSC::DFG::adjustAndJumpToTarget): * Source/JavaScriptCore/dfg/DFGOSRExitCompilerCommon.h: (JSC::DFG::adjustFrameAndStackInOSRExitCompilerThunk): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::usedRegisters): (JSC::DFG::SpeculativeJIT::compileDeleteById): (JSC::DFG::SpeculativeJIT::compileDeleteByVal): (JSC::DFG::SpeculativeJIT::compileInById): (JSC::DFG::SpeculativeJIT::compileInByVal): (JSC::DFG::SpeculativeJIT::compileHasPrivate): (JSC::DFG::SpeculativeJIT::compilePutByVal): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h: * Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::cachedGetByIdWithThis): (JSC::DFG::SpeculativeJIT::compileGetByVal): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::cachedGetByIdWithThis): (JSC::DFG::SpeculativeJIT::compileGetByVal): (JSC::DFG::SpeculativeJIT::compileGetByValWithThis): * Source/JavaScriptCore/dfg/DFGThunks.cpp: (JSC::DFG::osrExitGenerationThunkGenerator): * Source/JavaScriptCore/ftl/FTLJITCode.cpp: (JSC::FTL::JITCode::liveRegistersToPreserveAtExceptionHandlingCallSite): * Source/JavaScriptCore/ftl/FTLJITCode.h: * Source/JavaScriptCore/ftl/FTLLazySlowPath.cpp: (JSC::FTL::LazySlowPath::initialize): * Source/JavaScriptCore/ftl/FTLLazySlowPath.h: (JSC::FTL::LazySlowPath::usedRegisters const): * Source/JavaScriptCore/ftl/FTLLocation.cpp: (JSC::FTL::Location::restoreInto const): * Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::lower): (JSC::FTL::DFG::LowerDFGToB3::compileUnaryMathIC): (JSC::FTL::DFG::LowerDFGToB3::compileBinaryMathIC): (JSC::FTL::DFG::LowerDFGToB3::compileGetByValWithThis): (JSC::FTL::DFG::LowerDFGToB3::getPrivateName): (JSC::FTL::DFG::LowerDFGToB3::compilePrivateBrandAccess): (JSC::FTL::DFG::LowerDFGToB3::compilePutPrivateName): (JSC::FTL::DFG::LowerDFGToB3::cachedPutById): (JSC::FTL::DFG::LowerDFGToB3::compileGetByValImpl): (JSC::FTL::DFG::LowerDFGToB3::compilePutByVal): (JSC::FTL::DFG::LowerDFGToB3::compileDelBy): (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): * Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp: (JSC::FTL::compileStub): * Source/JavaScriptCore/ftl/FTLOutput.h: * Source/JavaScriptCore/ftl/FTLSaveRestore.cpp: (JSC::FTL::saveAllRegisters): (JSC::FTL::restoreAllRegisters): * Source/JavaScriptCore/ftl/FTLSlowPathCall.cpp: (JSC::FTL::SlowPathCallContext::SlowPathCallContext): (JSC::FTL::SlowPathCallContext::~SlowPathCallContext): * Source/JavaScriptCore/ftl/FTLSlowPathCall.h: (JSC::FTL::callOperation): * Source/JavaScriptCore/ftl/FTLSlowPathCallKey.cpp: (JSC::FTL::SlowPathCallKey::dump const): * Source/JavaScriptCore/ftl/FTLSlowPathCallKey.h: (JSC::FTL::SlowPathCallKey::SlowPathCallKey): (JSC::FTL::SlowPathCallKey::usedRegisters const): (JSC::FTL::SlowPathCallKey::argumentRegistersIfClobberingCheckIsEnabled const): * Source/JavaScriptCore/ftl/FTLThunks.cpp: (JSC::FTL::registerClobberCheck): (JSC::FTL::slowPathCallThunkGenerator): * Source/JavaScriptCore/interpreter/Interpreter.cpp: (JSC::UnwindFunctor::copyCalleeSavesToEntryFrameCalleeSavesBuffer const): * Source/JavaScriptCore/jit/AssemblyHelpers.cpp: (JSC::AssemblyHelpers::emitAllocateWithNonNullAllocator): (JSC::AssemblyHelpers::restoreCalleeSavesFromEntryFrameCalleeSavesBuffer): (JSC::AssemblyHelpers::restoreCalleeSavesFromVMEntryFrameCalleeSavesBuffer): (JSC::AssemblyHelpers::restoreCalleeSavesFromVMEntryFrameCalleeSavesBufferImpl): (JSC::AssemblyHelpers::copyCalleeSavesToEntryFrameCalleeSavesBufferImpl): (JSC::AssemblyHelpers::emitSaveCalleeSavesFor): (JSC::AssemblyHelpers::emitRestoreCalleeSavesFor): (JSC::AssemblyHelpers::copyLLIntBaselineCalleeSavesFromFrameOrRegisterToEntryFrameCalleeSavesBuffer): (JSC::AssemblyHelpers::emitSaveOrCopyLLIntBaselineCalleeSavesFor): * Source/JavaScriptCore/jit/AssemblyHelpers.h: (JSC::AssemblyHelpers::selectScratchGPR): (JSC::AssemblyHelpers::constructRegisterSet): (JSC::AssemblyHelpers::constructRegisterSetBuilder): Deleted. * Source/JavaScriptCore/jit/AssemblyHelpersSpoolers.h: (JSC::AssemblyHelpers::LoadRegSpooler::loadGPR): (JSC::AssemblyHelpers::LoadRegSpooler::loadFPR): (JSC::AssemblyHelpers::StoreRegSpooler::storeGPR): (JSC::AssemblyHelpers::StoreRegSpooler::storeFPR): * Source/JavaScriptCore/jit/CCallHelpers.cpp: (JSC::CCallHelpers::ensureShadowChickenPacket): * Source/JavaScriptCore/jit/CCallHelpers.h: (JSC::CCallHelpers::setupStubArgs): (JSC::CCallHelpers::prepareForTailCallSlow): * Source/JavaScriptCore/jit/CallFrameShuffleData.cpp: (JSC::CallFrameShuffleData::setupCalleeSaveRegisters): * Source/JavaScriptCore/jit/CallFrameShuffler.cpp: (JSC::CallFrameShuffler::CallFrameShuffler): (JSC::CallFrameShuffler::dump const): * Source/JavaScriptCore/jit/CallFrameShuffler.h: (JSC::CallFrameShuffler::lockGPR): (JSC::CallFrameShuffler::releaseGPR): (JSC::CallFrameShuffler::restoreGPR): (JSC::CallFrameShuffler::getFreeRegister const): (JSC::CallFrameShuffler::ensureRegister): (JSC::CallFrameShuffler::ensureTempGPR): (JSC::CallFrameShuffler::ensureGPR): (JSC::CallFrameShuffler::ensureFPR): * Source/JavaScriptCore/jit/CallFrameShuffler32_64.cpp: (JSC::CallFrameShuffler::emitLoad): (JSC::CallFrameShuffler::canLoad): (JSC::CallFrameShuffler::emitDisplace): * Source/JavaScriptCore/jit/CallFrameShuffler64.cpp: (JSC::CallFrameShuffler::emitBox): (JSC::CallFrameShuffler::emitLoad): (JSC::CallFrameShuffler::emitDisplace): (JSC::CallFrameShuffler::tryAcquireNumberTagRegister): * Source/JavaScriptCore/jit/JITArithmetic.cpp: * Source/JavaScriptCore/jit/JITCall.cpp: (JSC::JIT::emit_op_iterator_open): (JSC::JIT::emit_op_iterator_next): * Source/JavaScriptCore/jit/JITCode.cpp: (JSC::JITCode::liveRegistersToPreserveAtExceptionHandlingCallSite): * Source/JavaScriptCore/jit/JITCode.h: * Source/JavaScriptCore/jit/JITInlineCacheGenerator.cpp: (JSC::JITGetByIdGenerator::JITGetByIdGenerator): (JSC::JITGetByIdWithThisGenerator::JITGetByIdWithThisGenerator): (JSC::JITPutByIdGenerator::JITPutByIdGenerator): (JSC::JITDelByValGenerator::JITDelByValGenerator): (JSC::JITDelByIdGenerator::JITDelByIdGenerator): (JSC::JITInByValGenerator::JITInByValGenerator): (JSC::JITInByIdGenerator::JITInByIdGenerator): (JSC::JITInstanceOfGenerator::JITInstanceOfGenerator): (JSC::JITGetByValGenerator::JITGetByValGenerator): (JSC::JITGetByValWithThisGenerator::JITGetByValWithThisGenerator): (JSC::JITPutByValGenerator::JITPutByValGenerator): (JSC::JITPrivateBrandAccessGenerator::JITPrivateBrandAccessGenerator): * Source/JavaScriptCore/jit/JITInlineCacheGenerator.h: (JSC::JITInlineCacheGenerator::setUpStubInfoImpl): (JSC::JITByIdGenerator::setUpStubInfoImpl): (JSC::JITInByValGenerator::setUpStubInfo): * Source/JavaScriptCore/jit/JITOpcodes.cpp: (JSC::JIT::emit_op_instanceof): * Source/JavaScriptCore/jit/JITPropertyAccess.cpp: (JSC::JIT::emit_op_get_by_val): (JSC::JIT::emit_op_get_private_name): (JSC::JIT::emit_op_set_private_brand): (JSC::JIT::emit_op_check_private_brand): (JSC::JIT::emit_op_put_by_val): (JSC::JIT::emit_op_put_private_name): (JSC::JIT::emit_op_del_by_id): (JSC::JIT::emit_op_del_by_val): (JSC::JIT::emit_op_try_get_by_id): (JSC::JIT::emit_op_get_by_id_direct): (JSC::JIT::emit_op_get_by_id): (JSC::JIT::emit_op_get_by_id_with_this): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::emit_op_in_by_id): (JSC::JIT::emit_op_in_by_val): (JSC::JIT::emitHasPrivate): (JSC::JIT::emit_op_get_by_val_with_this): (JSC::JIT::emit_op_enumerator_get_by_val): * Source/JavaScriptCore/jit/Reg.h: (JSC::Reg::Reg): (JSC::Reg::fromIndex): (JSC::Reg::first): (JSC::Reg::last): (JSC::Reg::next const): (JSC::Reg::index const): (JSC::Reg::isSet const): (JSC::Reg::operator bool const): (JSC::Reg::isHashTableDeletedValue const): (JSC::Reg::isGPR const): (JSC::Reg::isFPR const): (JSC::Reg::operator== const): (JSC::Reg::operator!= const): (JSC::Reg::operator< const): (JSC::Reg::operator> const): (JSC::Reg::operator<= const): (JSC::Reg::operator>= const): (JSC::Reg::hash const): (JSC::Reg::invalid): (JSC::Reg::deleted): (JSC::widthForBytes): Deleted. (JSC::bytesForWidth): Deleted. (JSC::mask): Deleted. (JSC::pointerWidth): Deleted. (JSC::canonicalWidth): Deleted. (JSC::isCanonicalWidth): Deleted. (JSC::conservativeWidthWithoutVectors): Deleted. (JSC::conservativeWidth): Deleted. (JSC::conservativeRegisterBytes): Deleted. (JSC::conservativeRegisterBytesWithoutVectors): Deleted. (WTF::printInternal): Deleted. * Source/JavaScriptCore/jit/RegisterAtOffset.h: (JSC::RegisterAtOffset::RegisterAtOffset): (JSC::RegisterAtOffset::operator! const): (JSC::RegisterAtOffset::reg const): (JSC::RegisterAtOffset::offset const): (JSC::RegisterAtOffset::operator== const): (JSC::RegisterAtOffset::byteSize const): Deleted. (JSC::RegisterAtOffset::width const): Deleted. * Source/JavaScriptCore/jit/RegisterAtOffsetList.cpp: (JSC::RegisterAtOffsetList::RegisterAtOffsetList): (JSC::RegisterAtOffsetList::llintBaselineCalleeSaveRegisters): (JSC::RegisterAtOffsetList::dfgCalleeSaveRegisters): * Source/JavaScriptCore/jit/RegisterAtOffsetList.h: (JSC::RegisterAtOffsetList::adjustOffsets): * Source/JavaScriptCore/jit/RegisterSet.cpp: (JSC::RegisterSet::stackRegisters): (JSC::RegisterSet::reservedHardwareRegisters): (JSC::RegisterSet::runtimeTagRegisters): (JSC::RegisterSet::specialRegisters): (JSC::RegisterSet::volatileRegistersForJSCall): (JSC::RegisterSet::stubUnavailableRegisters): (JSC::RegisterSet::macroScratchRegisters): (JSC::RegisterSet::calleeSaveRegisters): (JSC::RegisterSet::vmCalleeSaveRegisters): (JSC::RegisterSet::vmCalleeSaveRegisterOffsets): (JSC::RegisterSet::llintBaselineCalleeSaveRegisters): (JSC::RegisterSet::dfgCalleeSaveRegisters): (JSC::RegisterSet::ftlCalleeSaveRegisters): (JSC::RegisterSet::argumentGPRS): (JSC::RegisterSet::registersToNotSaveForJSCall): (JSC::RegisterSet::registersToNotSaveForCCall): (JSC::RegisterSet::allGPRs): (JSC::RegisterSet::allFPRs): (JSC::RegisterSet::allRegisters): (JSC::RegisterSet::numberOfSetGPRs const): (JSC::RegisterSet::numberOfSetFPRs const): (JSC::RegisterSet::dump const): (JSC::RegisterSetBuilder::vmCalleeSaveRegisterOffsets): Deleted. (JSC::RegisterSetBuilder::stackRegisters): Deleted. (JSC::RegisterSetBuilder::reservedHardwareRegisters): Deleted. (JSC::RegisterSetBuilder::runtimeTagRegisters): Deleted. (JSC::RegisterSetBuilder::specialRegisters): Deleted. (JSC::RegisterSetBuilder::stubUnavailableRegisters): Deleted. (JSC::RegisterSetBuilder::macroClobberedRegisters): Deleted. (JSC::RegisterSetBuilder::calleeSaveRegisters): Deleted. (JSC::RegisterSetBuilder::vmCalleeSaveRegisters): Deleted. (JSC::RegisterSetBuilder::llintBaselineCalleeSaveRegisters): Deleted. (JSC::RegisterSetBuilder::dfgCalleeSaveRegisters): Deleted. (JSC::RegisterSetBuilder::ftlCalleeSaveRegisters): Deleted. (JSC::RegisterSetBuilder::argumentGPRS): Deleted. (JSC::RegisterSetBuilder::registersToSaveForJSCall): Deleted. (JSC::RegisterSetBuilder::registersToSaveForCCall): Deleted. (JSC::RegisterSetBuilder::allGPRs): Deleted. (JSC::RegisterSetBuilder::allFPRs): Deleted. (JSC::RegisterSetBuilder::allRegisters): Deleted. (JSC::RegisterSetBuilder::allScalarRegisters): Deleted. * Source/JavaScriptCore/jit/RegisterSet.h: (JSC::RegisterSet::RegisterSet): (JSC::RegisterSet::set): (JSC::RegisterSet::clear): (JSC::RegisterSet::get const): (JSC::RegisterSet::setAll): (JSC::RegisterSet::add): (JSC::RegisterSet::remove): (JSC::RegisterSet::contains const): (JSC::RegisterSet::merge): (JSC::RegisterSet::filter): (JSC::RegisterSet::exclude): (JSC::RegisterSet::subsumes const): (JSC::RegisterSet::numberOfSetRegisters const): (JSC::RegisterSet::isEmpty const): (JSC::RegisterSet::operator== const): (JSC::RegisterSet::operator!= const): (JSC::RegisterSet::hash const): (JSC::RegisterSet::forEach const): (JSC::RegisterSet::iterator::iterator): (JSC::RegisterSet::iterator::operator* const): (JSC::RegisterSet::iterator::operator== const): (JSC::RegisterSet::iterator::operator!= const): (JSC::RegisterSet::begin const): (JSC::RegisterSet::end const): (JSC::RegisterSet::setAny): (JSC::RegisterSet::setMany): (JSC::RegisterSetHash::hash): (JSC::RegisterSetHash::equal): (): Deleted. (JSC::RegisterSetBuilder::RegisterSetBuilder): Deleted. (JSC::RegisterSetBuilder::buildAndValidate const): Deleted. (JSC::RegisterSetBuilder::buildWithLowerBits const): Deleted. (JSC::RegisterSetBuilder::numberOfSetRegisters const): Deleted. (JSC::RegisterSetBuilder::numberOfSetGPRs const): Deleted. (JSC::RegisterSetBuilder::numberOfSetFPRs const): Deleted. (JSC::RegisterSetBuilder::buildScalarRegisterSet const): Deleted. (JSC::RegisterSetBuilderHash::hash): Deleted. (JSC::RegisterSetBuilderHash::equal): Deleted. * Source/JavaScriptCore/jit/ScratchRegisterAllocator.cpp: (JSC::ScratchRegisterAllocator::lock): (JSC::ScratchRegisterAllocator::allocateScratch): (JSC::ScratchRegisterAllocator::preserveReusedRegistersByPushing): (JSC::ScratchRegisterAllocator::restoreReusedRegistersByPopping): (JSC::ScratchRegisterAllocator::usedRegistersForCall const): (JSC::ScratchRegisterAllocator::desiredScratchBufferSizeForCall const): (JSC::ScratchRegisterAllocator::preserveRegistersToStackForCall): (JSC::ScratchRegisterAllocator::restoreRegistersFromStackForCall): * Source/JavaScriptCore/jit/ScratchRegisterAllocator.h: (JSC::ScratchRegisterAllocator::ScratchRegisterAllocator): (): Deleted. * Source/JavaScriptCore/llint/LowLevelInterpreter.asm: * Source/JavaScriptCore/wasm/WasmAirIRGenerator.cpp: (JSC::Wasm::ConstrainedTmp::ConstrainedTmp): (JSC::Wasm::ConstrainedTmp::operator bool const): (JSC::Wasm::AirIRGenerator::emitPatchpoint): (JSC::Wasm::AirIRGenerator::emitLoad): (JSC::Wasm::AirIRGenerator::restoreWasmContextInstance): (JSC::Wasm::AirIRGenerator::AirIRGenerator): (JSC::Wasm::AirIRGenerator::restoreWebAssemblyGlobalState): (JSC::Wasm::AirIRGenerator::addCurrentMemory): (JSC::Wasm::AirIRGenerator::getGlobal): (JSC::Wasm::AirIRGenerator::setGlobal): (JSC::Wasm::AirIRGenerator::emitLoadOp): (JSC::Wasm::AirIRGenerator::emitStoreOp): (JSC::Wasm::accessWidth): (JSC::Wasm::AirIRGenerator::fixupPointerPlusOffsetForAtomicOps): (JSC::Wasm::AirIRGenerator::sanitizeAtomicResult): (JSC::Wasm::AirIRGenerator::appendGeneralAtomic): (JSC::Wasm::AirIRGenerator::appendStrongCAS): (JSC::Wasm::AirIRGenerator::emitAtomicLoadOp): (JSC::Wasm::AirIRGenerator::emitAtomicStoreOp): (JSC::Wasm::AirIRGenerator::emitAtomicBinaryRMWOp): (JSC::Wasm::AirIRGenerator::emitAtomicCompareExchange): (JSC::Wasm::AirIRGenerator::addUncheckedFloatingPointTruncation): (JSC::Wasm::AirIRGenerator::emitEntryTierUpCheck): (JSC::Wasm::AirIRGenerator::emitLoopTierUpCheck): (JSC::Wasm::AirIRGenerator::emitCatchImpl): (JSC::Wasm::AirIRGenerator::addThrow): (JSC::Wasm::AirIRGenerator::addRethrow): (JSC::Wasm::AirIRGenerator::addReturn): (JSC::Wasm::AirIRGenerator::addSwitch): (JSC::Wasm::AirIRGenerator::emitCallPatchpoint): (JSC::Wasm::AirIRGenerator::addCall): (JSC::Wasm::AirIRGenerator::addCallIndirect): (JSC::Wasm::AirIRGenerator::emitIndirectCall): (JSC::Wasm::AirIRGenerator::addOp<F64ConvertUI64>): (JSC::Wasm::AirIRGenerator::addOp<OpType::F32ConvertUI64>): (JSC::Wasm::AirIRGenerator::preparePatchpointForExceptions): (JSC::Wasm::AirIRGenerator::materializeAddrArg): Deleted. * Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp: (JSC::Wasm::B3IRGenerator::restoreWasmContextInstance): (JSC::Wasm::B3IRGenerator::B3IRGenerator): (JSC::Wasm::B3IRGenerator::restoreWebAssemblyGlobalState): (JSC::Wasm::B3IRGenerator::addArguments): (JSC::Wasm::B3IRGenerator::emitIndirectCall): (JSC::Wasm::accessWidth): (JSC::Wasm::B3IRGenerator::sanitizeAtomicResult): (JSC::Wasm::B3IRGenerator::fixupPointerPlusOffsetForAtomicOps): (JSC::Wasm::B3IRGenerator::emitAtomicLoadOp): (JSC::Wasm::B3IRGenerator::emitAtomicStoreOp): (JSC::Wasm::B3IRGenerator::emitAtomicBinaryRMWOp): (JSC::Wasm::B3IRGenerator::emitAtomicCompareExchange): (JSC::Wasm::B3IRGenerator::truncSaturated): (JSC::Wasm::B3IRGenerator::addConstant): (JSC::Wasm::B3IRGenerator::emitEntryTierUpCheck): (JSC::Wasm::B3IRGenerator::emitLoopTierUpCheck): (JSC::Wasm::B3IRGenerator::emitCatchImpl): (JSC::Wasm::B3IRGenerator::addThrow): (JSC::Wasm::B3IRGenerator::addRethrow): (JSC::Wasm::B3IRGenerator::addReturn): (JSC::Wasm::B3IRGenerator::createCallPatchpoint): (JSC::Wasm::B3IRGenerator::addCall): (JSC::Wasm::B3IRGenerator::addOp<F64ConvertUI64>): (JSC::Wasm::B3IRGenerator::addOp<OpType::F32ConvertUI64>): (JSC::Wasm::B3IRGenerator::addOp<OpType::I64TruncUF64>): (JSC::Wasm::B3IRGenerator::addOp<OpType::I64TruncUF32>): * Source/JavaScriptCore/wasm/WasmCallee.cpp: (JSC::Wasm::LLIntCallee::calleeSaveRegistersImpl): * Source/JavaScriptCore/wasm/WasmCallingConvention.cpp: (JSC::Wasm::jsCallingConvention): (JSC::Wasm::wasmCallingConvention): * Source/JavaScriptCore/wasm/WasmCallingConvention.h: (JSC::Wasm::CallInformation::computeResultsOffsetList): (JSC::Wasm::WasmCallingConvention::WasmCallingConvention): (JSC::Wasm::WasmCallingConvention::marshallLocationImpl const): (JSC::Wasm::WasmCallingConvention::marshallLocation const): (JSC::Wasm::JSCallingConvention::JSCallingConvention): (JSC::Wasm::JSCallingConvention::marshallLocationImpl const): (JSC::Wasm::JSCallingConvention::callInformationFor const): (JSC::Wasm::ArgumentLocation::ArgumentLocation): Deleted. * Source/JavaScriptCore/wasm/WasmFormat.h: (JSC::Wasm::typeToString): * Source/JavaScriptCore/wasm/WasmMemoryInformation.h: (JSC::Wasm::PinnedRegisterInfo::toSave const): * Source/JavaScriptCore/wasm/WasmOperations.cpp: (JSC::Wasm::doOSREntry): (JSC::Wasm::JSC_DEFINE_JIT_OPERATION): * Source/JavaScriptCore/wasm/WasmThunks.cpp: (JSC::Wasm::throwStackOverflowFromWasmThunkGenerator): (JSC::Wasm::triggerOMGEntryTierUpThunkGenerator): * Source/JavaScriptCore/wasm/WasmTypeDefinition.cpp: (JSC::Wasm::TypeInformation::TypeInformation): * Source/JavaScriptCore/wasm/generateWasmOpsHeader.py: (typeMacroizer): * Source/JavaScriptCore/wasm/js/JSToWasm.cpp: (JSC::Wasm::marshallJSResult): (JSC::Wasm::createJSToWasmWrapper): * Source/JavaScriptCore/wasm/js/WasmToJS.cpp: (JSC::Wasm::wasmToJS): * Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp: (JSC::WebAssemblyFunction::calleeSaves const): (JSC::WebAssemblyFunction::jsCallEntrypointSlow): * Source/JavaScriptCore/wasm/wasm.json: * Source/WTF/wtf/Atomics.h: (WTF::Dependency::Dependency): * Source/WTF/wtf/Bitmap.h: (WTF::WordType>::get const): (WTF::WordType>::concurrentTestAndSet): (WTF::WordType>::concurrentTestAndClear): (WTF::WordType>::clearAll): (WTF::WordType>::setAll): (WTF::WordType>::findRunOfZeros const): (WTF::WordType>::count const): (WTF::WordType>::concurrentFilter): (WTF::WordType>::forEachSetBit const): (WTF::WordType>::findBit const): (WTF::WordType>::hash const): Canonical link: https://commits.webkit.org/255596@main
1 parent 82a8c10 commit 6adb4a8

135 files changed

Lines changed: 1773 additions & 2241 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎JSTests/wasm/wasm.json‎

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,21 @@
77
{ "name": "version", "type": "uint32", "value": 1, "description": "Version number" }
88
],
99
"type" : {
10-
"i32": { "type": "varint7", "value": -1, "b3type": "B3::Int32", "width": 32 },
11-
"i64": { "type": "varint7", "value": -2, "b3type": "B3::Int64", "width": 64 },
12-
"f32": { "type": "varint7", "value": -3, "b3type": "B3::Float", "width": 32 },
13-
"f64": { "type": "varint7", "value": -4, "b3type": "B3::Double", "width": 64 },
14-
"funcref": { "type": "varint7", "value": -16, "b3type": "B3::Int64", "width": 64 },
15-
"externref": { "type": "varint7", "value": -17, "b3type": "B3::Int64", "width": 64 },
16-
"ref_null": { "type": "varint7", "value": -20, "b3type": "B3::Int64", "width": 64 },
17-
"ref": { "type": "varint7", "value": -21, "b3type": "B3::Int64", "width": 64 },
18-
"i31ref": { "type": "varint7", "value": -22, "b3type": "B3::Void", "width": 0 },
19-
"arrayref": { "type": "varint7", "value": -26, "b3type": "B3::Int64", "width": 0 },
20-
"func": { "type": "varint7", "value": -32, "b3type": "B3::Void", "width": 0 },
21-
"struct": { "type": "varint7", "value": -33, "b3type": "B3::Void", "width": 0 },
22-
"array": { "type": "varint7", "value": -34, "b3type": "B3::Void", "width": 0 },
23-
"rec": { "type": "varint7", "value": -49, "b3type": "B3::Void", "width": 0 },
24-
"void": { "type": "varint7", "value": -64, "b3type": "B3::Void", "width": 0 }
10+
"i32": { "type": "varint7", "value": -1, "b3type": "B3::Int32" },
11+
"i64": { "type": "varint7", "value": -2, "b3type": "B3::Int64" },
12+
"f32": { "type": "varint7", "value": -3, "b3type": "B3::Float" },
13+
"f64": { "type": "varint7", "value": -4, "b3type": "B3::Double" },
14+
"funcref": { "type": "varint7", "value": -16, "b3type": "B3::Int64" },
15+
"externref": { "type": "varint7", "value": -17, "b3type": "B3::Int64" },
16+
"ref_null": { "type": "varint7", "value": -20, "b3type": "B3::Int64" },
17+
"ref": { "type": "varint7", "value": -21, "b3type": "B3::Int64" },
18+
"i31ref": { "type": "varint7", "value": -22, "b3type": "B3::Void" },
19+
"arrayref": { "type": "varint7", "value": -26, "b3type": "B3::Int64" },
20+
"func": { "type": "varint7", "value": -32, "b3type": "B3::Void" },
21+
"struct": { "type": "varint7", "value": -33, "b3type": "B3::Void" },
22+
"array": { "type": "varint7", "value": -34, "b3type": "B3::Void" },
23+
"rec": { "type": "varint7", "value": -49, "b3type": "B3::Void" },
24+
"void": { "type": "varint7", "value": -64, "b3type": "B3::Void" }
2525
},
2626
"value_type": ["i32", "i64", "f32", "f64", "externref", "funcref"],
2727
"block_type": ["i32", "i64", "f32", "f64", "void", "externref", "funcref"],

‎Source/JavaScriptCore/b3/B3Bank.h‎

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -69,31 +69,6 @@ inline Bank bankForReg(Reg reg)
6969
return reg.isGPR() ? GP : FP;
7070
}
7171

72-
inline Width minimumWidth(Bank bank)
73-
{
74-
return bank == GP ? Width8 : Width32;
75-
}
76-
77-
ALWAYS_INLINE constexpr Width conservativeWidthWithoutVectors(Bank bank)
78-
{
79-
return bank == FP ? Width64 : widthForBytes(sizeof(CPURegister));
80-
}
81-
82-
ALWAYS_INLINE constexpr Width conservativeWidth(Bank bank)
83-
{
84-
return bank == FP ? Width64 : widthForBytes(sizeof(CPURegister));
85-
}
86-
87-
ALWAYS_INLINE constexpr unsigned conservativeRegisterBytes(Bank bank)
88-
{
89-
return bytesForWidth(conservativeWidth(bank));
90-
}
91-
92-
ALWAYS_INLINE constexpr unsigned conservativeRegisterBytesWithoutVectors(Bank bank)
93-
{
94-
return bytesForWidth(conservativeWidthWithoutVectors(bank));
95-
}
96-
9772
} } // namespace JSC::B3
9873

9974
namespace WTF {

‎Source/JavaScriptCore/b3/B3ConstrainedValue.h‎

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -28,26 +28,11 @@
2828
#if ENABLE(B3_JIT)
2929

3030
#include "B3ValueRep.h"
31-
#include "B3Width.h"
32-
#include "WasmCallingConvention.h"
3331

3432
namespace JSC { namespace B3 {
3533

3634
class Value;
3735

38-
struct ArgumentLocation {
39-
ArgumentLocation(Wasm::ValueLocation loc, Width width)
40-
: location(loc)
41-
, width(width)
42-
{
43-
}
44-
45-
ArgumentLocation() { }
46-
47-
Wasm::ValueLocation location;
48-
Width width;
49-
};
50-
5136
class ConstrainedValue {
5237
public:
5338
ConstrainedValue()
@@ -66,12 +51,6 @@ class ConstrainedValue {
6651
{
6752
}
6853

69-
ConstrainedValue(Value* value, const Wasm::ArgumentLocation& loc)
70-
: m_value(value)
71-
, m_rep(loc.location)
72-
{
73-
}
74-
7554
explicit operator bool() const { return m_value || m_rep; }
7655

7756
Value* value() const { return m_value; }

‎Source/JavaScriptCore/b3/B3Effects.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ struct Effects {
6666
// having other pinned registers that are mutable, then you can use ArgumentReg. Also note that
6767
// nobody will stop you from making this get out-of-sync with your clobbered register sets in
6868
// Patchpoint. It's recommended that you err on the side of being conservative.
69-
// FIXME: Explore making these be RegisterSetBuilders. That's mainly hard because it would be awkward to
69+
// FIXME: Explore making these be RegisterSets. That's mainly hard because it would be awkward to
7070
// reconcile with StackmapValue's support for clobbered regs.
7171
// https://bugs.webkit.org/show_bug.cgi?id=163173
7272
bool readsPinned { false };

‎Source/JavaScriptCore/b3/B3LowerMacros.cpp‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -575,7 +575,7 @@ class LowerMacros {
575575
patchpoint->numGPScratchRegisters = 2;
576576
// Technically, we don't have to clobber macro registers on X86_64. This is probably
577577
// OK though.
578-
patchpoint->clobber(RegisterSetBuilder::macroClobberedRegisters());
578+
patchpoint->clobber(RegisterSet::macroScratchRegisters());
579579

580580
BitVector handledIndices;
581581
for (unsigned i = start; i < end; ++i) {

‎Source/JavaScriptCore/b3/B3LowerToAir.cpp‎

Lines changed: 2 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1189,8 +1189,6 @@ class LowerToAir {
11891189
return MoveDouble;
11901190
}
11911191
break;
1192-
case Width128:
1193-
break;
11941192
}
11951193
RELEASE_ASSERT_NOT_REACHED();
11961194
}
@@ -1348,7 +1346,7 @@ class LowerToAir {
13481346
}
13491347
case ValueRep::LateRegister:
13501348
case ValueRep::Register:
1351-
stackmap->earlyClobbered().remove(value.rep().reg());
1349+
stackmap->earlyClobbered().clear(value.rep().reg());
13521350
arg = Tmp(value.rep().reg());
13531351
append(relaxedMoveForType(value.value()->type()), immOrTmp(value.value()), arg);
13541352
break;
@@ -1857,8 +1855,6 @@ class LowerToAir {
18571855
left.consume(*this), right.consume(*this)));
18581856
}
18591857
return Inst();
1860-
case Width128:
1861-
break;
18621858
}
18631859
ASSERT_NOT_REACHED();
18641860
},
@@ -1889,8 +1885,6 @@ class LowerToAir {
18891885
left.consume(*this), right.consume(*this)));
18901886
}
18911887
return Inst();
1892-
case Width128:
1893-
break;
18941888
}
18951889
ASSERT_NOT_REACHED();
18961890
},
@@ -1939,11 +1933,8 @@ class LowerToAir {
19391933
left.consume(*this), right.consume(*this), tmp(m_value)));
19401934
}
19411935
return Inst();
1942-
case Width128:
1943-
break;
19441936
}
19451937
ASSERT_NOT_REACHED();
1946-
return Inst();
19471938
},
19481939
[this] (
19491940
Width width, const Arg& resCond,
@@ -1966,11 +1957,8 @@ class LowerToAir {
19661957
left.consume(*this), right.consume(*this), tmp(m_value)));
19671958
}
19681959
return Inst();
1969-
case Width128:
1970-
break;
19711960
}
19721961
ASSERT_NOT_REACHED();
1973-
return Inst();
19741962
},
19751963
[this] (const Arg& doubleCond, ArgPromise& left, ArgPromise& right) -> Inst {
19761964
if (isValidForm(CompareDouble, Arg::DoubleCond, left.kind(), right.kind(), Arg::Tmp)) {
@@ -2036,8 +2024,6 @@ class LowerToAir {
20362024
return createSelectInstruction(config.moveConditionally32, relCond, left, right);
20372025
case Width64:
20382026
return createSelectInstruction(config.moveConditionally64, relCond, left, right);
2039-
case Width128:
2040-
break;
20412027
}
20422028
ASSERT_NOT_REACHED();
20432029
},
@@ -2053,8 +2039,6 @@ class LowerToAir {
20532039
return createSelectInstruction(config.moveConditionallyTest32, resCond, left, right);
20542040
case Width64:
20552041
return createSelectInstruction(config.moveConditionallyTest64, resCond, left, right);
2056-
case Width128:
2057-
break;
20582042
}
20592043
ASSERT_NOT_REACHED();
20602044
},
@@ -2330,9 +2314,6 @@ class LowerToAir {
23302314
case Width32:
23312315
case Width64:
23322316
break;
2333-
case Width128:
2334-
ASSERT_NOT_REACHED();
2335-
break;
23362317
}
23372318
}
23382319
append(relaxedMoveForType(atomic->accessType()), expectedValueTmp, valueResultTmp);
@@ -2349,9 +2330,6 @@ class LowerToAir {
23492330
case Width64:
23502331
appendTrapping(Air::Branch64, Arg::relCond(MacroAssembler::Equal), valueResultTmp, expectedValueTmp);
23512332
break;
2352-
case Width128:
2353-
ASSERT_NOT_REACHED();
2354-
break;
23552333
}
23562334
m_blockToBlock[m_block]->setSuccessors(success, failure);
23572335
return;
@@ -2510,9 +2488,6 @@ class LowerToAir {
25102488
case Width64:
25112489
prepareOpcode = Move;
25122490
break;
2513-
case Width128:
2514-
ASSERT_NOT_REACHED();
2515-
break;
25162491
}
25172492
} else {
25182493
RELEASE_ASSERT(isARM64());
@@ -3865,7 +3840,7 @@ class LowerToAir {
38653840
fillStackmap(inst, patchpointValue, 0);
38663841
for (auto& constraint : patchpointValue->resultConstraints) {
38673842
if (constraint.isReg())
3868-
patchpointValue->lateClobbered().remove(constraint.reg());
3843+
patchpointValue->lateClobbered().clear(constraint.reg());
38693844
}
38703845

38713846
for (unsigned i = patchpointValue->numGPScratchRegisters; i--;)

‎Source/JavaScriptCore/b3/B3MemoryValue.cpp‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Bank MemoryValue::accessBank() const
5757

5858
size_t MemoryValue::accessByteSize() const
5959
{
60-
return bytesForWidth(accessWidth());
60+
return bytes(accessWidth());
6161
}
6262

6363
void MemoryValue::dumpMeta(CommaPrinter& comma, PrintStream& out) const

‎Source/JavaScriptCore/b3/B3MemoryValue.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ class JS_EXPORT_PRIVATE MemoryValue : public Value {
8181

8282
Width accessWidth() const;
8383

84-
bool isCanonicalWidth() const { return JSC::isCanonicalWidth(accessWidth()); }
84+
bool isCanonicalWidth() const { return B3::isCanonicalWidth(accessWidth()); }
8585

8686
B3_SPECIALIZE_VALUE_FOR_NON_VARARGS_CHILDREN
8787

‎Source/JavaScriptCore/b3/B3Procedure.cpp‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -421,12 +421,12 @@ void Procedure::setWasmBoundsCheckGenerator(RefPtr<WasmBoundsCheckGenerator> gen
421421
code().setWasmBoundsCheckGenerator(generator);
422422
}
423423

424-
RegisterSetBuilder Procedure::mutableGPRs()
424+
RegisterSet Procedure::mutableGPRs()
425425
{
426426
return code().mutableGPRs();
427427
}
428428

429-
RegisterSetBuilder Procedure::mutableFPRs()
429+
RegisterSet Procedure::mutableFPRs()
430430
{
431431
return code().mutableFPRs();
432432
}

‎Source/JavaScriptCore/b3/B3Procedure.h‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,8 +272,8 @@ class Procedure {
272272
setWasmBoundsCheckGenerator(RefPtr<WasmBoundsCheckGenerator>(createSharedTask<WasmBoundsCheckGeneratorFunction>(functor)));
273273
}
274274

275-
JS_EXPORT_PRIVATE RegisterSetBuilder mutableGPRs();
276-
JS_EXPORT_PRIVATE RegisterSetBuilder mutableFPRs();
275+
JS_EXPORT_PRIVATE RegisterSet mutableGPRs();
276+
JS_EXPORT_PRIVATE RegisterSet mutableFPRs();
277277

278278
void setNeedsPCToOriginMap();
279279
bool needsPCToOriginMap() { return m_needsPCToOriginMap; }

0 commit comments

Comments
 (0)