[webkit-changes] [WebKit/WebKit] 189dce: [JSC] Port and enable Wasm BBQ JIT on ARMv7

jjgriego noreply at github.com
Tue Dec 13 12:08:13 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 189dce5799e8464f6d477a92d8dd7c26c085362d
      https://github.com/WebKit/WebKit/commit/189dce5799e8464f6d477a92d8dd7c26c085362d
  Author: Joseph Griego <jgriego at igalia.com>
  Date:   2022-12-13 (Tue, 13 Dec 2022)

  Changed paths:
    M JSTests/wasm.yaml
    M JSTests/wasm/regress/242294.js
    M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
    M Source/JavaScriptCore/Sources.txt
    M Source/JavaScriptCore/assembler/ARMv7Assembler.h
    M Source/JavaScriptCore/assembler/AbstractMacroAssembler.h
    M Source/JavaScriptCore/assembler/AllowMacroScratchRegisterUsage.h
    M Source/JavaScriptCore/assembler/AllowMacroScratchRegisterUsageIf.h
    M Source/JavaScriptCore/assembler/AssemblerCommon.h
    M Source/JavaScriptCore/assembler/CPU.h
    M Source/JavaScriptCore/assembler/DisallowMacroScratchRegisterUsage.h
    M Source/JavaScriptCore/assembler/MacroAssembler.h
    M Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h
    M Source/JavaScriptCore/b3/B3CheckSpecial.cpp
    M Source/JavaScriptCore/b3/B3Common.cpp
    M Source/JavaScriptCore/b3/B3LowerMacros.cpp
    M Source/JavaScriptCore/b3/B3ValueRep.cpp
    M Source/JavaScriptCore/b3/B3WasmBoundsCheckValue.cpp
    M Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackAndGenerateCode.cpp
    M Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp
    M Source/JavaScriptCore/b3/air/AirArg.h
    M Source/JavaScriptCore/b3/air/AirCCallingConvention.cpp
    M Source/JavaScriptCore/b3/air/AirCCallingConvention.h
    M Source/JavaScriptCore/b3/air/AirCode.cpp
    M Source/JavaScriptCore/b3/air/AirCode.h
    M Source/JavaScriptCore/b3/air/AirCustom.cpp
    M Source/JavaScriptCore/b3/air/AirCustom.h
    M Source/JavaScriptCore/b3/air/AirGenerate.cpp
    M Source/JavaScriptCore/b3/air/AirHandleCalleeSaves.cpp
    M Source/JavaScriptCore/b3/air/AirLowerAfterRegAlloc.cpp
    M Source/JavaScriptCore/b3/air/AirLowerMacros.cpp
    M Source/JavaScriptCore/b3/air/AirLowerStackArgs.cpp
    M Source/JavaScriptCore/b3/air/AirOpcode.opcodes
    M Source/JavaScriptCore/b3/air/AirStackAllocation.cpp
    M Source/JavaScriptCore/b3/air/opcode_generator.rb
    M Source/JavaScriptCore/b3/air/testair.cpp
    M Source/JavaScriptCore/b3/testb3.h
    M Source/JavaScriptCore/b3/testb3_1.cpp
    M Source/JavaScriptCore/b3/testb3_2.cpp
    M Source/JavaScriptCore/b3/testb3_3.cpp
    M Source/JavaScriptCore/b3/testb3_4.cpp
    M Source/JavaScriptCore/b3/testb3_5.cpp
    M Source/JavaScriptCore/b3/testb3_6.cpp
    M Source/JavaScriptCore/b3/testb3_7.cpp
    M Source/JavaScriptCore/b3/testb3_8.cpp
    M Source/JavaScriptCore/bytecode/VirtualRegister.h
    M Source/JavaScriptCore/generator/Wasm.rb
    M Source/JavaScriptCore/jit/GPRInfo.h
    M Source/JavaScriptCore/jit/PCToCodeOriginMap.cpp
    M Source/JavaScriptCore/jit/PCToCodeOriginMap.h
    M Source/JavaScriptCore/jit/RegisterSet.h
    M Source/JavaScriptCore/jit/Width.h
    M Source/JavaScriptCore/llint/WebAssembly.asm
    M Source/JavaScriptCore/llint/WebAssembly32_64.asm
    M Source/JavaScriptCore/runtime/MathCommon.cpp
    M Source/JavaScriptCore/runtime/MathCommon.h
    M Source/JavaScriptCore/runtime/StackAlignment.h
    A Source/JavaScriptCore/wasm/WasmAirIRGenerator32_64.cpp
    A Source/JavaScriptCore/wasm/WasmAirIRGenerator64.cpp
    M Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h
    R Source/JavaScriptCore/wasm/WasmAirIRGeneratorTmp.cpp
    M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
    M Source/JavaScriptCore/wasm/WasmBBQPlan.cpp
    M Source/JavaScriptCore/wasm/WasmFunctionParser.h
    M Source/JavaScriptCore/wasm/WasmIRGeneratorHelpers.h
    M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp
    M Source/JavaScriptCore/wasm/WasmOpcodeOrigin.h
    M Source/JavaScriptCore/wasm/WasmOperations.cpp
    M Source/JavaScriptCore/wasm/WasmOperations.h
    M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
    M Source/JavaScriptCore/wasm/WasmSlowPaths.h
    M Source/JavaScriptCore/wasm/generateWasmB3IRGeneratorInlinesHeader.py
    M Source/JavaScriptCore/wasm/generateWasmOpsHeader.py
    M Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp
    M Source/WTF/wtf/PlatformEnable.h
    M Tools/Scripts/run-jsc-stress-tests

  Log Message:
  -----------
  [JSC] Port and enable Wasm BBQ JIT on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=241009

Reviewed by Justin Michaud.

This patch enables the Wasm BBQ JIT on ARMv7.

The bulk of the changes are in WasmAirIRGenerator, where the key change
is the handling of 64-bit integer (and other non floating point type)
values as pairs of 32-bit values; to avoid covering this class in conditionals,
it's converted into an abstract base class, `WasmAirIRGeneratorBase` with the
common functionality and any wasm instructions that can be converted into a
shared implementation backed by some per-word-size helpers.

We achieve this primarily through changing TypedTmp (which represents a
Wasm value) on 32-bit, so it is able to hold 2 Air::Tmp when the represented
Wasm type is 64-bit wide (except for F64, which are handled via FPRs as before).
This makes the rest of the 32-bit code fairly simple, but we need to explicitly
handle 64-bit values if the representation is a GPR pair.

There are some changes required for handling C calls, which I have added as
necessary. These changes should have no impact on 64-bit architectures.

Air itself is not aware of register pairs (i.e.: all lowering is done when
constructing the Air representation of Wasm code in WasmAirIRGenerator). Most
notably this does require us to pass 64-bit integer-like types as two 32-bit
integers to and from Patchpoints, but this does not seem to cause significant
friction.

Some operations that require multiple instructions but also use architectural
features that Air is not aware of have been left as multi-instruction macros.
Most notably this included Add64/Sub64 which require the use of the processor
flags on ARMv7 (for which Air is not presentatly capable of correctly analyzing
usage). Everything else is lowered into multi-instruction sequences in
WasmAirIRGenerator or its subclasses.

One notable limitation currently is the fact that our use of
DisallowMacroScratchRegisterUsage on ARMv7 is not quite consistent with other
platforms, so for now, we let the macro assembler use the macro scratch
registers and we don't let Air allocate them on ARMv7. This will be fixed
separately.

A minor limitation is that we cannot use all FP registers as those provided by
the NEON/advanced SIMD extension aren't usable for single precision floats and
Air can't yet accomodate this in register allocation.

Notably the WasmB3IRGenerator is unreachable on 32-bit and is #ifdef'd out.

Also includes some minor refactoring of LLInt ops to share soft arithmetic
routines with BBQ.

* JSTests/wasm.yaml:
* JSTests/wasm/references/memory_copy_shared.js:
* JSTests/wasm/references/memory_fill_shared.js:
* JSTests/wasm/regress/242294.js:
* Source/JavaScriptCore/Sources.txt:
* Source/JavaScriptCore/assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::adc):
(JSC::ARMv7Assembler::ldrh):
(JSC::ARMv7Assembler::ldrsb):
(JSC::ARMv7Assembler::ldrsh):
(JSC::ARMv7Assembler::ldrex):
(JSC::ARMv7Assembler::ldrexb):
(JSC::ARMv7Assembler::ldrexh):
(JSC::ARMv7Assembler::ldrexd):
(JSC::ARMv7Assembler::rbit):
(JSC::ARMv7Assembler::sbc):
(JSC::ARMv7Assembler::umull):
(JSC::ARMv7Assembler::strex):
(JSC::ARMv7Assembler::strexb):
(JSC::ARMv7Assembler::strexh):
(JSC::ARMv7Assembler::strexd):
(JSC::ARMv7Assembler::sxtb):
(JSC::ARMv7Assembler::sxth):
(JSC::ARMv7Assembler::uxtb):
(JSC::ARMv7Assembler::uxth):
(JSC::ARMv7Assembler::vadd):
(JSC::ARMv7Assembler::vcmp):
(JSC::ARMv7Assembler::vcvt_unsignedToFloatingPoint):
(JSC::ARMv7Assembler::vcvt_floatingPointToSigned):
(JSC::ARMv7Assembler::vcvt_floatingPointToUnsigned):
(JSC::ARMv7Assembler::vdiv):
(JSC::ARMv7Assembler::vmul):
(JSC::ARMv7Assembler::vsub):
(JSC::ARMv7Assembler::vabs):
(JSC::ARMv7Assembler::vneg):
(JSC::ARMv7Assembler::vsqrt):
(JSC::ARMv7Assembler::dmbISH):
* Source/JavaScriptCore/assembler/AllowMacroScratchRegisterUsage.h:
(JSC::AllowMacroScratchRegisterUsage::AllowMacroScratchRegisterUsage):
* Source/JavaScriptCore/assembler/AllowMacroScratchRegisterUsageIf.h:
(JSC::AllowMacroScratchRegisterUsageIf::AllowMacroScratchRegisterUsageIf):
* Source/JavaScriptCore/assembler/AssemblerCommon.h:
(JSC::isValidARMThumb2Immediate):
* Source/JavaScriptCore/assembler/DisallowMacroScratchRegisterUsage.h:
(JSC::DisallowMacroScratchRegisterUsage::~DisallowMacroScratchRegisterUsage):
* Source/JavaScriptCore/assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::add64):
(JSC::MacroAssemblerARMv7::countTrailingZeros32):
(JSC::MacroAssemblerARMv7::uMull32):
(JSC::MacroAssemblerARMv7::rotateRight32):
(JSC::MacroAssemblerARMv7::sub64):
(JSC::MacroAssemblerARMv7::not32):
(JSC::MacroAssemblerARMv7::load16SignedExtendTo32):
(JSC::MacroAssemblerARMv7::load8SignedExtendTo32):
(JSC::MacroAssemblerARMv7::loadLink8):
(JSC::MacroAssemblerARMv7::loadLink16):
(JSC::MacroAssemblerARMv7::loadLink32):
(JSC::MacroAssemblerARMv7::loadLinkPair32):
(JSC::MacroAssemblerARMv7::storeCond8):
(JSC::MacroAssemblerARMv7::storeCond16):
(JSC::MacroAssemblerARMv7::storeCond32):
(JSC::MacroAssemblerARMv7::storeCondPair32):
(JSC::MacroAssemblerARMv7::move32ToFloat):
(JSC::MacroAssemblerARMv7::moveFloatTo32):
(JSC::MacroAssemblerARMv7::move64ToDouble):
(JSC::MacroAssemblerARMv7::moveDoubleTo64):
(JSC::MacroAssemblerARMv7::move32ToDoubleHi):
(JSC::MacroAssemblerARMv7::moveDoubleHiTo32):
(JSC::MacroAssemblerARMv7::addFloat):
(JSC::MacroAssemblerARMv7::divFloat):
(JSC::MacroAssemblerARMv7::subFloat):
(JSC::MacroAssemblerARMv7::mulFloat):
(JSC::MacroAssemblerARMv7::andFloat):
(JSC::MacroAssemblerARMv7::orFloat):
(JSC::MacroAssemblerARMv7::sqrtFloat):
(JSC::MacroAssemblerARMv7::absFloat):
(JSC::MacroAssemblerARMv7::negateFloat):
(JSC::MacroAssemblerARMv7::ceilFloat):
(JSC::MacroAssemblerARMv7::floorFloat):
(JSC::MacroAssemblerARMv7::roundTowardNearestIntFloat):
(JSC::MacroAssemblerARMv7::roundTowardZeroFloat):
(JSC::MacroAssemblerARMv7::roundTowardNearestIntDouble):
(JSC::MacroAssemblerARMv7::convertUInt32ToFloat):
(JSC::MacroAssemblerARMv7::convertUInt32ToDouble):
(JSC::MacroAssemblerARMv7::makeFPBranch):
(JSC::MacroAssemblerARMv7::branchFloat):
(JSC::MacroAssemblerARMv7::branchDouble):
(JSC::MacroAssemblerARMv7::truncateFloatToInt32):
(JSC::MacroAssemblerARMv7::truncateFloatToUint32):
(JSC::MacroAssemblerARMv7::zeroExtend8To32):
(JSC::MacroAssemblerARMv7::zeroExtend16To32):
(JSC::MacroAssemblerARMv7::signExtend8To32):
(JSC::MacroAssemblerARMv7::signExtend16To32):
(JSC::MacroAssemblerARMv7::signExtend32ToPtr):
(JSC::MacroAssemblerARMv7::loadFence):
(JSC::MacroAssemblerARMv7::compareFloat):
(JSC::MacroAssemblerARMv7::test32):
* Source/JavaScriptCore/b3/B3CheckSpecial.cpp:
(JSC::B3::CheckSpecial::generate):
* Source/JavaScriptCore/b3/B3Common.cpp:
(JSC::B3::extendedOffsetAddrRegister):
* Source/JavaScriptCore/b3/B3LowerMacros.cpp:
* Source/JavaScriptCore/b3/B3ValueRep.cpp:
* Source/JavaScriptCore/b3/B3WasmBoundsCheckValue.cpp:
(JSC::B3::WasmBoundsCheckValue::WasmBoundsCheckValue):
* Source/JavaScriptCore/b3/air/AirAllocateRegistersAndStackAndGenerateCode.cpp:
(JSC::B3::Air::callFrameAddr):
(JSC::B3::Air::GenerateAndAllocateRegisters::flush):
(JSC::B3::Air::GenerateAndAllocateRegisters::alloc):
(JSC::B3::Air::GenerateAndAllocateRegisters::prepareForGeneration):
(JSC::B3::Air::GenerateAndAllocateRegisters::generate):
* Source/JavaScriptCore/b3/air/AirAllocateRegistersByGraphColoring.cpp:
* Source/JavaScriptCore/b3/air/AirArg.h:
(JSC::B3::Air::Arg::imm):
(JSC::B3::Air::Arg::bigImm):
(JSC::B3::Air::Arg::bigImmLo32):
(JSC::B3::Air::Arg::bigImmHi32):
(JSC::B3::Air::Arg::bitImm):
(JSC::B3::Air::Arg::bitImm64):
(JSC::B3::Air::Arg::isValidScale):
(JSC::B3::Air::Arg::isValidImmForm):
(JSC::B3::Air::Arg::isValidBitImmForm):
(JSC::B3::Air::Arg::isValidAddrForm):
(JSC::B3::Air::Arg::isValidIndexForm):
(JSC::B3::Air::Arg::asTrustedImm64 const):
(JSC::B3::Air::Arg::asTrustedBigImm const):
* Source/JavaScriptCore/b3/air/AirCCallingConvention.cpp:
(JSC::B3::Air::computeCCallingConvention):
(JSC::B3::Air::cCallResultCount):
(JSC::B3::Air::cCallResult):
* Source/JavaScriptCore/b3/air/AirCCallingConvention.h:
* Source/JavaScriptCore/b3/air/AirCode.cpp:
(JSC::B3::Air::defaultPrologueGenerator):
(JSC::B3::Air::Code::Code):
(JSC::B3::Air::Code::addStackSlot):
* Source/JavaScriptCore/b3/air/AirCode.h:
(JSC::B3::Air::Code::frameSize const):
(JSC::B3::Air::Code::setFrameSize):
* Source/JavaScriptCore/b3/air/AirCustom.cpp:
(JSC::B3::Air::CCallCustom::isValidForm):
* Source/JavaScriptCore/b3/air/AirCustom.h:
(JSC::B3::Air::CCallCustom::forEachArg):
* Source/JavaScriptCore/b3/air/AirGenerate.cpp:
(JSC::B3::Air::generateWithAlreadyAllocatedRegisters):
* Source/JavaScriptCore/b3/air/AirHandleCalleeSaves.cpp:
(JSC::B3::Air::handleCalleeSaves):
* Source/JavaScriptCore/b3/air/AirLowerAfterRegAlloc.cpp:
(JSC::B3::Air::lowerAfterRegAlloc):
* Source/JavaScriptCore/b3/air/AirLowerMacros.cpp:
(JSC::B3::Air::lowerMacros):
* Source/JavaScriptCore/b3/air/AirLowerStackArgs.cpp:
(JSC::B3::Air::lowerStackArgs):
* Source/JavaScriptCore/b3/air/AirOpcode.opcodes:
* Source/JavaScriptCore/b3/air/AirStackAllocation.cpp:
* Source/JavaScriptCore/b3/air/opcode_generator.rb:
* Source/JavaScriptCore/b3/air/testair.cpp:
* Source/JavaScriptCore/b3/testb3.h:
* Source/JavaScriptCore/b3/testb3_1.cpp:
* Source/JavaScriptCore/b3/testb3_2.cpp:
* Source/JavaScriptCore/b3/testb3_3.cpp:
* Source/JavaScriptCore/b3/testb3_4.cpp:
* Source/JavaScriptCore/b3/testb3_5.cpp:
* Source/JavaScriptCore/b3/testb3_6.cpp:
* Source/JavaScriptCore/b3/testb3_7.cpp:
* Source/JavaScriptCore/b3/testb3_8.cpp:
* Source/JavaScriptCore/bytecode/VirtualRegister.h:
* Source/JavaScriptCore/generator/Wasm.rb:
* Source/JavaScriptCore/jit/GPRInfo.h:
* Source/JavaScriptCore/jit/PCToCodeOriginMap.cpp:
(JSC::PCToCodeOriginMapBuilder::PCToCodeOriginMapBuilder):
* Source/JavaScriptCore/jit/PCToCodeOriginMap.h:
* Source/JavaScriptCore/jit/RegisterSet.cpp:
(JSC::RegisterSet::volatileRegistersForCCall):
* Source/JavaScriptCore/jit/RegisterSet.h:
* Source/JavaScriptCore/llint/WebAssembly32_64.asm:
* Source/JavaScriptCore/runtime/MathCommon.cpp:
(JSC::Math::roundFloatImpl):
(JSC::Math::JSC_DEFINE_JIT_OPERATION):
* Source/JavaScriptCore/runtime/MathCommon.h:
* Source/JavaScriptCore/runtime/StackAlignment.h:
(JSC::stackAdjustmentForAlignment):
* Source/JavaScriptCore/wasm/WasmAirIRGenerator32_64.cpp: Added.
(JSC::Wasm::Air32::TypedTmp::TypedTmp):
(JSC::Wasm::Air32::TypedTmp::m_type):
(JSC::Wasm::Air32::TypedTmp::operator== const):
(JSC::Wasm::Air32::TypedTmp::operator!= const):
(JSC::Wasm::Air32::TypedTmp::type const):
(JSC::Wasm::Air32::TypedTmp::isGPPair const):
(JSC::Wasm::Air32::TypedTmp::coerce const):
(JSC::Wasm::Air32::TypedTmp::operator Tmp const):
(JSC::Wasm::Air32::TypedTmp::operator Arg const):
(JSC::Wasm::Air32::TypedTmp::operator bool const):
(JSC::Wasm::Air32::TypedTmp::tmp const):
(JSC::Wasm::Air32::TypedTmp::lo const):
(JSC::Wasm::Air32::TypedTmp::hi const):
(JSC::Wasm::Air32::TypedTmp::dump const):
(JSC::Wasm::AirIRGenerator32_64::AirIRGenerator32_64):
(JSC::Wasm::AirIRGenerator32_64::useSignalingMemory const):
(JSC::Wasm::AirIRGenerator32_64::gNewWord):
(JSC::Wasm::AirIRGenerator32_64::gNewPair):
(JSC::Wasm::AirIRGenerator32_64::g32):
(JSC::Wasm::AirIRGenerator32_64::g64):
(JSC::Wasm::AirIRGenerator32_64::gPtr):
(JSC::Wasm::AirIRGenerator32_64::gExternref):
(JSC::Wasm::AirIRGenerator32_64::gFuncref):
(JSC::Wasm::AirIRGenerator32_64::gRef):
(JSC::Wasm::AirIRGenerator32_64::f32):
(JSC::Wasm::AirIRGenerator32_64::f64):
(JSC::Wasm::AirIRGenerator32_64::extractArg):
(JSC::Wasm::AirIRGenerator32_64::extractJSValuePointer const):
(JSC::Wasm::AirIRGenerator32_64::emptyExpression):
(JSC::Wasm::AirIRGenerator32_64::emitCallPatchpoint):
(JSC::Wasm::AirIRGenerator32_64::moveOpForValueType):
(JSC::Wasm::AirIRGenerator32_64::emitZeroInitialize):
(JSC::Wasm::AirIRGenerator32_64::emitCheckI64Zero):
(JSC::Wasm::AirIRGenerator32_64::emitCheckForNullReference):
(JSC::Wasm::AirIRGenerator32_64::toB3ResultType):
(JSC::Wasm::AirIRGenerator32_64::emitLoad):
(JSC::Wasm::AirIRGenerator32_64::emitStore):
(JSC::Wasm::AirIRGenerator32_64::emitMove):
(JSC::Wasm::AirIRGenerator32_64::appendCCallArg):
(JSC::Wasm::AirIRGenerator32_64::addRefIsNull):
(JSC::Wasm::AirIRGenerator32_64::emitCheckAndPreparePointer):
(JSC::Wasm::AirIRGenerator32_64::emitLoadOp):
(JSC::Wasm::AirIRGenerator32_64::load):
(JSC::Wasm::AirIRGenerator32_64::emitStoreOp):
(JSC::Wasm::AirIRGenerator32_64::store):
(JSC::Wasm::AirIRGenerator32_64::preparePatchpointForExceptions):
(JSC::Wasm::AirIRGenerator32_64::emitCatchImpl):
(JSC::Wasm::AirIRGenerator32_64::emitMaterializeConstant):
(JSC::Wasm::AirIRGenerator32_64::addConstant):
(JSC::Wasm::AirIRGenerator32_64::emitCoerceToI64):
(JSC::Wasm::AirIRGenerator32_64::emitCoerceFromI64):
(JSC::Wasm::AirIRGenerator32_64::addReturn):
(JSC::Wasm::AirIRGenerator32_64::addThrow):
(JSC::Wasm::AirIRGenerator32_64::addRethrow):
(JSC::Wasm::AirIRGenerator32_64::sanitizeAtomicResult):
(JSC::Wasm::AirIRGenerator32_64::appendGeneralAtomic):
(JSC::Wasm::AirIRGenerator32_64::appendStrongCAS):
(JSC::Wasm::AirIRGenerator32_64::addShift):
(JSC::Wasm::AirIRGenerator32_64::addShift64):
(JSC::Wasm::AirIRGenerator32_64::addRotate64):
(JSC::Wasm::AirIRGenerator32_64::addIntegerSub):
(JSC::Wasm::AirIRGenerator32_64::addFloatingPointAbs):
(JSC::Wasm::AirIRGenerator32_64::addFloatingPointBinOp):
(JSC::Wasm::AirIRGenerator32_64::addCompare):
(JSC::Wasm::AirIRGenerator32_64::emitModOrDiv):
(JSC::Wasm::AirIRGenerator32_64::addI64Add):
(JSC::Wasm::AirIRGenerator32_64::addI64Mul):
(JSC::Wasm::AirIRGenerator32_64::addI64Eqz):
(JSC::Wasm::AirIRGenerator32_64::addI64And):
(JSC::Wasm::AirIRGenerator32_64::addI64Or):
(JSC::Wasm::AirIRGenerator32_64::addI64Xor):
(JSC::Wasm::AirIRGenerator32_64::addI64Clz):
(JSC::Wasm::AirIRGenerator32_64::addI64Ctz):
(JSC::Wasm::AirIRGenerator32_64::addI64Extend8S):
(JSC::Wasm::AirIRGenerator32_64::addI64Extend16S):
(JSC::Wasm::AirIRGenerator32_64::addI64Extend32S):
(JSC::Wasm::AirIRGenerator32_64::addI64ExtendUI32):
(JSC::Wasm::AirIRGenerator32_64::addI64ExtendSI32):
(JSC::Wasm::AirIRGenerator32_64::addI32WrapI64):
(JSC::Wasm::AirIRGenerator32_64::addF64ConvertUI64):
(JSC::Wasm::AirIRGenerator32_64::addF64ConvertSI64):
(JSC::Wasm::AirIRGenerator32_64::addF32ConvertUI64):
(JSC::Wasm::AirIRGenerator32_64::addF32ConvertSI64):
(JSC::Wasm::AirIRGenerator32_64::addF32ConvertUI32):
(JSC::Wasm::AirIRGenerator32_64::addF64ConvertUI32):
(JSC::Wasm::AirIRGenerator32_64::addI64ReinterpretF64):
(JSC::Wasm::AirIRGenerator32_64::addF64ReinterpretI64):
(JSC::Wasm::AirIRGenerator32_64::addF32Nearest):
(JSC::Wasm::AirIRGenerator32_64::addF64Nearest):
(JSC::Wasm::AirIRGenerator32_64::addF64Copysign):
(JSC::Wasm::AirIRGenerator32_64::addUncheckedFloatingPointTruncation):
(JSC::Wasm::AirIRGenerator32_64::addI31New):
(JSC::Wasm::AirIRGenerator32_64::addI31GetS):
(JSC::Wasm::AirIRGenerator32_64::addI31GetU):
(JSC::Wasm::parseAndCompileAir):
* Source/JavaScriptCore/wasm/WasmAirIRGenerator64.cpp: Added.
(JSC::Wasm::TypedTmp::TypedTmp):
(JSC::Wasm::TypedTmp::operator== const):
(JSC::Wasm::TypedTmp::operator!= const):
(JSC::Wasm::TypedTmp::operator bool const):
(JSC::Wasm::TypedTmp::operator Tmp const):
(JSC::Wasm::TypedTmp::operator Arg const):
(JSC::Wasm::TypedTmp::tmp const):
(JSC::Wasm::TypedTmp::type const):
(JSC::Wasm::TypedTmp::coerce const):
(JSC::Wasm::TypedTmp::dump const):
(JSC::Wasm::AirIRGenerator64::emptyExpression):
(JSC::Wasm::AirIRGenerator64::emitCallPatchpoint):
(JSC::Wasm::AirIRGenerator64::g32):
(JSC::Wasm::AirIRGenerator64::g64):
(JSC::Wasm::AirIRGenerator64::gPtr):
(JSC::Wasm::AirIRGenerator64::gExternref):
(JSC::Wasm::AirIRGenerator64::gFuncref):
(JSC::Wasm::AirIRGenerator64::gRef):
(JSC::Wasm::AirIRGenerator64::f32):
(JSC::Wasm::AirIRGenerator64::f64):
(JSC::Wasm::AirIRGenerator64::extractArg):
(JSC::Wasm::AirIRGenerator64::extractJSValuePointer const):
(JSC::Wasm::AirIRGenerator64::moveOpForValueType):
(JSC::Wasm::AirIRGenerator64::emitLoad):
(JSC::Wasm::AirIRGenerator64::emitStore):
(JSC::Wasm::AirIRGenerator64::appendCCallArg):
(JSC::Wasm::AirIRGenerator64::emitMove):
(JSC::Wasm::AirIRGenerator64::useSignalingMemory const):
(JSC::Wasm::AirIRGenerator64::AirIRGenerator64):
(JSC::Wasm::AirIRGenerator64::emitZeroInitialize):
(JSC::Wasm::AirIRGenerator64::emitCheckI64Zero):
(JSC::Wasm::AirIRGenerator64::emitCheckForNullReference):
(JSC::Wasm::AirIRGenerator64::toB3ResultType):
(JSC::Wasm::AirIRGenerator64::emitMaterializeConstant):
(JSC::Wasm::AirIRGenerator64::addConstant):
(JSC::Wasm::AirIRGenerator64::emitCoerceToI64):
(JSC::Wasm::AirIRGenerator64::emitCoerceFromI64):
(JSC::Wasm::AirIRGenerator64::addRefIsNull):
(JSC::Wasm::AirIRGenerator64::emitCheckAndPreparePointer):
(JSC::Wasm::AirIRGenerator64::emitLoadOp):
(JSC::Wasm::AirIRGenerator64::load):
(JSC::Wasm::AirIRGenerator64::emitStoreOp):
(JSC::Wasm::AirIRGenerator64::store):
(JSC::Wasm::AirIRGenerator64::sanitizeAtomicResult):
(JSC::Wasm::AirIRGenerator64::appendGeneralAtomic):
(JSC::Wasm::AirIRGenerator64::appendStrongCAS):
(JSC::Wasm::AirIRGenerator64::addI31New):
(JSC::Wasm::AirIRGenerator64::addI31GetS):
(JSC::Wasm::AirIRGenerator64::addI31GetU):
(JSC::Wasm::AirIRGenerator64::emitCatchImpl):
(JSC::Wasm::AirIRGenerator64::addReturn):
(JSC::Wasm::AirIRGenerator64::addThrow):
(JSC::Wasm::AirIRGenerator64::addRethrow):
(JSC::Wasm::AirIRGenerator64::emitModOrDiv):
(JSC::Wasm::AirIRGenerator64::addShift):
(JSC::Wasm::AirIRGenerator64::addIntegerSub):
(JSC::Wasm::AirIRGenerator64::addFloatingPointAbs):
(JSC::Wasm::AirIRGenerator64::addFloatingPointBinOp):
(JSC::Wasm::AirIRGenerator64::addCompare):
(JSC::Wasm::AirIRGenerator64::preparePatchpointForExceptions):
(JSC::Wasm::AirIRGenerator64::addI64Ctz):
(JSC::Wasm::AirIRGenerator64::addF64ConvertUI64):
(JSC::Wasm::AirIRGenerator64::addF32ConvertUI64):
(JSC::Wasm::AirIRGenerator64::addUncheckedFloatingPointTruncation):
(JSC::Wasm::AirIRGenerator64::addF64ConvertUI32):
(JSC::Wasm::AirIRGenerator64::addI64And):
(JSC::Wasm::AirIRGenerator64::addI64Eqz):
(JSC::Wasm::AirIRGenerator64::addI64Or):
(JSC::Wasm::parseAndCompileAir):
* Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h:
(JSC::Wasm::AirIRGeneratorBase::ControlData::convertTryToCatch):
(JSC::Wasm::AirIRGeneratorBase::ControlData::convertTryToCatchAll):
(JSC::Wasm::AirIRGeneratorBase::ControlData::exception const):
(JSC::Wasm::AirIRGeneratorBase::self):
(JSC::Wasm::AirIRGeneratorBase::self const):
(JSC::Wasm::AirIRGeneratorBase::setParser):
(JSC::Wasm::AirIRGeneratorBase::didFinishParsingLocals):
(JSC::Wasm::AirIRGeneratorBase::didPopValueFromStack):
(JSC::Wasm::AirIRGeneratorBase::append):
(JSC::Wasm::AirIRGeneratorBase::tmpForType):
(JSC::Wasm::AirIRGeneratorBase::tmpsForSignature):
(JSC::Wasm::AirIRGeneratorBase::emitPatchpoint):
(JSC::Wasm::AirIRGeneratorBase::emitCCall):
(JSC::Wasm::AirIRGeneratorBase::emitThrowOnNullReference):
(JSC::Wasm::AirIRGeneratorBase::instanceValue):
(JSC::Wasm::ExpressionType>::fixupPointerPlusOffset):
(JSC::Wasm::ExpressionType>::restoreWasmContextInstance):
(JSC::Wasm::ExpressionType>::AirIRGeneratorBase):
(JSC::Wasm::ExpressionType>::finalizeEntrypoints):
(JSC::Wasm::ExpressionType>::restoreWebAssemblyGlobalState):
(JSC::Wasm::ExpressionType>::emitThrowException):
(JSC::Wasm::ExpressionType>::forEachLiveValue):
(JSC::Wasm::ExpressionType>::addLocal):
(JSC::Wasm::ExpressionType>::addBottom):
(JSC::Wasm::ExpressionType>::addArguments):
(JSC::Wasm::ExpressionType>::addRefFunc):
(JSC::Wasm::ExpressionType>::addTableGet):
(JSC::Wasm::ExpressionType>::addTableSet):
(JSC::Wasm::ExpressionType>::addTableInit):
(JSC::Wasm::ExpressionType>::addElemDrop):
(JSC::Wasm::ExpressionType>::addTableSize):
(JSC::Wasm::ExpressionType>::addTableGrow):
(JSC::Wasm::ExpressionType>::addTableFill):
(JSC::Wasm::ExpressionType>::addTableCopy):
(JSC::Wasm::ExpressionType>::getLocal):
(JSC::Wasm::ExpressionType>::addUnreachable):
(JSC::Wasm::ExpressionType>::addGrowMemory):
(JSC::Wasm::ExpressionType>::addCurrentMemory):
(JSC::Wasm::ExpressionType>::addMemoryFill):
(JSC::Wasm::ExpressionType>::addMemoryCopy):
(JSC::Wasm::ExpressionType>::addMemoryInit):
(JSC::Wasm::ExpressionType>::addDataDrop):
(JSC::Wasm::ExpressionType>::setLocal):
(JSC::Wasm::ExpressionType>::getGlobal):
(JSC::Wasm::ExpressionType>::setGlobal):
(JSC::Wasm::ExpressionType>::emitWriteBarrierForJSWrapper):
(JSC::Wasm::sizeOfStoreOp):
(JSC::Wasm::accessWidth):
(JSC::Wasm::sizeOfAtomicOpMemoryAccess):
(JSC::Wasm::ExpressionType>::fixupPointerPlusOffsetForAtomicOps):
(JSC::Wasm::ExpressionType>::emitAtomicLoadOp):
(JSC::Wasm::ExpressionType>::atomicLoad):
(JSC::Wasm::ExpressionType>::emitAtomicStoreOp):
(JSC::Wasm::ExpressionType>::atomicStore):
(JSC::Wasm::ExpressionType>::emitAtomicBinaryRMWOp):
(JSC::Wasm::ExpressionType>::atomicBinaryRMW):
(JSC::Wasm::ExpressionType>::emitAtomicCompareExchange):
(JSC::Wasm::ExpressionType>::atomicCompareExchange):
(JSC::Wasm::ExpressionType>::atomicWait):
(JSC::Wasm::ExpressionType>::atomicNotify):
(JSC::Wasm::ExpressionType>::atomicFence):
(JSC::Wasm::ExpressionType>::lookupTruncationRange):
(JSC::Wasm::ExpressionType>::truncSaturated):
(JSC::Wasm::ExpressionType>::addCheckedFloatingPointTruncation):
(JSC::Wasm::ExpressionType>::addArrayNew):
(JSC::Wasm::ExpressionType>::addArrayNewDefault):
(JSC::Wasm::ExpressionType>::addArrayGet):
(JSC::Wasm::ExpressionType>::addArraySet):
(JSC::Wasm::ExpressionType>::addArrayLen):
(JSC::Wasm::ExpressionType>::addSelect):
(JSC::Wasm::ExpressionType>::emitEntryTierUpCheck):
(JSC::Wasm::ExpressionType>::emitLoopTierUpCheck):
(JSC::Wasm::ExpressionType>::addTopLevel):
(JSC::Wasm::ExpressionType>::addLoop):
(JSC::Wasm::ExpressionType>::addBlock):
(JSC::Wasm::ExpressionType>::addIf):
(JSC::Wasm::ExpressionType>::addElse):
(JSC::Wasm::ExpressionType>::addElseToUnreachable):
(JSC::Wasm::ExpressionType>::addTry):
(JSC::Wasm::ExpressionType>::addCatch):
(JSC::Wasm::ExpressionType>::addCatchAll):
(JSC::Wasm::ExpressionType>::addCatchToUnreachable):
(JSC::Wasm::ExpressionType>::addCatchAllToUnreachable):
(JSC::Wasm::ExpressionType>::addDelegate):
(JSC::Wasm::ExpressionType>::addDelegateToUnreachable):
(JSC::Wasm::ExpressionType>::addBranch):
(JSC::Wasm::ExpressionType>::addSwitch):
(JSC::Wasm::ExpressionType>::endBlock):
(JSC::Wasm::ExpressionType>::addEndToUnreachable):
(JSC::Wasm::ExpressionType>::addCall):
(JSC::Wasm::ExpressionType>::addCallIndirect):
(JSC::Wasm::ExpressionType>::addCallRef):
(JSC::Wasm::ExpressionType>::emitIndirectCall):
(JSC::Wasm::ExpressionType>::unifyValuesWithBlock):
(JSC::Wasm::dumpExpressionStack):
(JSC::Wasm::ExpressionType>::dump):
(JSC::Wasm::ExpressionType>::origin):
(JSC::Wasm::parseAndCompileAirImpl):
(JSC::Wasm::ExpressionType>::emitChecksForModOrDiv):
(JSC::Wasm::ExpressionType>::addI32DivS):
(JSC::Wasm::ExpressionType>::addI32RemS):
(JSC::Wasm::ExpressionType>::addI32DivU):
(JSC::Wasm::ExpressionType>::addI32RemU):
(JSC::Wasm::ExpressionType>::addI64DivS):
(JSC::Wasm::ExpressionType>::addI64RemS):
(JSC::Wasm::ExpressionType>::addI64DivU):
(JSC::Wasm::ExpressionType>::addI64RemU):
(JSC::Wasm::ExpressionType>::addI32Ctz):
(JSC::Wasm::ExpressionType>::addI32Popcnt):
(JSC::Wasm::ExpressionType>::addI64Popcnt):
(JSC::Wasm::ExpressionType>::addF64Nearest):
(JSC::Wasm::ExpressionType>::addF32Nearest):
(JSC::Wasm::ExpressionType>::addF64Trunc):
(JSC::Wasm::ExpressionType>::addF32Trunc):
(JSC::Wasm::ExpressionType>::addI32TruncSF64):
(JSC::Wasm::ExpressionType>::addI32TruncSF32):
(JSC::Wasm::ExpressionType>::addI32TruncUF64):
(JSC::Wasm::ExpressionType>::addI32TruncUF32):
(JSC::Wasm::ExpressionType>::addI64TruncSF64):
(JSC::Wasm::ExpressionType>::addI64TruncSF32):
(JSC::Wasm::ExpressionType>::addI64TruncUF64):
(JSC::Wasm::ExpressionType>::addI64TruncUF32):
(JSC::Wasm::ExpressionType>::addF32Ceil):
(JSC::Wasm::ExpressionType>::addI32Mul):
(JSC::Wasm::ExpressionType>::addI32Sub):
(JSC::Wasm::ExpressionType>::addF64Le):
(JSC::Wasm::ExpressionType>::addF32DemoteF64):
(JSC::Wasm::ExpressionType>::addF64Ne):
(JSC::Wasm::ExpressionType>::addF64Lt):
(JSC::Wasm::ExpressionType>::addFloatingPointMinOrMax):
(JSC::Wasm::ExpressionType>::addF32Min):
(JSC::Wasm::ExpressionType>::addF32Max):
(JSC::Wasm::ExpressionType>::addF64Min):
(JSC::Wasm::ExpressionType>::addF64Max):
(JSC::Wasm::ExpressionType>::addF64Mul):
(JSC::Wasm::ExpressionType>::addF32Div):
(JSC::Wasm::ExpressionType>::addI32Clz):
(JSC::Wasm::ExpressionType>::addF32Copysign):
(JSC::Wasm::ExpressionType>::addF32ReinterpretI32):
(JSC::Wasm::ExpressionType>::addF32Ne):
(JSC::Wasm::ExpressionType>::addF64Gt):
(JSC::Wasm::ExpressionType>::addF32Sqrt):
(JSC::Wasm::ExpressionType>::addF64Ge):
(JSC::Wasm::ExpressionType>::addI64GtS):
(JSC::Wasm::ExpressionType>::addI64GtU):
(JSC::Wasm::ExpressionType>::addF64Div):
(JSC::Wasm::ExpressionType>::addF32Add):
(JSC::Wasm::ExpressionType>::addI32LeU):
(JSC::Wasm::ExpressionType>::addI32LeS):
(JSC::Wasm::ExpressionType>::addI64Ne):
(JSC::Wasm::ExpressionType>::addI64Clz):
(JSC::Wasm::ExpressionType>::addF32Neg):
(JSC::Wasm::ExpressionType>::addI32And):
(JSC::Wasm::ExpressionType>::addI32LtU):
(JSC::Wasm::ExpressionType>::addI64Rotr):
(JSC::Wasm::ExpressionType>::addF64Abs):
(JSC::Wasm::ExpressionType>::addI32LtS):
(JSC::Wasm::ExpressionType>::addI32Eq):
(JSC::Wasm::ExpressionType>::addF64Copysign):
(JSC::Wasm::ExpressionType>::addF32ConvertSI64):
(JSC::Wasm::ExpressionType>::addI64Rotl):
(JSC::Wasm::ExpressionType>::addF32Lt):
(JSC::Wasm::ExpressionType>::addF64ConvertSI32):
(JSC::Wasm::ExpressionType>::addF64Eq):
(JSC::Wasm::ExpressionType>::addF32Le):
(JSC::Wasm::ExpressionType>::addF32Ge):
(JSC::Wasm::ExpressionType>::addI32ShrU):
(JSC::Wasm::ExpressionType>::addF32ConvertUI32):
(JSC::Wasm::ExpressionType>::addI32ShrS):
(JSC::Wasm::ExpressionType>::addI32GeU):
(JSC::Wasm::ExpressionType>::addF64Ceil):
(JSC::Wasm::ExpressionType>::addI32GeS):
(JSC::Wasm::ExpressionType>::addI32Shl):
(JSC::Wasm::ExpressionType>::addF64Floor):
(JSC::Wasm::ExpressionType>::addI32Xor):
(JSC::Wasm::ExpressionType>::addF32Abs):
(JSC::Wasm::ExpressionType>::addF32Mul):
(JSC::Wasm::ExpressionType>::addI64Sub):
(JSC::Wasm::ExpressionType>::addI32ReinterpretF32):
(JSC::Wasm::ExpressionType>::addI32Add):
(JSC::Wasm::ExpressionType>::addF64Sub):
(JSC::Wasm::ExpressionType>::addI32Or):
(JSC::Wasm::ExpressionType>::addI64LtU):
(JSC::Wasm::ExpressionType>::addI64LtS):
(JSC::Wasm::ExpressionType>::addF64ConvertSI64):
(JSC::Wasm::ExpressionType>::addI64Xor):
(JSC::Wasm::ExpressionType>::addI64GeU):
(JSC::Wasm::ExpressionType>::addI64Mul):
(JSC::Wasm::ExpressionType>::addF32Sub):
(JSC::Wasm::ExpressionType>::addF64PromoteF32):
(JSC::Wasm::ExpressionType>::addF64Add):
(JSC::Wasm::ExpressionType>::addI64GeS):
(JSC::Wasm::ExpressionType>::addI64ExtendUI32):
(JSC::Wasm::ExpressionType>::addI32Ne):
(JSC::Wasm::ExpressionType>::addF64ReinterpretI64):
(JSC::Wasm::ExpressionType>::addF32Eq):
(JSC::Wasm::ExpressionType>::addI64Eq):
(JSC::Wasm::ExpressionType>::addF32Floor):
(JSC::Wasm::ExpressionType>::addF32ConvertSI32):
(JSC::Wasm::ExpressionType>::addI32Eqz):
(JSC::Wasm::ExpressionType>::addI64ReinterpretF64):
(JSC::Wasm::ExpressionType>::addI64ShrS):
(JSC::Wasm::ExpressionType>::addI64ShrU):
(JSC::Wasm::ExpressionType>::addF64Sqrt):
(JSC::Wasm::ExpressionType>::addI64Shl):
(JSC::Wasm::ExpressionType>::addF32Gt):
(JSC::Wasm::ExpressionType>::addI32WrapI64):
(JSC::Wasm::ExpressionType>::addI32Rotl):
(JSC::Wasm::ExpressionType>::addI32Rotr):
(JSC::Wasm::ExpressionType>::addI32GtU):
(JSC::Wasm::ExpressionType>::addI64ExtendSI32):
(JSC::Wasm::ExpressionType>::addI32Extend8S):
(JSC::Wasm::ExpressionType>::addI32Extend16S):
(JSC::Wasm::ExpressionType>::addI64Extend8S):
(JSC::Wasm::ExpressionType>::addI64Extend16S):
(JSC::Wasm::ExpressionType>::addI64Extend32S):
(JSC::Wasm::ExpressionType>::addI32GtS):
(JSC::Wasm::ExpressionType>::addF64Neg):
(JSC::Wasm::ExpressionType>::addI64LeU):
(JSC::Wasm::ExpressionType>::addI64LeS):
(JSC::Wasm::ExpressionType>::addI64Add):
(JSC::Wasm::TypedTmp::TypedTmp): Deleted.
(JSC::Wasm::TypedTmp::operator== const): Deleted.
(JSC::Wasm::TypedTmp::operator!= const): Deleted.
(JSC::Wasm::TypedTmp::operator bool const): Deleted.
(JSC::Wasm::TypedTmp::operator Tmp const): Deleted.
(JSC::Wasm::TypedTmp::operator Arg const): Deleted.
(JSC::Wasm::TypedTmp::tmp const): Deleted.
(JSC::Wasm::TypedTmp::type const): Deleted.
(JSC::Wasm::TypedTmp::dump const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::ControlData): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isIf): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isTry): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isAnyCatch): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isCatch): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isTopLevel): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isLoop): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::isBlock): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::dump const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::blockType const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::signature const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::targetBlockForBranch): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::convertIfToBlock): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::branchTargetArity const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::branchTargetType const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::convertTryToCatch): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::convertTryToCatchAll): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::tryStart const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::tryEnd const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::tryDepth const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::catchKind const): Deleted.
(JSC::Wasm::AirIRGenerator::ControlData::exception const): Deleted.
(JSC::Wasm::AirIRGenerator::emptyExpression): Deleted.
(JSC::Wasm::AirIRGenerator::fail const): Deleted.
(JSC::Wasm::AirIRGenerator::addEndToUnreachable): Deleted.
(JSC::Wasm::AirIRGenerator::endTopLevel): Deleted.
(JSC::Wasm::AirIRGenerator::emitCallPatchpoint): Deleted.
(JSC::Wasm::AirIRGenerator::setParser): Deleted.
(JSC::Wasm::AirIRGenerator::didFinishParsingLocals): Deleted.
(JSC::Wasm::AirIRGenerator::didPopValueFromStack): Deleted.
(JSC::Wasm::AirIRGenerator:: const): Deleted.
(JSC::Wasm::AirIRGenerator::addStackMap): Deleted.
(JSC::Wasm::AirIRGenerator::takeStackmaps): Deleted.
(JSC::Wasm::AirIRGenerator::takeExceptionHandlers): Deleted.
(JSC::Wasm::AirIRGenerator::validateInst): Deleted.
(JSC::Wasm::AirIRGenerator::extractArg): Deleted.
(JSC::Wasm::AirIRGenerator::append): Deleted.
(JSC::Wasm::AirIRGenerator::appendEffectful): Deleted.
(JSC::Wasm::AirIRGenerator::newTmp): Deleted.
(JSC::Wasm::AirIRGenerator::g32): Deleted.
(JSC::Wasm::AirIRGenerator::g64): Deleted.
(JSC::Wasm::AirIRGenerator::gExternref): Deleted.
(JSC::Wasm::AirIRGenerator::gFuncref): Deleted.
(JSC::Wasm::AirIRGenerator::gRef): Deleted.
(JSC::Wasm::AirIRGenerator::f32): Deleted.
(JSC::Wasm::AirIRGenerator::f64): Deleted.
(JSC::Wasm::AirIRGenerator::tmpForType): Deleted.
(JSC::Wasm::AirIRGenerator::tmpsForSignature): Deleted.
(JSC::Wasm::AirIRGenerator::addPatchpoint): Deleted.
(JSC::Wasm::AirIRGenerator::emitPatchpoint): Deleted.
(JSC::Wasm::AirIRGenerator::emitCheck): Deleted.
(JSC::Wasm::AirIRGenerator::emitCCall): Deleted.
(JSC::Wasm::AirIRGenerator::moveOpForValueType): Deleted.
(JSC::Wasm::AirIRGenerator::emitLoad): Deleted.
(JSC::Wasm::AirIRGenerator::outerLoopIndex const): Deleted.
(JSC::Wasm::AirIRGenerator::useSignalingMemory const): Deleted.
(JSC::Wasm::AirIRGenerator::instanceValue): Deleted.
(JSC::Wasm::AirIRGenerator::fixupPointerPlusOffset): Deleted.
(JSC::Wasm::AirIRGenerator::restoreWasmContextInstance): Deleted.
(JSC::Wasm::AirIRGenerator::AirIRGenerator): Deleted.
(JSC::Wasm::AirIRGenerator::finalizeEntrypoints): Deleted.
(JSC::Wasm::AirIRGenerator::toB3ResultType): Deleted.
(JSC::Wasm::AirIRGenerator::restoreWebAssemblyGlobalState): Deleted.
(JSC::Wasm::AirIRGenerator::emitThrowException): Deleted.
(JSC::Wasm::AirIRGenerator::forEachLiveValue): Deleted.
(JSC::Wasm::AirIRGenerator::addLocal): Deleted.
(JSC::Wasm::AirIRGenerator::addConstant): Deleted.
(JSC::Wasm::AirIRGenerator::addBottom): Deleted.
(JSC::Wasm::AirIRGenerator::addArguments): Deleted.
(JSC::Wasm::AirIRGenerator::addRefIsNull): Deleted.
(JSC::Wasm::AirIRGenerator::addRefFunc): Deleted.
(JSC::Wasm::AirIRGenerator::addTableGet): Deleted.
(JSC::Wasm::AirIRGenerator::addTableSet): Deleted.
(JSC::Wasm::AirIRGenerator::addTableInit): Deleted.
(JSC::Wasm::AirIRGenerator::addElemDrop): Deleted.
(JSC::Wasm::AirIRGenerator::addTableSize): Deleted.
(JSC::Wasm::AirIRGenerator::addTableGrow): Deleted.
(JSC::Wasm::AirIRGenerator::addTableFill): Deleted.
(JSC::Wasm::AirIRGenerator::addTableCopy): Deleted.
(JSC::Wasm::AirIRGenerator::getLocal): Deleted.
(JSC::Wasm::AirIRGenerator::addUnreachable): Deleted.
(JSC::Wasm::AirIRGenerator::addGrowMemory): Deleted.
(JSC::Wasm::AirIRGenerator::addCurrentMemory): Deleted.
(JSC::Wasm::AirIRGenerator::addMemoryFill): Deleted.
(JSC::Wasm::AirIRGenerator::addMemoryCopy): Deleted.
(JSC::Wasm::AirIRGenerator::addMemoryInit): Deleted.
(JSC::Wasm::AirIRGenerator::addDataDrop): Deleted.
(JSC::Wasm::AirIRGenerator::setLocal): Deleted.
(JSC::Wasm::AirIRGenerator::getGlobal): Deleted.
(JSC::Wasm::AirIRGenerator::setGlobal): Deleted.
(JSC::Wasm::AirIRGenerator::emitWriteBarrierForJSWrapper): Deleted.
(JSC::Wasm::AirIRGenerator::emitCheckAndPreparePointer): Deleted.
(JSC::Wasm::AirIRGenerator::emitLoadOp): Deleted.
(JSC::Wasm::AirIRGenerator::load): Deleted.
(JSC::Wasm::AirIRGenerator::emitStoreOp): Deleted.
(JSC::Wasm::AirIRGenerator::store): Deleted.
(JSC::Wasm::AirIRGenerator::fixupPointerPlusOffsetForAtomicOps): Deleted.
(JSC::Wasm::AirIRGenerator::sanitizeAtomicResult): Deleted.
(JSC::Wasm::AirIRGenerator::appendGeneralAtomic): Deleted.
(JSC::Wasm::AirIRGenerator::appendStrongCAS): Deleted.
(JSC::Wasm::AirIRGenerator::emitAtomicLoadOp): Deleted.
(JSC::Wasm::AirIRGenerator::atomicLoad): Deleted.
(JSC::Wasm::AirIRGenerator::emitAtomicStoreOp): Deleted.
(JSC::Wasm::AirIRGenerator::atomicStore): Deleted.
(JSC::Wasm::AirIRGenerator::emitAtomicBinaryRMWOp): Deleted.
(JSC::Wasm::AirIRGenerator::atomicBinaryRMW): Deleted.
(JSC::Wasm::AirIRGenerator::emitAtomicCompareExchange): Deleted.
(JSC::Wasm::AirIRGenerator::atomicCompareExchange): Deleted.
(JSC::Wasm::AirIRGenerator::atomicWait): Deleted.
(JSC::Wasm::AirIRGenerator::atomicNotify): Deleted.
(JSC::Wasm::AirIRGenerator::atomicFence): Deleted.
(JSC::Wasm::AirIRGenerator::lookupTruncationRange): Deleted.
(JSC::Wasm::AirIRGenerator::addUncheckedFloatingPointTruncation): Deleted.
(JSC::Wasm::AirIRGenerator::truncSaturated): Deleted.
(JSC::Wasm::AirIRGenerator::addCheckedFloatingPointTruncation): Deleted.
(JSC::Wasm::AirIRGenerator::addI31New): Deleted.
(JSC::Wasm::AirIRGenerator::addI31GetS): Deleted.
(JSC::Wasm::AirIRGenerator::addI31GetU): Deleted.
(JSC::Wasm::AirIRGenerator::addArrayNew): Deleted.
(JSC::Wasm::AirIRGenerator::addArrayNewDefault): Deleted.
(JSC::Wasm::AirIRGenerator::addArrayGet): Deleted.
(JSC::Wasm::AirIRGenerator::addArraySet): Deleted.
(JSC::Wasm::AirIRGenerator::addArrayLen): Deleted.
(JSC::Wasm::AirIRGenerator::addSelect): Deleted.
(JSC::Wasm::AirIRGenerator::emitEntryTierUpCheck): Deleted.
(JSC::Wasm::AirIRGenerator::emitLoopTierUpCheck): Deleted.
(JSC::Wasm::AirIRGenerator::addTopLevel): Deleted.
(JSC::Wasm::AirIRGenerator::addLoop): Deleted.
(JSC::Wasm::AirIRGenerator::addBlock): Deleted.
(JSC::Wasm::AirIRGenerator::addIf): Deleted.
(JSC::Wasm::AirIRGenerator::addElse): Deleted.
(JSC::Wasm::AirIRGenerator::addElseToUnreachable): Deleted.
(JSC::Wasm::AirIRGenerator::addTry): Deleted.
(JSC::Wasm::AirIRGenerator::addCatch): Deleted.
(JSC::Wasm::AirIRGenerator::addCatchAll): Deleted.
(JSC::Wasm::AirIRGenerator::addCatchToUnreachable): Deleted.
(JSC::Wasm::AirIRGenerator::addCatchAllToUnreachable): Deleted.
(JSC::Wasm::AirIRGenerator::emitCatchImpl): Deleted.
(JSC::Wasm::AirIRGenerator::addDelegate): Deleted.
(JSC::Wasm::AirIRGenerator::addDelegateToUnreachable): Deleted.
(JSC::Wasm::AirIRGenerator::addThrow): Deleted.
(JSC::Wasm::AirIRGenerator::addRethrow): Deleted.
(JSC::Wasm::AirIRGenerator::addReturn): Deleted.
(JSC::Wasm::AirIRGenerator::addBranch): Deleted.
(JSC::Wasm::AirIRGenerator::addSwitch): Deleted.
(JSC::Wasm::AirIRGenerator::endBlock): Deleted.
(JSC::Wasm::AirIRGenerator::addCall): Deleted.
(JSC::Wasm::AirIRGenerator::addCallIndirect): Deleted.
(JSC::Wasm::AirIRGenerator::addCallRef): Deleted.
(JSC::Wasm::AirIRGenerator::emitIndirectCall): Deleted.
(JSC::Wasm::AirIRGenerator::unify): Deleted.
(JSC::Wasm::AirIRGenerator::unifyValuesWithBlock): Deleted.
(JSC::Wasm::AirIRGenerator::dump): Deleted.
(JSC::Wasm::AirIRGenerator::origin): Deleted.
(JSC::Wasm::parseAndCompileAir): Deleted.
(JSC::Wasm::AirIRGenerator::emitChecksForModOrDiv): Deleted.
(JSC::Wasm::AirIRGenerator::emitModOrDiv): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32DivS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32RemS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32DivU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32RemU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64DivS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64RemS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64DivU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64RemU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Ctz>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Ctz>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Popcnt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Popcnt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<F64ConvertUI64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32ConvertUI64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Nearest>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Nearest>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Trunc>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Trunc>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32TruncSF64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32TruncSF32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32TruncUF64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32TruncUF32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64TruncSF64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64TruncUF64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64TruncSF32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64TruncUF32>): Deleted.
(JSC::Wasm::AirIRGenerator::addShift): Deleted.
(JSC::Wasm::AirIRGenerator::addIntegerSub): Deleted.
(JSC::Wasm::AirIRGenerator::addFloatingPointAbs): Deleted.
(JSC::Wasm::AirIRGenerator::addFloatingPointBinOp): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Ceil>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Mul>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Sub>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Le>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32DemoteF64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Ne>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Lt>): Deleted.
(JSC::Wasm::AirIRGenerator::addFloatingPointMinOrMax): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Min>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Max>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Min>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Max>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Mul>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Div>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Clz>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Copysign>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64ConvertUI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32ReinterpretI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64And>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Ne>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Gt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Sqrt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Ge>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64GtS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64GtU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Eqz>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Div>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Add>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Or>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32LeU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32LeS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Ne>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Clz>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Neg>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32And>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32LtU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Rotr>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Abs>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32LtS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Eq>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Copysign>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32ConvertSI64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Rotl>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Lt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64ConvertSI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Eq>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Le>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Ge>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32ShrU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32ConvertUI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32ShrS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32GeU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Ceil>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32GeS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Shl>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Floor>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Xor>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Abs>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Mul>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Sub>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32ReinterpretF32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Add>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Sub>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Or>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64LtU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64LtS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64ConvertSI64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Xor>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64GeU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Mul>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Sub>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64PromoteF32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Add>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64GeS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64ExtendUI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Ne>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64ReinterpretI64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Eq>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Eq>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Floor>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32ConvertSI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Eqz>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64ReinterpretF64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64ShrS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64ShrU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Sqrt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Shl>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F32Gt>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32WrapI64>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Rotl>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Rotr>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32GtU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64ExtendSI32>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Extend8S>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32Extend16S>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Extend8S>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Extend16S>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Extend32S>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I32GtS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::F64Neg>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64LeU>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64LeS>): Deleted.
(JSC::Wasm::AirIRGenerator::addOp<OpType::I64Add>): Deleted.
(JSC::Wasm::AirIRGenerator::preparePatchpointForExceptions): Deleted.
* Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addI32DivS):
(JSC::Wasm::B3IRGenerator::addI32RemS):
(JSC::Wasm::B3IRGenerator::addI32DivU):
(JSC::Wasm::B3IRGenerator::addI32RemU):
(JSC::Wasm::B3IRGenerator::addI64DivS):
(JSC::Wasm::B3IRGenerator::addI64RemS):
(JSC::Wasm::B3IRGenerator::addI64DivU):
(JSC::Wasm::B3IRGenerator::addI64RemU):
(JSC::Wasm::B3IRGenerator::addI32Ctz):
(JSC::Wasm::B3IRGenerator::addI64Ctz):
(JSC::Wasm::B3IRGenerator::addI32Popcnt):
(JSC::Wasm::B3IRGenerator::addI64Popcnt):
(JSC::Wasm::B3IRGenerator::addF64ConvertUI64):
(JSC::Wasm::B3IRGenerator::addF32ConvertUI64):
(JSC::Wasm::B3IRGenerator::addF64Nearest):
(JSC::Wasm::B3IRGenerator::addF32Nearest):
(JSC::Wasm::B3IRGenerator::addF64Trunc):
(JSC::Wasm::B3IRGenerator::addF32Trunc):
(JSC::Wasm::B3IRGenerator::addI32TruncSF64):
(JSC::Wasm::B3IRGenerator::addI32TruncSF32):
(JSC::Wasm::B3IRGenerator::addI32TruncUF64):
(JSC::Wasm::B3IRGenerator::addI32TruncUF32):
(JSC::Wasm::B3IRGenerator::addI64TruncSF64):
(JSC::Wasm::B3IRGenerator::addI64TruncUF64):
(JSC::Wasm::B3IRGenerator::addI64TruncSF32):
(JSC::Wasm::B3IRGenerator::addI64TruncUF32):
(JSC::Wasm::parseAndCompileB3):
(JSC::Wasm::computePCToCodeOriginMap):
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32DivS>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32RemS>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32DivU>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32RemU>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64DivS>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64RemS>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64DivU>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64RemU>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32Ctz>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64Ctz>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32Popcnt>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64Popcnt>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<F64ConvertUI64>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::F32ConvertUI64>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::F64Nearest>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::F32Nearest>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::F64Trunc>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::F32Trunc>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32TruncSF64>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32TruncSF32>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32TruncUF64>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32TruncUF32>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64TruncSF64>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64TruncUF64>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64TruncSF32>): Deleted.
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64TruncUF32>): Deleted.
* Source/JavaScriptCore/wasm/WasmBBQPlan.cpp:
(JSC::Wasm::BBQPlan::planGeneratesLoopOSREntrypoints):
(JSC::Wasm::BBQPlan::work):
(JSC::Wasm::BBQPlan::compileFunction):
* Source/JavaScriptCore/wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser<Context>::binaryCase):
(JSC::Wasm::FunctionParser<Context>::unaryCase):
(JSC::Wasm::FunctionParser<Context>::parseExpression):
(JSC::Wasm::FunctionParser::TypedExpression::TypedExpression): Deleted.
(JSC::Wasm::FunctionParser::TypedExpression::type const): Deleted.
(JSC::Wasm::FunctionParser::TypedExpression::value const): Deleted.
(JSC::Wasm::FunctionParser::TypedExpression::operator ExpressionType const): Deleted.
(JSC::Wasm::FunctionParser::TypedExpression::operator-> const): Deleted.
* Source/JavaScriptCore/wasm/WasmIRGeneratorHelpers.h:
(JSC::Wasm::emitCatchPrologueShared):
* Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp:
* Source/JavaScriptCore/wasm/WasmOpcodeOrigin.h:
(JSC::Wasm::OpcodeOrigin::opcode const):
(JSC::Wasm::OpcodeOrigin::location const):
* Source/JavaScriptCore/wasm/WasmOperations.cpp:
(JSC::Wasm::doOSREntry):
(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):
(JSC::Wasm::WasmOperationsInternal::retrieveAndClearExceptionIfCatchableImpl):
* Source/JavaScriptCore/wasm/WasmOperations.h:
* Source/JavaScriptCore/wasm/WasmSlowPaths.cpp:
(JSC::LLInt::slow_path_wasm_i32_div_s): Deleted.
(JSC::LLInt::slow_path_wasm_i32_div_u): Deleted.
(JSC::LLInt::slow_path_wasm_i32_rem_s): Deleted.
(JSC::LLInt::slow_path_wasm_i32_rem_u): Deleted.
(JSC::LLInt::slow_path_wasm_i64_div_s): Deleted.
(JSC::LLInt::slow_path_wasm_i64_div_u): Deleted.
(JSC::LLInt::slow_path_wasm_i64_rem_s): Deleted.
(JSC::LLInt::slow_path_wasm_i64_rem_u): Deleted.
* Source/JavaScriptCore/wasm/WasmSlowPaths.h:
* Source/JavaScriptCore/wasm/generateWasmB3IRGeneratorInlinesHeader.py:
* Source/JavaScriptCore/wasm/generateWasmOpsHeader.py:
* Source/JavaScriptCore/wasm/js/WebAssemblyFunction.cpp:
(JSC::WebAssemblyFunction::calleeSaves const):
* Source/WTF/wtf/PlatformEnable.h:
* Tools/Scripts/run-jsc-stress-tests:

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




More information about the webkit-changes mailing list