Timeline



Oct 22, 2019:

10:16 PM Changeset in webkit [251475] by ysuzuki@apple.com
  • 8 edits in trunk/Source

Make JSGlobalObject* threading change more stabilized by adding tests and assertions
https://bugs.webkit.org/show_bug.cgi?id=203274

Reviewed by Saam Barati.

Source/JavaScriptCore:

This patch does some follow-up changes after r251425.

  1. Add tests that tests vm.topCallFrame from C++ world to ensure that vm.topCallFrame is kept nullptr if it is accessed from C++ world even after executing some scripts.
  2. Add assertion to ensure that DECLARE_CALL_FRAME is only called in JIT operation's prologue.
  3. Remove some of ExecState::deprecatedVM call.
  4. Define USE(BUILTIN_FRAME_ADDRESS) when using builtin_frame_address to get CallFrame.
  • API/tests/testapi.cpp:

(TestAPI::topCallFrameAccess):
(testCAPIViaCpp):

  • interpreter/CallFrame.cpp:

(JSC::isFromJSCode):

  • interpreter/CallFrame.h:
  • jit/CCallHelpers.h:

(JSC::CCallHelpers::prepareCallOperation):

  • tools/VMInspector.cpp:

(JSC::VMInspector::dumpRegisters):

Source/WTF:

  • wtf/Platform.h:
8:51 PM Changeset in webkit [251474] by Simon Fraser
  • 9 edits in trunk

wpt/css/css-images/gradient/color-stops-parsing.html fails
https://bugs.webkit.org/show_bug.cgi?id=200211

Reviewed by Dean Jackson.
LayoutTests/imported/w3c:

New result.

  • web-platform-tests/css/css-images/gradient/color-stops-parsing-expected.txt:

Source/WebCore:

CSS gradients allow a single color stop to have multiple positions. In this case
we need to copy the color from the first to subsequent stops.

Tested by web-platform-tests/css/css-images/gradient/color-stops-parsing.html
and imported/w3c/web-platform-tests/css/css-images/multiple-position-color-stop-conic.html.

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::gradientWithStylesResolved): Copy colors to subsequent stops.

  • css/parser/CSSPropertyParserHelpers.cpp:

(WebCore::CSSPropertyParserHelpers::consumeGradientColorStops): Fix the parsing of
stops with multiple positions.

LayoutTests:

Mark the conic gradient test as skipped, then passing on Mojave+.

8:27 PM Changeset in webkit [251473] by Kocsen Chung
  • 7 edits in trunk/Source

Versioning.

8:16 PM Changeset in webkit [251472] by Kocsen Chung
  • 1 copy in tags/Safari-609.1.8

Tag Safari-609.1.8.

8:06 PM Changeset in webkit [251471] by ysuzuki@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, WinCairo build fix after r251468
https://bugs.webkit.org/show_bug.cgi?id=203276

  • jit/JIT.h:
7:37 PM Changeset in webkit [251470] by Fujii Hironori
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix for non-unified source builds
https://bugs.webkit.org/show_bug.cgi?id=203055
<rdar://problem/56504295>

  • WebProcess/Storage/WebServiceWorkerProvider.cpp: Added #include <WebCore/RuntimeEnabledFeatures.h>.
7:34 PM Changeset in webkit [251469] by jdiggs@igalia.com
  • 18 edits in trunk

AX: Implement support for new ARIA roles: code, strong, emphasis, generic
https://bugs.webkit.org/show_bug.cgi?id=203257

Reviewed by Chris Fleizach.

Source/WebCore:

Create new internal AccessibilityRole types for the new roles.
Treat code, strong, and emphasis as internal format style groups,
which are equivalent to their corresponding HTML elements.

No new tests. Instead, added new roles to existing tests and updated
expectations.

  • accessibility/AccessibilityObject.cpp:

(WebCore::initializeRoleMap):
(WebCore::AccessibilityObject::isStyleFormatGroup const):

  • accessibility/AccessibilityObjectInterface.h:
  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • accessibility/atk/WebKitAccessible.cpp:

(atkRole):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(createAccessibilityRoleMap):
(-[WebAccessibilityObjectWrapper subrole]):

LayoutTests:

Add new roles to existing role-related tests and update expectations.

  • accessibility/gtk/xml-roles-exposed-expected.txt:
  • accessibility/gtk/xml-roles-exposed.html:
  • accessibility/roles-computedRoleString.html:
  • accessibility/roles-exposed.html:
  • platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt:
  • platform/gtk/accessibility/roles-computedRoleString-expected.txt:
  • platform/gtk/accessibility/roles-exposed-expected.txt:
  • platform/mac-wk2/accessibility/roles-exposed-expected.txt:
  • platform/mac/accessibility/roles-computedRoleString-expected.txt:
  • platform/mac/accessibility/roles-exposed-expected.txt:
5:55 PM Changeset in webkit [251468] by keith_miller@apple.com
  • 113 edits
    2 adds in trunk/Source/JavaScriptCore

BytecodeIndex should be a proper C++ class
https://bugs.webkit.org/show_bug.cgi?id=203276

Reviewed by Mark Lam.

This patch makes a change to how we refer to the bytecode index in
a bytecode stream. Previously we just used an unsigned number to
represent the index, this patch changes most of the code to use a
BytecodeIndex class instead. The only places where this patch does
not change this is for jump and switch targets / deltas.

Additionally, this patch attempts to canonicalize the terminology
around how we refer to bytecode indices. Now we use the word index
to refer to the bytecode index class and offset to refer to the
unsigned byte offset into the instruction stream.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Sources.txt:
  • bytecode/ByValInfo.h:

(JSC::ByValInfo::ByValInfo):
(JSC::getByValInfoBytecodeIndex):

  • bytecode/BytecodeBasicBlock.cpp:

(JSC::BytecodeBasicBlock::computeImpl):

  • bytecode/BytecodeGeneratorification.cpp:

(JSC::GeneratorLivenessAnalysis::run):

  • bytecode/BytecodeIndex.cpp: Added.

(JSC::BytecodeIndex::dump const):

  • bytecode/BytecodeIndex.h: Added.

(JSC::BytecodeIndex::BytecodeIndex):
(JSC::BytecodeIndex::offset const):
(JSC::BytecodeIndex::asBits const):
(JSC::BytecodeIndex::hash const):
(JSC::BytecodeIndex::deletedValue):
(JSC::BytecodeIndex::isHashTableDeletedValue const):
(JSC::BytecodeIndex::operator bool const):
(JSC::BytecodeIndex::operator == const):
(JSC::BytecodeIndex::operator != const):
(JSC::BytecodeIndex::operator < const):
(JSC::BytecodeIndex::operator > const):
(JSC::BytecodeIndex::operator <= const):
(JSC::BytecodeIndex::operator >= const):
(JSC::BytecodeIndex::fromBits):
(JSC::BytecodeIndexHash::hash):
(JSC::BytecodeIndexHash::equal):

  • bytecode/BytecodeLivenessAnalysis.cpp:

(JSC::BytecodeLivenessAnalysis::getLivenessInfoAtBytecodeIndex):
(JSC::BytecodeLivenessAnalysis::computeFullLiveness):
(JSC::BytecodeLivenessAnalysis::computeKills):
(JSC::BytecodeLivenessAnalysis::dumpResults):
(JSC::BytecodeLivenessAnalysis::getLivenessInfoAtBytecodeOffset): Deleted.

  • bytecode/BytecodeLivenessAnalysis.h:
  • bytecode/BytecodeLivenessAnalysisInlines.h:

(JSC::BytecodeLivenessPropagation::stepOverInstruction):
(JSC::BytecodeLivenessPropagation::computeLocalLivenessForBytecodeIndex):
(JSC::BytecodeLivenessPropagation::computeLocalLivenessForBlock):
(JSC::BytecodeLivenessPropagation::getLivenessInfoAtBytecodeIndex):
(JSC::BytecodeLivenessPropagation::computeLocalLivenessForBytecodeOffset): Deleted.
(JSC::BytecodeLivenessPropagation::getLivenessInfoAtBytecodeOffset): Deleted.

  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeIndex):
(JSC::computeDefsForBytecodeIndex):
(JSC::computeUsesForBytecodeOffset): Deleted.
(JSC::computeDefsForBytecodeOffset): Deleted.

  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFromLLInt):
(JSC::CallLinkStatus::computeFor):
(JSC::CallLinkStatus::computeExitSiteData):

  • bytecode/CallLinkStatus.h:
  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::getCallLinkInfoForBytecodeIndex):
(JSC::CodeBlock::addRareCaseProfile):
(JSC::CodeBlock::rareCaseProfileForBytecodeIndex):
(JSC::CodeBlock::rareCaseProfileCountForBytecodeIndex):
(JSC::CodeBlock::handlerForBytecodeIndex):
(JSC::CodeBlock::ensureCatchLivenessIsComputedForBytecodeIndex):
(JSC::CodeBlock::ensureCatchLivenessIsComputedForBytecodeIndexSlow):
(JSC::CodeBlock::lineNumberForBytecodeIndex):
(JSC::CodeBlock::columnNumberForBytecodeIndex):
(JSC::CodeBlock::expressionRangeForBytecodeIndex const):
(JSC::CodeBlock::hasOpDebugForLineAndColumn):
(JSC::CodeBlock::getArrayProfile):
(JSC::CodeBlock::tryGetValueProfileForBytecodeIndex):
(JSC::CodeBlock::valueProfilePredictionForBytecodeIndex):
(JSC::CodeBlock::valueProfileForBytecodeIndex):
(JSC::CodeBlock::validate):
(JSC::CodeBlock::arithProfileForBytecodeIndex):
(JSC::CodeBlock::couldTakeSpecialArithFastCase):
(JSC::CodeBlock::bytecodeIndexFromCallSiteIndex):
(JSC::CodeBlock::rareCaseProfileForBytecodeOffset): Deleted.
(JSC::CodeBlock::rareCaseProfileCountForBytecodeOffset): Deleted.
(JSC::CodeBlock::handlerForBytecodeOffset): Deleted.
(JSC::CodeBlock::ensureCatchLivenessIsComputedForBytecodeOffset): Deleted.
(JSC::CodeBlock::ensureCatchLivenessIsComputedForBytecodeOffsetSlow): Deleted.
(JSC::CodeBlock::lineNumberForBytecodeOffset): Deleted.
(JSC::CodeBlock::columnNumberForBytecodeOffset): Deleted.
(JSC::CodeBlock::expressionRangeForBytecodeOffset const): Deleted.
(JSC::CodeBlock::tryGetValueProfileForBytecodeOffset): Deleted.
(JSC::CodeBlock::valueProfilePredictionForBytecodeOffset): Deleted.
(JSC::CodeBlock::valueProfileForBytecodeOffset): Deleted.
(JSC::CodeBlock::arithProfileForBytecodeOffset): Deleted.
(JSC::CodeBlock::couldTakeSpecialFastCase): Deleted.
(JSC::CodeBlock::bytecodeOffsetFromCallSiteIndex): Deleted.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::likelyToTakeSlowCase):
(JSC::CodeBlock::couldTakeSlowCase):
(JSC::CodeBlock::bytecodeIndex):

  • bytecode/CodeOrigin.cpp:

(JSC::CodeOrigin::approximateHash const):
(JSC::CodeOrigin::dump const):

  • bytecode/CodeOrigin.h:

(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::isSet const):
(JSC::CodeOrigin::isHashTableDeletedValue const):
(JSC::CodeOrigin::bytecodeIndex const):
(JSC::CodeOrigin::OutOfLineCodeOrigin::OutOfLineCodeOrigin):
(JSC::CodeOrigin::buildCompositeValue):
(JSC::CodeOrigin::hash const):

  • bytecode/DFGExitProfile.cpp:

(JSC::DFG::FrequentExitSite::dump const):
(JSC::DFG::ExitProfile::exitSitesFor):

  • bytecode/DFGExitProfile.h:

(JSC::DFG::FrequentExitSite::FrequentExitSite):
(JSC::DFG::FrequentExitSite::operator== const):
(JSC::DFG::FrequentExitSite::subsumes const):
(JSC::DFG::FrequentExitSite::hash const):
(JSC::DFG::FrequentExitSite::bytecodeIndex const):
(JSC::DFG::FrequentExitSite::isHashTableDeletedValue const):
(JSC::DFG::QueryableExitProfile::hasExitSite const):
(JSC::DFG::FrequentExitSite::bytecodeOffset const): Deleted.

  • bytecode/DeferredSourceDump.cpp:

(JSC::DeferredSourceDump::DeferredSourceDump):
(JSC::DeferredSourceDump::dump):

  • bytecode/DeferredSourceDump.h:

(): Deleted.

  • bytecode/FullBytecodeLiveness.h:

(JSC::FullBytecodeLiveness::getLiveness const):
(JSC::FullBytecodeLiveness::operandIsLive const):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeFor):
(JSC::GetByIdStatus::computeForStubInfo):

  • bytecode/GetByIdStatus.h:
  • bytecode/ICStatusUtils.cpp:

(JSC::hasBadCacheExitSite):

  • bytecode/ICStatusUtils.h:
  • bytecode/InByIdStatus.cpp:

(JSC::InByIdStatus::computeFor):

  • bytecode/InByIdStatus.h:
  • bytecode/InlineCallFrame.cpp:

(JSC::InlineCallFrame::dumpInContext const):

  • bytecode/InstanceOfStatus.cpp:

(JSC::InstanceOfStatus::computeFor):

  • bytecode/InstanceOfStatus.h:
  • bytecode/InstructionStream.h:

(JSC::InstructionStream::BaseRef::offset const):
(JSC::InstructionStream::BaseRef::index const):
(JSC::InstructionStream::at const):

  • bytecode/LazyOperandValueProfile.h:

(JSC::LazyOperandValueProfileKey::LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::operator== const):
(JSC::LazyOperandValueProfileKey::hash const):
(JSC::LazyOperandValueProfileKey::bytecodeIndex const):
(JSC::LazyOperandValueProfileKey::isHashTableDeletedValue const):
(JSC::LazyOperandValueProfileKey::bytecodeOffset const): Deleted.

  • bytecode/MethodOfGettingAValueProfile.cpp:

(JSC::MethodOfGettingAValueProfile::fromLazyOperand):

  • bytecode/MethodOfGettingAValueProfile.h:
  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFromLLInt):
(JSC::PutByIdStatus::computeFor):

  • bytecode/PutByIdStatus.h:
  • bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::StructureStubInfo):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::lineNumberForBytecodeIndex):
(JSC::UnlinkedCodeBlock::expressionRangeForBytecodeIndex const):
(JSC::UnlinkedCodeBlock::handlerForBytecodeIndex):
(JSC::UnlinkedCodeBlock::lineNumberForBytecodeOffset): Deleted.
(JSC::UnlinkedCodeBlock::expressionRangeForBytecodeOffset const): Deleted.
(JSC::UnlinkedCodeBlock::handlerForBytecodeOffset): Deleted.

  • bytecode/UnlinkedCodeBlock.h:
  • bytecode/ValueProfile.h:

(JSC::RareCaseProfile::RareCaseProfile):
(JSC::getRareCaseProfileBytecodeIndex):
(JSC::getRareCaseProfileBytecodeOffset): Deleted.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::ForInContext::finalize):

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::currentPosition):

  • dfg/DFGBasicBlock.cpp:

(JSC::DFG::BasicBlock::BasicBlock):

  • dfg/DFGBasicBlock.h:

(JSC::DFG::getBytecodeBeginForBlock):
(JSC::DFG::blockForBytecodeIndex):
(JSC::DFG::blockForBytecodeOffset): Deleted.

  • dfg/DFGBlockInsertionSet.cpp:

(JSC::DFG::BlockInsertionSet::insert):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::flushForTerminalImpl):
(JSC::DFG::ByteCodeParser::flushIfTerminal):
(JSC::DFG::ByteCodeParser::branchData):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::getArrayMode):
(JSC::DFG::ByteCodeParser::makeSafe):
(JSC::DFG::ByteCodeParser::makeDivSafe):
(JSC::DFG::ByteCodeParser::allocateTargetableBlock):
(JSC::DFG::ByteCodeParser::allocateUntargetableBlock):
(JSC::DFG::ByteCodeParser::makeBlockTargetable):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleRecursiveTailCall):
(JSC::DFG::ByteCodeParser::inlineCall):
(JSC::DFG::ByteCodeParser::handleCallVariant):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::linkBlock):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGCommonData.cpp:

(JSC::DFG::CommonData::addCodeOrigin):
(JSC::DFG::CommonData::addUniqueCallSiteIndex):
(JSC::DFG::CommonData::lastCallSite const):

  • dfg/DFGCommonData.h:

(JSC::DFG::CommonData::catchOSREntryDataForBytecodeIndex):
(JSC::DFG::CommonData::appendCatchEntrypoint):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compileImpl):
(JSC::DFG::compile):

  • dfg/DFGDriver.h:
  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::methodOfGettingAValueProfileFor):
(JSC::DFG::Graph::willCatchExceptionInMachineFrame):

  • dfg/DFGGraph.h:
  • dfg/DFGJITCode.cpp:

(JSC::DFG::JITCode::clearOSREntryBlockAndResetThresholds):

  • dfg/DFGJITCode.h:

(JSC::DFG::JITCode::appendOSREntryData):
(JSC::DFG::JITCode::osrEntryDataForBytecodeIndex):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::JITCompiler):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::setStartOfCode):

  • dfg/DFGLiveCatchVariablePreservationPhase.cpp:

(JSC::DFG::LiveCatchVariablePreservationPhase::handleBlockForTryCatch):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::OSREntryData::dumpInContext const):
(JSC::DFG::prepareOSREntry):
(JSC::DFG::prepareCatchOSREntry):

  • dfg/DFGOSREntry.h:

(JSC::DFG::getOSREntryDataBytecodeIndex):
(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSREntrypointCreationPhase.cpp:

(JSC::DFG::OSREntrypointCreationPhase::run):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::executeOSRExit):
(JSC::DFG::reifyInlinedCallFrames):
(JSC::DFG::adjustAndJumpToTarget):
(JSC::DFG::printOSRExit):
(JSC::DFG::OSRExit::compileExit):
(JSC::DFG::OSRExit::debugOperationPrintSpeculationFailure):

  • dfg/DFGOSRExit.h:
  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::callerReturnPC):
(JSC::DFG::reifyInlinedCallFrames):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGOSRExitCompilerCommon.h:
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::Plan):
(JSC::DFG::Plan::compileInThreadImpl):
(JSC::DFG::Plan::cleanMustHandleValuesIfNecessary):

  • dfg/DFGPlan.h:

(JSC::DFG::Plan::osrEntryBytecodeIndex const):
(JSC::DFG::Plan::tierUpInLoopHierarchy):
(JSC::DFG::Plan::tierUpAndOSREnterBytecodes):

  • dfg/DFGSSAConversionPhase.cpp:

(JSC::DFG::SSAConversionPhase::run):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compileValueAdd):
(JSC::DFG::SpeculativeJIT::compileValueSub):
(JSC::DFG::SpeculativeJIT::compileValueNegate):
(JSC::DFG::SpeculativeJIT::compileValueMul):
(JSC::DFG::SpeculativeJIT::emitSwitchCharStringJump):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGTierUpCheckInjectionPhase.cpp:

(JSC::DFG::TierUpCheckInjectionPhase::run):
(JSC::DFG::TierUpCheckInjectionPhase::buildNaturalLoopToLoopHintMap):

  • dfg/DFGToFTLForOSREntryDeferredCompilationCallback.cpp:

(JSC::DFG::ToFTLForOSREntryDeferredCompilationCallback::compilationDidComplete):

  • dfg/DFGValidate.cpp:
  • ftl/FTLCompile.cpp:

(JSC::FTL::compile):

  • ftl/FTLForOSREntryJITCode.h:

(JSC::FTL::ForOSREntryJITCode::setBytecodeIndex):
(JSC::FTL::ForOSREntryJITCode::bytecodeIndex const):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::lower):
(JSC::FTL::DFG::LowerDFGToB3::compileValueAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileValueSub):
(JSC::FTL::DFG::LowerDFGToB3::compileValueMul):
(JSC::FTL::DFG::LowerDFGToB3::compileArithAddOrSub):
(JSC::FTL::DFG::LowerDFGToB3::compileValueNegate):

  • ftl/FTLOSREntry.cpp:

(JSC::FTL::prepareOSREntry):

  • ftl/FTLOSREntry.h:
  • interpreter/CallFrame.cpp:

(JSC::CallFrame::callSiteIndex const):
(JSC::CallFrame::unsafeCallSiteIndex const):
(JSC::CallFrame::setCurrentVPC):
(JSC::CallFrame::bytecodeIndex):
(JSC::CallFrame::codeOrigin):
(JSC::CallFrame::dump):
(JSC::CallFrame::bytecodeOffset): Deleted.

  • interpreter/CallFrame.h:

(JSC::CallSiteIndex::CallSiteIndex):
(JSC::CallSiteIndex::operator bool const):
(JSC::CallSiteIndex::operator== const):
(JSC::CallSiteIndex::bits const):
(JSC::CallSiteIndex::bytecodeIndex const):
(JSC::DisposableCallSiteIndex::DisposableCallSiteIndex):
(): Deleted.

  • interpreter/Interpreter.cpp:

(JSC::GetStackTraceFunctor::operator() const):
(JSC::findExceptionHandler):

  • interpreter/ShadowChicken.cpp:

(JSC::ShadowChicken::update):

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::readNonInlinedFrame):
(JSC::StackVisitor::readInlinedFrame):
(JSC::StackVisitor::Frame::retrieveExpressionInfo const):
(JSC::StackVisitor::Frame::dump const):

  • interpreter/StackVisitor.h:

(JSC::StackVisitor::Frame::bytecodeIndex const):
(JSC::StackVisitor::Frame::bytecodeOffset const): Deleted.

  • jit/JIT.cpp:

(JSC::JIT::JIT):
(JSC::JIT::emitEnterOptimizationCheck):
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::compileWithoutLinking):
(JSC::JIT::link):
(JSC::JIT::privateCompileExceptionHandlers):

  • jit/JIT.h:

(JSC::CallRecord::CallRecord):
(JSC::SlowCaseEntry::SlowCaseEntry):
(JSC::SwitchRecord::SwitchRecord):
(JSC::ByValCompilationInfo::ByValCompilationInfo):

  • jit/JITCall.cpp:

(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCall):

  • jit/JITCodeMap.h:

(JSC::JITCodeMap::Entry::Entry):
(JSC::JITCodeMap::Entry::bytecodeIndex const):
(JSC::JITCodeMap::append):
(JSC::JITCodeMap::find const):

  • jit/JITDisassembler.cpp:

(JSC::JITDisassembler::dumpVectorForInstructions):
(JSC::JITDisassembler::reportInstructions):

  • jit/JITDisassembler.h:
  • jit/JITInlines.h:

(JSC::JIT::emitNakedCall):
(JSC::JIT::emitNakedTailCall):
(JSC::JIT::updateTopCallFrame):
(JSC::JIT::linkAllSlowCasesForBytecodeIndex):
(JSC::JIT::addSlowCase):
(JSC::JIT::addJump):
(JSC::JIT::emitJumpSlowToHot):
(JSC::JIT::emitGetVirtualRegister):
(JSC::JIT::linkAllSlowCasesForBytecodeOffset): Deleted.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_instanceof):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::emit_op_has_indexed_property):
(JSC::JIT::emit_op_log_shadow_chicken_tail):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_instanceof):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::emit_op_has_indexed_property):

  • jit/JITOperations.cpp:

(JSC::getByVal):
(JSC::tryGetByValOptimize):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::emitPutByValWithCachedId):
(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):

  • jit/JITWorklist.cpp:

(JSC::JITWorklist::Plan::Plan):
(JSC::JITWorklist::Plan::compileNow):
(JSC::JITWorklist::compileLater):
(JSC::JITWorklist::compileNow):

  • jit/JITWorklist.h:
  • jit/PCToCodeOriginMap.cpp:

(JSC::PCToCodeOriginMap::PCToCodeOriginMap):
(JSC::PCToCodeOriginMap::findPC const):

  • jit/PCToCodeOriginMap.h:

(JSC::PCToCodeOriginMapBuilder::defaultCodeOrigin):

  • jit/SlowPathCall.h:

(JSC::JITSlowPathCall::call):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • profiler/ProfilerOrigin.cpp:

(JSC::Profiler::Origin::Origin):
(JSC::Profiler::Origin::dump const):
(JSC::Profiler::Origin::toJS const):

  • profiler/ProfilerOrigin.h:

(JSC::Profiler::Origin::Origin):
(JSC::Profiler::Origin::operator! const):
(JSC::Profiler::Origin::bytecodeIndex const):
(JSC::Profiler::Origin::hash const):
(JSC::Profiler::Origin::isHashTableDeletedValue const):

  • runtime/Error.cpp:

(JSC::getBytecodeIndex):
(JSC::getBytecodeOffset): Deleted.

  • runtime/Error.h:
  • runtime/ErrorInstance.cpp:

(JSC::appendSourceToError):
(JSC::ErrorInstance::finishCreation):

  • runtime/SamplingProfiler.cpp:

(JSC::tryGetBytecodeIndex):
(JSC::SamplingProfiler::processUnverifiedStackTraces):
(JSC::SamplingProfiler::reportTopBytecodes):

  • runtime/SamplingProfiler.h:

(JSC::SamplingProfiler::StackFrame::CodeLocation::hasBytecodeIndex const):

  • runtime/StackFrame.cpp:

(JSC::StackFrame::StackFrame):
(JSC::StackFrame::computeLineAndColumn const):

  • runtime/StackFrame.h:

(JSC::StackFrame::hasBytecodeIndex const):
(JSC::StackFrame::bytecodeIndex):
(JSC::StackFrame::hasBytecodeOffset const): Deleted.
(JSC::StackFrame::bytecodeOffset): Deleted.

  • tools/VMInspector.cpp:

(JSC::VMInspector::dumpRegisters):

5:54 PM Changeset in webkit [251467] by wilander@apple.com
  • 13 edits
    4 moves in trunk

Resource Load Statistics (experimental): Block all third-party cookies
https://bugs.webkit.org/show_bug.cgi?id=203266
<rdar://problem/56512858>

Reviewed by Alex Christensen.

This change updates the experimental change in
<https://trac.webkit.org/changeset/251213> to block all
third-party cookies, regardless of user interaction with
the first-party website.

Source/WebCore:

Tests: http/tests/resourceLoadStatistics/third-party-cookie-blocking-database.html

http/tests/resourceLoadStatistics/third-party-cookie-blocking.html

  • page/Settings.yaml:
  • platform/network/NetworkStorageSession.cpp:

(WebCore::NetworkStorageSession::shouldBlockCookies const):

  • platform/network/NetworkStorageSession.h:

(WebCore::NetworkStorageSession::setIsThirdPartyCookieBlockingEnabled):
(WebCore::NetworkStorageSession::setIsThirdPartyCookieBlockingOnSitesWithoutUserInteractionEnabled): Deleted.

Source/WebKit:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::setShouldBlockThirdPartyCookiesForTesting):

  • NetworkProcess/NetworkSessionCreationParameters.cpp:

(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):

  • NetworkProcess/NetworkSessionCreationParameters.h:
  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):

  • Shared/WebPreferences.yaml:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::ensureNetworkProcess):

  • UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:

(WebKit::WebsiteDataStore::parameters):

LayoutTests:

  • http/tests/resourceLoadStatistics/third-party-cookie-blocking-database-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-expected.txt.
  • http/tests/resourceLoadStatistics/third-party-cookie-blocking-database.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html.
  • http/tests/resourceLoadStatistics/third-party-cookie-blocking-expected.txt: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database-expected.txt.
  • http/tests/resourceLoadStatistics/third-party-cookie-blocking.html: Renamed from LayoutTests/http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html.
5:33 PM Changeset in webkit [251466] by Devin Rousso
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: Sources: keep the function/object name sticky in the object preview popover
https://bugs.webkit.org/show_bug.cgi?id=203259

Reviewed by Matt Baker.

  • UserInterface/Views/SourceCodeTextEditor.css:

(.popover .debugger-popover-content):
(.popover .debugger-popover-content.expandable): Added.
(.popover .debugger-popover-content > .title):
(.popover .debugger-popover-content > .body):
(.popover .debugger-popover-content.formatted): Added.
(.popover .expandable): Deleted.
Use flexbox to ensure that only the function/object body is scrollable.
Adjust the min/max width/height to take less space for smaller objects.

  • UserInterface/Views/SourceCodeTextEditor.js:

(WI.SourceCodeTextEditor.prototype._showPopoverWithFormattedValue):
Wrap formatted values in a <div> so we can apply special styling to them.

5:33 PM Changeset in webkit [251465] by Wenson Hsieh
  • 4 edits in trunk/LayoutTests

editing/pasteboard/paste-and-sanitize.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=203199
<rdar://problem/53551736>

Reviewed by Tim Horton.

Try to make this test more robust in WebKit2 on iOS 13 by ensuring at least one round trip between the web
content process and the UI process after copying and pasting. The root cause of the flakiness is still unknown,
but evidence suggests that code in Pasteboard.framework needs at least one runloop to sever the connection
between the application process and pasted after writing content to the pasteboard; otherwise, this
post-writing cleanup step will race against the next time we attempt to trigger a paste.

  • editing/pasteboard/paste-and-sanitize.html:
  • platform/ios-12/TestExpectations:
  • platform/ios/TestExpectations:

Remove the failing test expectations.

3:59 PM Changeset in webkit [251464] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit

Make it possible to not include IPC Messages headers in other headers
https://bugs.webkit.org/show_bug.cgi?id=203074

  • Scripts/webkit/messages_unittest.py:

(GeneratedFileContentsTest.assertHeaderEqual):
(GeneratedFileContentsTest.assertImplementationEqual):
(UnsupportedPrecompilerDirectiveTest.test_error_at_else):
(UnsupportedPrecompilerDirectiveTest.test_error_at_elif):
Fix the message generator unit tests.

3:46 PM Changeset in webkit [251463] by zhifei_fang@apple.com
  • 678 edits in trunk/JSTests

[JSC tests] Skip slow tests on Watch S3 and Watch S4
https://bugs.webkit.org/show_bug.cgi?id=203268

Reviewed by Saam Barati.

  • microbenchmarks/ArrayBuffer-DataView-alloc-large-long-lived.js:
  • microbenchmarks/ArrayBuffer-DataView-alloc-long-lived.js:
  • microbenchmarks/ArrayBuffer-Int32Array-byteOffset.js:
  • microbenchmarks/ArrayBuffer-Int8Array-alloc-large-long-lived.js:
  • microbenchmarks/ArrayBuffer-Int8Array-alloc-long-lived-buffer.js:
  • microbenchmarks/ArrayBuffer-Int8Array-alloc-long-lived.js:
  • microbenchmarks/ArrayBuffer-Int8Array-alloc.js:
  • microbenchmarks/DataView-custom-properties.js:
  • microbenchmarks/Float32Array-matrix-mult.js:
  • microbenchmarks/Float32Array-to-Float64Array-set.js:
  • microbenchmarks/Float64Array-alloc-long-lived.js:
  • microbenchmarks/Float64Array-to-Int16Array-set.js:
  • microbenchmarks/HashMap-put-get-iterate-keys.js:
  • microbenchmarks/HashMap-put-get-iterate.js:
  • microbenchmarks/HashMap-string-put-get-iterate.js:
  • microbenchmarks/Int16Array-alloc-long-lived.js:
  • microbenchmarks/Int16Array-bubble-sort-with-byteLength.js:
  • microbenchmarks/Int16Array-bubble-sort.js:
  • microbenchmarks/Int16Array-load-int-mul.js:
  • microbenchmarks/Int16Array-to-Int32Array-set.js:
  • microbenchmarks/Int32Array-Int8Array-view-alloc.js:
  • microbenchmarks/Int32Array-alloc-large.js:
  • microbenchmarks/Int32Array-alloc-long-lived.js:
  • microbenchmarks/Int32Array-alloc.js:
  • microbenchmarks/Int8Array-alloc-long-lived.js:
  • microbenchmarks/Int8Array-load-with-byteLength.js:
  • microbenchmarks/Int8Array-load.js:
  • microbenchmarks/JSONP-negative-0.js:
  • microbenchmarks/Number-isNaN.js:
  • microbenchmarks/abc-forward-loop-equal.js:
  • microbenchmarks/abc-postfix-backward-loop.js:
  • microbenchmarks/abc-simple-backward-loop.js:
  • microbenchmarks/abc-simple-forward-loop.js:
  • microbenchmarks/abc-skippy-loop.js:
  • microbenchmarks/abs-boolean.js:
  • microbenchmarks/adapt-to-double-divide.js:
  • microbenchmarks/add-tree.js:
  • microbenchmarks/aliased-arguments-getbyval.js:
  • microbenchmarks/allocate-big-object.js:
  • microbenchmarks/apply-not-apply.js:
  • microbenchmarks/arguments-named-and-reflective.js:
  • microbenchmarks/arguments-out-of-bounds.js:
  • microbenchmarks/arguments-strict-mode.js:
  • microbenchmarks/arguments.js:
  • microbenchmarks/arity-mismatch-inlining.js:
  • microbenchmarks/array-access-polymorphic-structure.js:
  • microbenchmarks/array-nonarray-polymorhpic-access.js:
  • microbenchmarks/array-prototype-every.js:
  • microbenchmarks/array-prototype-forEach.js:
  • microbenchmarks/array-prototype-join-uninitialized.js:
  • microbenchmarks/array-prototype-map.js:
  • microbenchmarks/array-prototype-reduce.js:
  • microbenchmarks/array-prototype-reduceRight.js:
  • microbenchmarks/array-prototype-some.js:
  • microbenchmarks/array-push-0.js:
  • microbenchmarks/array-push-1.js:
  • microbenchmarks/array-push-2.js:
  • microbenchmarks/array-splice-contiguous.js:
  • microbenchmarks/array-with-double-add.js:
  • microbenchmarks/array-with-double-increment.js:
  • microbenchmarks/array-with-double-mul-add.js:
  • microbenchmarks/array-with-double-sum.js:
  • microbenchmarks/array-with-int32-add-sub.js:
  • microbenchmarks/array-with-int32-or-double-sum.js:
  • microbenchmarks/arrowfunciton-direct-arguments.js:
  • microbenchmarks/arrowfunciton-reference-arguments.js:
  • microbenchmarks/arrowfunction-call-in-class-constructor.js:
  • microbenchmarks/arrowfunction-call-in-class-method.js:
  • microbenchmarks/arrowfunction-call-in-function.js:
  • microbenchmarks/arrowfunction-call.js:
  • microbenchmarks/asmjs_bool_bug.js:
  • microbenchmarks/assign-custom-setter-polymorphic.js:
  • microbenchmarks/assign-custom-setter.js:
  • microbenchmarks/basic-set.js:
  • microbenchmarks/big-int-mul.js:
  • microbenchmarks/bigswitch-indirect-symbol.js:
  • microbenchmarks/bigswitch-indirect.js:
  • microbenchmarks/bigswitch.js:
  • microbenchmarks/bit-or-tree.js:
  • microbenchmarks/bit-test-constant.js:
  • microbenchmarks/bit-test-load.js:
  • microbenchmarks/bit-test-nonconstant.js:
  • microbenchmarks/bit-xor-tree.js:
  • microbenchmarks/boolean-test.js:
  • microbenchmarks/bound-function-call.js:
  • microbenchmarks/bound-function-construction-performance.js:
  • microbenchmarks/branch-fold.js:
  • microbenchmarks/branch-on-string-as-boolean.js:
  • microbenchmarks/bug-153431.js:
  • microbenchmarks/build-large-object.js:
  • microbenchmarks/by-val-generic.js:
  • microbenchmarks/cache-get-variables-under-tdz-in-bytecode-generator.js:
  • microbenchmarks/call-or-not-call.js:
  • microbenchmarks/call-spread-apply.js:
  • microbenchmarks/call-spread-call.js:
  • microbenchmarks/call-using-spread.js:
  • microbenchmarks/captured-assignments.js:
  • microbenchmarks/cast-int-to-double.js:
  • microbenchmarks/cell-argument.js:
  • microbenchmarks/cfg-simplify.js:
  • microbenchmarks/chain-getter-access.js:
  • microbenchmarks/check-mul-constant.js:
  • microbenchmarks/check-mul-no-constant.js:
  • microbenchmarks/check-mul-power-of-two.js:
  • microbenchmarks/cmpeq-obj-to-obj-other.js:
  • microbenchmarks/concat-append-one.js:
  • microbenchmarks/constant-fold-check-type-info-flags.js:
  • microbenchmarks/constant-test.js:
  • microbenchmarks/construct-poly-proto-object.js:
  • microbenchmarks/contiguous-array-to-string.js:
  • microbenchmarks/create-lots-of-functions.js:
  • microbenchmarks/create-many-weak-map.js:
  • microbenchmarks/cse-new-array-buffer.js:
  • microbenchmarks/cse-new-array.js:
  • microbenchmarks/custom-accessor-materialized.js:
  • microbenchmarks/custom-accessor-thin-air.js:
  • microbenchmarks/custom-accessor.js:
  • microbenchmarks/custom-setter-getter-as-put-get-by-id.js:
  • microbenchmarks/custom-value-2.js:
  • microbenchmarks/custom-value.js:
  • microbenchmarks/data-view-accesses-2.js:
  • microbenchmarks/data-view-accesses.js:
  • microbenchmarks/dataview-cse.js:
  • microbenchmarks/delay-tear-off-arguments-strictmode.js:
  • microbenchmarks/delta-blue-try-catch.js:
  • microbenchmarks/deltablue-for-of.js:
  • microbenchmarks/deltablue-varargs.js:
  • microbenchmarks/destructuring-arguments.js:
  • microbenchmarks/destructuring-parameters-overridden-by-function.js:
  • microbenchmarks/destructuring-swap.js:
  • microbenchmarks/dfg-internal-function-call.js:
  • microbenchmarks/dfg-internal-function-construct.js:
  • microbenchmarks/dfg-internal-function-not-handled-call.js:
  • microbenchmarks/dfg-internal-function-not-handled-construct.js:
  • microbenchmarks/direct-arguments-getbyval.js:
  • microbenchmarks/direct-arguments-length.js:
  • microbenchmarks/direct-arguments-overridden-length.js:
  • microbenchmarks/direct-arguments-possibly-overridden-length.js:
  • microbenchmarks/direct-call-arity-mismatch.js:
  • microbenchmarks/direct-call.js:
  • microbenchmarks/direct-construct-arity-mismatch.js:
  • microbenchmarks/direct-construct.js:
  • microbenchmarks/direct-tail-call-arity-mismatch.js:
  • microbenchmarks/direct-tail-call-inlined-caller-arity-mismatch.js:
  • microbenchmarks/direct-tail-call-inlined-caller.js:
  • microbenchmarks/direct-tail-call.js:
  • microbenchmarks/div-boolean-double.js:
  • microbenchmarks/div-boolean.js:
  • microbenchmarks/dont-confuse-structures-from-different-executable-as-poly-proto.js:
  • microbenchmarks/double-array-to-string.js:
  • microbenchmarks/double-get-by-val-out-of-bounds.js:
  • microbenchmarks/double-pollution-getbyval.js:
  • microbenchmarks/double-pollution-putbyoffset.js:
  • microbenchmarks/double-real-use.js:
  • microbenchmarks/double-to-int32-typed-array-no-inline.js:
  • microbenchmarks/double-to-int32-typed-array.js:
  • microbenchmarks/double-to-uint32-typed-array-no-inline.js:
  • microbenchmarks/double-to-uint32-typed-array.js:
  • microbenchmarks/elidable-new-object-dag.js:
  • microbenchmarks/elidable-new-object-roflcopter.js:
  • microbenchmarks/elidable-new-object-then-call.js:
  • microbenchmarks/elidable-new-object-tree.js:
  • microbenchmarks/empty-string-plus-int.js:
  • microbenchmarks/emscripten-cube2hash.js:
  • microbenchmarks/eval-cached.js:
  • microbenchmarks/eval-code-ftl-reentry.js:
  • microbenchmarks/eval-code-ftl.js:
  • microbenchmarks/eval-compute.js:
  • microbenchmarks/eval-not-eval-compute-args.js:
  • microbenchmarks/eval-not-eval-compute.js:
  • microbenchmarks/exit-length-on-plain-object.js:
  • microbenchmarks/external-arguments-getbyval.js:
  • microbenchmarks/external-arguments-putbyval.js:
  • microbenchmarks/fixed-typed-array-storage-var-index.js:
  • microbenchmarks/fixed-typed-array-storage.js:
  • microbenchmarks/fold-double-to-int.js:
  • microbenchmarks/fold-get-by-id-to-multi-get-by-offset-rare-int.js:
  • microbenchmarks/fold-get-by-id-to-multi-get-by-offset.js:
  • microbenchmarks/fold-multi-get-by-offset-to-get-by-offset.js:
  • microbenchmarks/fold-multi-get-by-offset-to-poly-get-by-offset.js:
  • microbenchmarks/fold-multi-put-by-offset-to-poly-put-by-offset.js:
  • microbenchmarks/fold-multi-put-by-offset-to-put-by-offset.js:
  • microbenchmarks/fold-multi-put-by-offset-to-replace-or-transition-put-by-offset.js:
  • microbenchmarks/fold-put-by-id-to-multi-put-by-offset.js:
  • microbenchmarks/fold-put-by-val-with-string-to-multi-put-by-offset.js:
  • microbenchmarks/fold-put-by-val-with-symbol-to-multi-put-by-offset.js:
  • microbenchmarks/fold-put-structure.js:
  • microbenchmarks/for-in-on-object-with-lazily-materialized-properties.js:
  • microbenchmarks/for-of-array.js:
  • microbenchmarks/for-of-iterate-array-entries.js:
  • microbenchmarks/for-of-iterate-array-keys.js:
  • microbenchmarks/for-of-iterate-array-values.js:
  • microbenchmarks/forward-arguments-dont-escape-on-arguments-length.js:
  • microbenchmarks/freeze-and-do-work.js:
  • microbenchmarks/fround.js:
  • microbenchmarks/ftl-library-inlining-dataview.js:
  • microbenchmarks/ftl-library-inlining.js:
  • microbenchmarks/ftl-polymorphic-StringFromCharCode.js:
  • microbenchmarks/function-call.js:
  • microbenchmarks/function-dot-apply.js:
  • microbenchmarks/function-test.js:
  • microbenchmarks/function-with-eval.js:
  • microbenchmarks/gcse-poly-get-less-obvious.js:
  • microbenchmarks/gcse-poly-get.js:
  • microbenchmarks/gcse.js:
  • microbenchmarks/generate-multiple-llint-entrypoints.js:
  • microbenchmarks/generator-create.js:
  • microbenchmarks/generator-fib.js:
  • microbenchmarks/generator-function-create.js:
  • microbenchmarks/generator-sunspider-access-nsieve.js:
  • microbenchmarks/generator-with-several-types.js:
  • microbenchmarks/get-by-id-bimorphic-check-structure-elimination-simple.js:
  • microbenchmarks/get-by-id-bimorphic-check-structure-elimination.js:
  • microbenchmarks/get-by-id-chain-from-try-block.js:
  • microbenchmarks/get-by-id-check-structure-elimination.js:
  • microbenchmarks/get-by-id-proto-or-self.js:
  • microbenchmarks/get-by-id-quadmorphic-check-structure-elimination-simple.js:
  • microbenchmarks/get-by-id-self-or-proto.js:
  • microbenchmarks/get-by-val-negative-array-index.js:
  • microbenchmarks/get-by-val-out-of-bounds.js:
  • microbenchmarks/get-by-val-with-string-bimorphic-check-structure-elimination-simple.js:
  • microbenchmarks/get-by-val-with-string-bimorphic-check-structure-elimination.js:
  • microbenchmarks/get-by-val-with-string-chain-from-try-block.js:
  • microbenchmarks/get-by-val-with-string-check-structure-elimination.js:
  • microbenchmarks/get-by-val-with-string-proto-or-self.js:
  • microbenchmarks/get-by-val-with-string-quadmorphic-check-structure-elimination-simple.js:
  • microbenchmarks/get-by-val-with-string-self-or-proto.js:
  • microbenchmarks/get-by-val-with-symbol-bimorphic-check-structure-elimination-simple.js:
  • microbenchmarks/get-by-val-with-symbol-bimorphic-check-structure-elimination.js:
  • microbenchmarks/get-by-val-with-symbol-chain-from-try-block.js:
  • microbenchmarks/get-by-val-with-symbol-check-structure-elimination.js:
  • microbenchmarks/get-by-val-with-symbol-proto-or-self.js:
  • microbenchmarks/get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple.js:
  • microbenchmarks/get-by-val-with-symbol-self-or-proto.js:
  • microbenchmarks/get-custom-getter.js:
  • microbenchmarks/get_by_val-Int32Array.js:
  • microbenchmarks/get_callee_monomorphic.js:
  • microbenchmarks/get_callee_polymorphic.js:
  • microbenchmarks/getter-no-activation.js:
  • microbenchmarks/getter-prototype.js:
  • microbenchmarks/getter-richards-try-catch.js:
  • microbenchmarks/getter-richards.js:
  • microbenchmarks/getter.js:
  • microbenchmarks/global-code-ftl.js:
  • microbenchmarks/global-isNaN.js:
  • microbenchmarks/global-object-access-with-mutating-structure.js:
  • microbenchmarks/global-var-const-infer-fire-from-opt.js:
  • microbenchmarks/global-var-const-infer.js:
  • microbenchmarks/hard-overflow-check-equal.js:
  • microbenchmarks/hard-overflow-check.js:
  • microbenchmarks/has-own-property-name-cache.js:
  • microbenchmarks/hoist-get-by-offset-tower-with-inferred-types.js:
  • microbenchmarks/hoist-make-rope.js:
  • microbenchmarks/hoist-poly-check-structure-effectful-loop.js:
  • microbenchmarks/hoist-poly-check-structure.js:
  • microbenchmarks/implicit-bigswitch-indirect-symbol.js:
  • microbenchmarks/imul-double-only.js:
  • microbenchmarks/imul-int-only.js:
  • microbenchmarks/imul-mixed.js:
  • microbenchmarks/in-by-id-match.js:
  • microbenchmarks/in-by-id-removed.js:
  • microbenchmarks/in-four-cases.js:
  • microbenchmarks/in-one-case-false.js:
  • microbenchmarks/in-one-case-true.js:
  • microbenchmarks/in-two-cases.js:
  • microbenchmarks/indexed-properties-in-objects.js:
  • microbenchmarks/infer-closure-const-then-mov-no-inline.js:
  • microbenchmarks/infer-closure-const-then-mov.js:
  • microbenchmarks/infer-closure-const-then-put-to-scope-no-inline.js:
  • microbenchmarks/infer-closure-const-then-put-to-scope.js:
  • microbenchmarks/infer-closure-const-then-reenter-no-inline.js:
  • microbenchmarks/infer-closure-const-then-reenter.js:
  • microbenchmarks/infer-constant-global-property.js:
  • microbenchmarks/infer-constant-property.js:
  • microbenchmarks/infer-one-time-closure-ten-vars.js:
  • microbenchmarks/infer-one-time-closure-two-vars.js:
  • microbenchmarks/infer-one-time-closure.js:
  • microbenchmarks/infer-one-time-deep-closure.js:
  • microbenchmarks/inline-arguments-access.js:
  • microbenchmarks/inline-arguments-aliased-access.js:
  • microbenchmarks/inline-arguments-local-escape.js:
  • microbenchmarks/inline-get-scoped-var.js:
  • microbenchmarks/inlined-put-by-id-transition.js:
  • microbenchmarks/inlined-put-by-val-with-string-transition.js:
  • microbenchmarks/inlined-put-by-val-with-symbol-transition.js:
  • microbenchmarks/instanceof-always-hit-one.js:
  • microbenchmarks/instanceof-always-hit-two.js:
  • microbenchmarks/instanceof-bound.js:
  • microbenchmarks/instanceof-dynamic.js:
  • microbenchmarks/instanceof-sometimes-hit.js:
  • microbenchmarks/instanceof-tricky-dynamic.js:
  • microbenchmarks/int-or-other-abs-then-get-by-val.js:
  • microbenchmarks/int-or-other-abs-zero-then-get-by-val.js:
  • microbenchmarks/int-or-other-add-then-get-by-val.js:
  • microbenchmarks/int-or-other-add.js:
  • microbenchmarks/int-or-other-div-then-get-by-val.js:
  • microbenchmarks/int-or-other-max-then-get-by-val.js:
  • microbenchmarks/int-or-other-min-then-get-by-val.js:
  • microbenchmarks/int-or-other-mod-then-get-by-val.js:
  • microbenchmarks/int-or-other-mul-then-get-by-val.js:
  • microbenchmarks/int-or-other-neg-then-get-by-val.js:
  • microbenchmarks/int-or-other-neg-zero-then-get-by-val.js:
  • microbenchmarks/int-or-other-sub-then-get-by-val.js:
  • microbenchmarks/int-or-other-sub.js:
  • microbenchmarks/int-overflow-local.js:
  • microbenchmarks/int32-array-to-string.js:
  • microbenchmarks/int52-back-and-forth.js:
  • microbenchmarks/int52-rand-function.js:
  • microbenchmarks/int52-spill.js:
  • microbenchmarks/int8-out-of-bounds.js:
  • microbenchmarks/integer-divide.js:
  • microbenchmarks/integer-modulo.js:
  • microbenchmarks/is-array-for-array.js:
  • microbenchmarks/is-array-for-mixed-case.js:
  • microbenchmarks/is-array-for-non-array-object.js:
  • microbenchmarks/is-array-for-proxy.js:
  • microbenchmarks/is-boolean-fold-tricky.js:
  • microbenchmarks/is-boolean-fold.js:
  • microbenchmarks/is-function-fold-tricky-internal-function.js:
  • microbenchmarks/is-function-fold-tricky.js:
  • microbenchmarks/is-function-fold.js:
  • microbenchmarks/is-not-cell-speculation-for-empty-value.js:
  • microbenchmarks/is-number-fold-tricky.js:
  • microbenchmarks/is-number-fold.js:
  • microbenchmarks/is-object-or-null-fold-functions.js:
  • microbenchmarks/is-object-or-null-fold-less-tricky.js:
  • microbenchmarks/is-object-or-null-fold-tricky.js:
  • microbenchmarks/is-object-or-null-fold.js:
  • microbenchmarks/is-object-or-null-trickier-function.js:
  • microbenchmarks/is-object-or-null-trickier-internal-function.js:
  • microbenchmarks/is-object-or-null-tricky-function.js:
  • microbenchmarks/is-object-or-null-tricky-internal-function.js:
  • microbenchmarks/is-string-fold-tricky.js:
  • microbenchmarks/is-string-fold.js:
  • microbenchmarks/is-symbol-mixed.js:
  • microbenchmarks/is-symbol.js:
  • microbenchmarks/is-undefined-fold-tricky.js:
  • microbenchmarks/is-undefined-fold.js:
  • microbenchmarks/json-parse-array-reviver-same-value.js:
  • microbenchmarks/json-parse-array-reviver.js:
  • microbenchmarks/json-parse-object-reviver-same-value.js:
  • microbenchmarks/json-parse-object-reviver.js:
  • microbenchmarks/large-empty-array-join-resolve-rope.js:
  • microbenchmarks/large-empty-array-join.js:
  • microbenchmarks/large-int-captured.js:
  • microbenchmarks/large-int-neg.js:
  • microbenchmarks/large-int.js:
  • microbenchmarks/large-map-iteration.js:
  • microbenchmarks/lazy-array-species-watchpoints.js:
  • microbenchmarks/let-for-in.js:
  • microbenchmarks/licm-dragons-out-of-bounds.js:
  • microbenchmarks/licm-dragons-overflow.js:
  • microbenchmarks/licm-dragons-two-structures.js:
  • microbenchmarks/licm-dragons.js:
  • microbenchmarks/load-varargs-elimination.js:
  • microbenchmarks/locale-compare.js:
  • microbenchmarks/logical-not-weird-types.js:
  • microbenchmarks/logical-not.js:
  • microbenchmarks/loop-osr-with-arity-mismatch.js:
  • microbenchmarks/lots-of-fields.js:
  • microbenchmarks/make-indexed-storage.js:
  • microbenchmarks/make-rope-cse.js:
  • microbenchmarks/make-rope.js:
  • microbenchmarks/many-foreach-calls.js:
  • microbenchmarks/many-repeat-stores.js:
  • microbenchmarks/map-for-each.js:
  • microbenchmarks/map-for-of.js:
  • microbenchmarks/map-has-and-set.js:
  • microbenchmarks/map-has-get-cse-opportunity.js:
  • microbenchmarks/map-key-well-typed.js:
  • microbenchmarks/map-rehash.js:
  • microbenchmarks/marsaglia-larger-ints.js:
  • microbenchmarks/marsaglia-osr-entry.js:
  • microbenchmarks/math-random.js:
  • microbenchmarks/math-trunc.js:
  • microbenchmarks/math-with-out-of-bounds-array-values.js:
  • microbenchmarks/max-boolean.js:
  • microbenchmarks/megamorphic-load.js:
  • microbenchmarks/memcpy-loop.js:
  • microbenchmarks/memcpy-typed-loop-large.js:
  • microbenchmarks/memcpy-typed-loop-small.js:
  • microbenchmarks/memcpy-typed-loop-speculative.js:
  • microbenchmarks/memcpy-typed-loop.js:
  • microbenchmarks/memcpy-wasm-large.js:
  • microbenchmarks/memcpy-wasm-medium.js:
  • microbenchmarks/memcpy-wasm-small.js:
  • microbenchmarks/memcpy-wasm.js:
  • microbenchmarks/method-on-number.js:
  • microbenchmarks/min-boolean.js:
  • microbenchmarks/minus-boolean-double.js:
  • microbenchmarks/minus-boolean.js:
  • microbenchmarks/misc-strict-eq.js:
  • microbenchmarks/mod-boolean-double.js:
  • microbenchmarks/mod-boolean.js:
  • microbenchmarks/mod-untyped.js:
  • microbenchmarks/mul-boolean-double.js:
  • microbenchmarks/mul-boolean.js:
  • microbenchmarks/mul-immediate-sub.js:
  • microbenchmarks/neg-boolean.js:
  • microbenchmarks/negative-zero-divide.js:
  • microbenchmarks/negative-zero-modulo.js:
  • microbenchmarks/negative-zero-negate.js:
  • microbenchmarks/new-array-buffer-dead.js:
  • microbenchmarks/new-array-buffer-push.js:
  • microbenchmarks/new-array-buffer-vector-profile.js:
  • microbenchmarks/new-array-dead.js:
  • microbenchmarks/new-array-push.js:
  • microbenchmarks/new-error.js:
  • microbenchmarks/no-inline-constructor.js:
  • microbenchmarks/number-test.js:
  • microbenchmarks/number-to-string-strength-reduction.js:
  • microbenchmarks/number-to-string-with-add-empty.js:
  • microbenchmarks/number-to-string-with-add-in-loop.js:
  • microbenchmarks/number-to-string-with-add.js:
  • microbenchmarks/number-to-string-with-radix-10.js:
  • microbenchmarks/number-to-string-with-radix-cse.js:
  • microbenchmarks/number-to-string-with-radix.js:
  • microbenchmarks/object-and.js:
  • microbenchmarks/object-closure-call.js:
  • microbenchmarks/object-create-constant-prototype.js:
  • microbenchmarks/object-create-null.js:
  • microbenchmarks/object-create-unknown-object-prototype.js:
  • microbenchmarks/object-create-untyped-prototype.js:
  • microbenchmarks/object-entries.js:
  • microbenchmarks/object-get-own-property-symbols-on-large-array.js:
  • microbenchmarks/object-get-own-property-symbols.js:
  • microbenchmarks/object-int-add-array.js:
  • microbenchmarks/object-int-add.js:
  • microbenchmarks/object-int-and-array.js:
  • microbenchmarks/object-int-mul-array.js:
  • microbenchmarks/object-int-sub-array.js:
  • microbenchmarks/object-int-sub.js:
  • microbenchmarks/object-is.js:
  • microbenchmarks/object-iterate-symbols.js:
  • microbenchmarks/object-iterate.js:
  • microbenchmarks/object-keys-map-values.js:
  • microbenchmarks/object-keys.js:
  • microbenchmarks/object-lshift.js:
  • microbenchmarks/object-or.js:
  • microbenchmarks/object-rshift.js:
  • microbenchmarks/object-test.js:
  • microbenchmarks/object-urshift.js:
  • microbenchmarks/object-values.js:
  • microbenchmarks/object-xor.js:
  • microbenchmarks/obvious-sink-pathology-taken.js:
  • microbenchmarks/obvious-sink-pathology.js:
  • microbenchmarks/obviously-elidable-new-object.js:
  • microbenchmarks/plus-boolean-arith.js:
  • microbenchmarks/plus-boolean-double.js:
  • microbenchmarks/plus-boolean.js:
  • microbenchmarks/poly-chain-access-different-prototypes-simple.js:
  • microbenchmarks/poly-chain-access-different-prototypes.js:
  • microbenchmarks/poly-chain-access-simpler.js:
  • microbenchmarks/poly-chain-access.js:
  • microbenchmarks/poly-proto-access.js:
  • microbenchmarks/poly-proto-and-non-poly-proto-same-ic.js:
  • microbenchmarks/poly-proto-clear-js-function-allocation-profile.js:
  • microbenchmarks/poly-proto-put-transition-speed.js:
  • microbenchmarks/poly-proto-setter-speed.js:
  • microbenchmarks/poly-stricteq.js:
  • microbenchmarks/polymorphic-array-call.js:
  • microbenchmarks/polymorphic-get-by-id.js:
  • microbenchmarks/polymorphic-put-by-id.js:
  • microbenchmarks/polymorphic-put-by-val-with-string.js:
  • microbenchmarks/polymorphic-put-by-val-with-symbol.js:
  • microbenchmarks/polymorphic-structure.js:
  • microbenchmarks/polyvariant-get-by-id-shorter-tower.js:
  • microbenchmarks/polyvariant-get-by-id-tower.js:
  • microbenchmarks/polyvariant-monomorphic-get-by-id.js:
  • microbenchmarks/prevent-extensions-and-do-work.js:
  • microbenchmarks/promise-creation-many.js:
  • microbenchmarks/proto-getter-access.js:
  • microbenchmarks/prototype-access-with-mutating-prototype.js:
  • microbenchmarks/put-by-id-replace-and-transition.js:
  • microbenchmarks/put-by-id-slightly-polymorphic.js:
  • microbenchmarks/put-by-id-transition-with-indexing-header.js:
  • microbenchmarks/put-by-id.js:
  • microbenchmarks/put-by-val-direct-large-index.js:
  • microbenchmarks/put-by-val-direct.js:
  • microbenchmarks/put-by-val-large-index-blank-indexing-type.js:
  • microbenchmarks/put-by-val-machine-int.js:
  • microbenchmarks/put-by-val-negative-array-index.js:
  • microbenchmarks/put-by-val-with-string-replace-and-transition.js:
  • microbenchmarks/put-by-val-with-string-slightly-polymorphic.js:
  • microbenchmarks/put-by-val-with-string.js:
  • microbenchmarks/put-by-val-with-symbol-replace-and-transition.js:
  • microbenchmarks/put-by-val-with-symbol-slightly-polymorphic.js:
  • microbenchmarks/put-by-val-with-symbol.js:
  • microbenchmarks/rare-osr-exit-on-local.js:
  • microbenchmarks/raytrace-with-empty-try-catch.js:
  • microbenchmarks/raytrace-with-try-catch.js:
  • microbenchmarks/regexp-exec.js:
  • microbenchmarks/regexp-last-index.js:
  • microbenchmarks/regexp-nested-nonzero-min-counted-parens.js:
  • microbenchmarks/regexp-prototype-is-not-instance.js:
  • microbenchmarks/regexp-prototype-search-observable-side-effects.js:
  • microbenchmarks/regexp-prototype-search-observable-side-effects2.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects2.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects3-flags.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects3-global.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects3-ignoreCase.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects3-multiline.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects3-sticky.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects3-unicode.js:
  • microbenchmarks/regexp-prototype-split-observable-side-effects4.js:
  • microbenchmarks/regexp-prototype-test-observable-side-effects.js:
  • microbenchmarks/regexp-prototype-test-observable-side-effects2.js:
  • microbenchmarks/regexp-set-last-index.js:
  • microbenchmarks/regexp-u-global-es5.js:
  • microbenchmarks/regexp-u-global-es6.js:
  • microbenchmarks/register-pressure-from-osr.js:
  • microbenchmarks/repeat-multi-get-by-offset.js:
  • microbenchmarks/rest-parameter-construction-performance.js:
  • microbenchmarks/richards-empty-try-catch.js:
  • microbenchmarks/richards-try-catch.js:
  • microbenchmarks/scoped-arguments-length.js:
  • microbenchmarks/scoped-arguments-overridden-length.js:
  • microbenchmarks/scoped-arguments-possibly-overridden-length.js:
  • microbenchmarks/seal-and-do-work.js:
  • microbenchmarks/set-for-each.js:
  • microbenchmarks/set-for-of.js:
  • microbenchmarks/setter-prototype.js:
  • microbenchmarks/setter.js:
  • microbenchmarks/simple-activation-demo.js:
  • microbenchmarks/simple-getter-access.js:
  • microbenchmarks/simple-poly-call-nested.js:
  • microbenchmarks/simple-poly-call.js:
  • microbenchmarks/simple-regexp-exec-folding-fail.js:
  • microbenchmarks/simple-regexp-exec-folding.js:
  • microbenchmarks/simple-regexp-test-folding-fail-with-hoisted-regexp.js:
  • microbenchmarks/simple-regexp-test-folding-fail.js:
  • microbenchmarks/simple-regexp-test-folding-with-hoisted-regexp.js:
  • microbenchmarks/simple-regexp-test-folding.js:
  • microbenchmarks/sin-boolean.js:
  • microbenchmarks/singleton-scope.js:
  • microbenchmarks/sink-function.js:
  • microbenchmarks/sink-huge-activation.js:
  • microbenchmarks/sinkable-new-object-dag.js:
  • microbenchmarks/sinkable-new-object-taken.js:
  • microbenchmarks/sinkable-new-object-with-builtin-constructor.js:
  • microbenchmarks/sinkable-new-object.js:
  • microbenchmarks/slow-array-profile-convergence.js:
  • microbenchmarks/slow-convergence.js:
  • microbenchmarks/slow-ternaries.js:
  • microbenchmarks/sorting-benchmark.js:
  • microbenchmarks/sparse-conditional.js:
  • microbenchmarks/sparse-set.js:
  • microbenchmarks/splice-to-remove.js:
  • microbenchmarks/strcat-const.js:
  • microbenchmarks/strcat-length-const.js:
  • microbenchmarks/strict-osr-entry.js:
  • microbenchmarks/string-char-code-at.js:
  • microbenchmarks/string-concat-convert.js:
  • microbenchmarks/string-concat-long-convert.js:
  • microbenchmarks/string-concat-long.js:
  • microbenchmarks/string-concat-object.js:
  • microbenchmarks/string-concat-pair-object.js:
  • microbenchmarks/string-concat-pair-simple.js:
  • microbenchmarks/string-concat-simple.js:
  • microbenchmarks/string-concat.js:
  • microbenchmarks/string-cons-repeat.js:
  • microbenchmarks/string-cons-tower.js:
  • microbenchmarks/string-equality.js:
  • microbenchmarks/string-from-char-code.js:
  • microbenchmarks/string-get-by-val-big-char.js:
  • microbenchmarks/string-get-by-val-out-of-bounds-insane.js:
  • microbenchmarks/string-get-by-val-out-of-bounds.js:
  • microbenchmarks/string-get-by-val.js:
  • microbenchmarks/string-hash.js:
  • microbenchmarks/string-long-ident-equality.js:
  • microbenchmarks/string-object-to-string.js:
  • microbenchmarks/string-object-value-of.js:
  • microbenchmarks/string-out-of-bounds.js:
  • microbenchmarks/string-prototype-search-observable-side-effects.js:
  • microbenchmarks/string-prototype-search-observable-side-effects2.js:
  • microbenchmarks/string-prototype-search-observable-side-effects3.js:
  • microbenchmarks/string-prototype-search-observable-side-effects4.js:
  • microbenchmarks/string-prototype-split-observable-side-effects.js:
  • microbenchmarks/string-prototype-split-observable-side-effects2.js:
  • microbenchmarks/string-prototype-split-observable-side-effects3-flags.js:
  • microbenchmarks/string-prototype-split-observable-side-effects3-global.js:
  • microbenchmarks/string-prototype-split-observable-side-effects3-ignoreCase.js:
  • microbenchmarks/string-prototype-split-observable-side-effects3-multiline.js:
  • microbenchmarks/string-prototype-split-observable-side-effects3-sticky.js:
  • microbenchmarks/string-prototype-split-observable-side-effects3-unicode.js:
  • microbenchmarks/string-prototype-split-observable-side-effects4.js:
  • microbenchmarks/string-repeat-arith.js:
  • microbenchmarks/string-repeat-not-resolving-fixed.js:
  • microbenchmarks/string-repeat-not-resolving-no-inline.js:
  • microbenchmarks/string-repeat-not-resolving.js:
  • microbenchmarks/string-repeat-resolving-fixed.js:
  • microbenchmarks/string-repeat-resolving-no-inline.js:
  • microbenchmarks/string-repeat-resolving.js:
  • microbenchmarks/string-repeat-single-not-resolving.js:
  • microbenchmarks/string-repeat-single-resolving.js:
  • microbenchmarks/string-repeat-small-not-resolving.js:
  • microbenchmarks/string-repeat-small-resolving.js:
  • microbenchmarks/string-replace-empty.js:
  • microbenchmarks/string-replace-generic.js:
  • microbenchmarks/string-replace.js:
  • microbenchmarks/string-rope-with-object.js:
  • microbenchmarks/string-slice-empty.js:
  • microbenchmarks/string-slice-one-char.js:
  • microbenchmarks/string-slice.js:
  • microbenchmarks/string-sub.js:
  • microbenchmarks/string-test.js:
  • microbenchmarks/string-transcoding.js:
  • microbenchmarks/string-var-equality.js:
  • microbenchmarks/stringalloc.js:
  • microbenchmarks/structure-hoist-over-transitions.js:
  • microbenchmarks/substring-concat-weird.js:
  • microbenchmarks/substring-concat.js:
  • microbenchmarks/substring.js:
  • microbenchmarks/super-get-by-id-with-this-monomorphic.js:
  • microbenchmarks/super-get-by-id-with-this-polymorphic.js:
  • microbenchmarks/super-get-by-val-with-this-monomorphic.js:
  • microbenchmarks/super-get-by-val-with-this-polymorphic.js:
  • microbenchmarks/super-getter.js:
  • microbenchmarks/switch-char-constant.js:
  • microbenchmarks/switch-char.js:
  • microbenchmarks/switch-constant.js:
  • microbenchmarks/switch-string-basic-big-var.js:
  • microbenchmarks/switch-string-basic-big.js:
  • microbenchmarks/switch-string-basic-var.js:
  • microbenchmarks/switch-string-basic.js:
  • microbenchmarks/switch-string-big-length-tower-var.js:
  • microbenchmarks/switch-string-length-tower-var.js:
  • microbenchmarks/switch-string-length-tower.js:
  • microbenchmarks/switch-string-short.js:
  • microbenchmarks/switch.js:
  • microbenchmarks/switching-size-classes.js:
  • microbenchmarks/symbol-creation.js:
  • microbenchmarks/symbol-tostringtag.js:
  • microbenchmarks/tan.js:
  • microbenchmarks/tear-off-arguments-simple.js:
  • microbenchmarks/tear-off-arguments.js:
  • microbenchmarks/template-string-array.js:
  • microbenchmarks/temporal-structure.js:
  • microbenchmarks/throw.js:
  • microbenchmarks/to-int32-boolean.js:
  • microbenchmarks/to-number-boolean.js:
  • microbenchmarks/to-number-constructor-number-string-number-string.js:
  • microbenchmarks/to-number-constructor-only-number.js:
  • microbenchmarks/to-number-constructor-only-string.js:
  • microbenchmarks/to-number-constructor-string-number-string-number.js:
  • microbenchmarks/to-number-number-string-number-string.js:
  • microbenchmarks/to-number-only-number.js:
  • microbenchmarks/to-number-only-string.js:
  • microbenchmarks/to-number-string-number-string-number.js:
  • microbenchmarks/to-string-on-cow-array.js:
  • microbenchmarks/try-catch-get-by-val-cloned-arguments.js:
  • microbenchmarks/try-catch-get-by-val-direct-arguments.js:
  • microbenchmarks/try-catch-get-by-val-scoped-arguments.js:
  • microbenchmarks/try-catch-word-count.js:
  • microbenchmarks/try-get-by-id-basic.js:
  • microbenchmarks/try-get-by-id-polymorphic.js:
  • microbenchmarks/typed-array-get-set-by-val-profiling.js:
  • microbenchmarks/typed-array-subarray.js:
  • microbenchmarks/typed-array-sum.js:
  • microbenchmarks/undefined-test.js:
  • microbenchmarks/unprofiled-licm.js:
  • microbenchmarks/untyped-string-from-char-code.js:
  • microbenchmarks/v8-raytrace-with-empty-try-catch.js:
  • microbenchmarks/v8-raytrace-with-try-catch.js:
  • microbenchmarks/v8-regexp-search.js:
  • microbenchmarks/varargs-call.js:
  • microbenchmarks/varargs-construct-inline.js:
  • microbenchmarks/varargs-construct.js:
  • microbenchmarks/varargs-inline.js:
  • microbenchmarks/varargs-strict-mode.js:
  • microbenchmarks/varargs.js:
  • microbenchmarks/vector-length-hint-array-constructor.js:
  • microbenchmarks/vector-length-hint-new-array.js:
  • microbenchmarks/weak-map-key.js:
  • microbenchmarks/weak-set-key.js:
  • microbenchmarks/weird-inlining-const-prop.js:
3:34 PM Changeset in webkit [251462] by cturner@igalia.com
  • 2 edits in trunk/LayoutTests

[GStreamer] Skip http/tests/media/hls/hls-video-resize.html
https://bugs.webkit.org/show_bug.cgi?id=199617

Unreviewed gardening.

Generally speaking, the HTML spec says that HAVE_METADATA => video
dimensions are available. Only when the state is < HAVE_METADATA
is it specified that "If the element's readyState attribute is
HAVE_NOTHING, then the [width, height] attributes must return 0."

However, there is a provision mentioned implicitly that the UA can
be in HAVE_METADATA and have received no video data. "When no
video data is available (the element's readyState attribute is
either HAVE_NOTHING, or HAVE_METADATA but no video data has yet
been obtained at all..."

The two definitions of the HAVE_METADATA both state that
dimensions should be available though,

Defn 1. "Enough of the resource has been obtained that the
duration of the resource is available. In the case of a video
element, the dimensions of the video are also available. No media
data is available for the immediate current playback position."

Defn 2. "The user agent has just determined the duration and
dimensions of the media resource and the text tracks are ready."

And yet there's one more mention of transitioning to this state
that suggests the UA only needs to know the duration of the media:
"The user agent must determine the duration of the media resource
before playing any part of the media data and before setting
readyState to a value equal to or greater than HAVE_METADATA, even
if doing so requires fetching multiple parts of the resource."

So, it seems more like the spec itself it unclear, and the test
was added to check the Apple ports' specific HLS behaviour.

  • platform/gtk/TestExpectations: Skip this test, since it relies

on behaviour that does not seem to be standard, but rather quite
specific to how the Apple HLS player works.

2:57 PM Changeset in webkit [251461] by commit-queue@webkit.org
  • 7 edits
    2 deletes in trunk

[SVG2] Remove the 'viewTarget' property of SVGViewElement
https://bugs.webkit.org/show_bug.cgi?id=203217

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-10-22
Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

  • web-platform-tests/svg/historical-expected.txt:

Source/WebCore:

The interface of SVGViewElement is defined here:

https://www.w3.org/TR/SVG2/linking.html#InterfaceSVGViewElement.

  • svg/SVGViewElement.cpp:

(WebCore::SVGViewElement::SVGViewElement):
(WebCore::SVGViewElement::parseAttribute):

  • svg/SVGViewElement.h:
  • svg/SVGViewElement.idl:

LayoutTests:

  • svg/dom/SVGViewElement-viewTarget-expected.txt: Removed.
  • svg/dom/SVGViewElement-viewTarget.html: Removed.
2:49 PM Changeset in webkit [251460] by cturner@igalia.com
  • 7 edits in trunk

media/W3C/video/networkState/networkState_during_progress.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=76280

Reviewed by Eric Carlson.

The onprogress event must be received when networkState is
NETWORK_LOADING, make sure in the transition from loading to idle
that the progress event is fired synchronously, so that it is
received before the networkState changes to NETWORK_IDLE.

Source/WebCore:

Tested by media/W3C/video/networkState/networkState_during_progress.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::changeNetworkStateFromLoadingToIdle):

LayoutTests:

  • TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
2:28 PM Changeset in webkit [251459] by ysuzuki@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, make 32bit JIT built
https://bugs.webkit.org/show_bug.cgi?id=202392

This patch makes 32bit JIT built at least.

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_throw):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emitSlow_op_get_by_id_direct):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id_with_this):
(JSC::JIT::emitSlow_op_get_from_scope):

2:28 PM Changeset in webkit [251458] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[Picture-in-Picture Web API] The implementation needs runtime logging
https://bugs.webkit.org/show_bug.cgi?id=202774

Patch by Peng Liu <Peng Liu> on 2019-10-22
Reviewed by Eric Carlson.

Add runtime logging, no new tests needed.

  • Modules/pictureinpicture/HTMLVideoElementPictureInPicture.cpp:

(WebCore::HTMLVideoElementPictureInPicture::HTMLVideoElementPictureInPicture):
(WebCore::HTMLVideoElementPictureInPicture::~HTMLVideoElementPictureInPicture):
(WebCore::HTMLVideoElementPictureInPicture::requestPictureInPicture):
(WebCore::HTMLVideoElementPictureInPicture::exitPictureInPicture):
(WebCore::HTMLVideoElementPictureInPicture::didEnterPictureInPicture):
(WebCore::HTMLVideoElementPictureInPicture::didExitPictureInPicture):
(WebCore::HTMLVideoElementPictureInPicture::logChannel const):

  • Modules/pictureinpicture/HTMLVideoElementPictureInPicture.h:
2:23 PM Changeset in webkit [251457] by ysuzuki@apple.com
  • 39 edits in trunk/Source

[JSC] Remove non-LargeAllocation restriction for JSCallee
https://bugs.webkit.org/show_bug.cgi?id=203260

Reviewed by Saam Barati.

Source/JavaScriptCore:

We now pass JSGlobalObject* instead of ExecState*. And we are getting VM& from JSGlobalObject*.
Because now accessing ExecState::vm() becomes less frequent, we can remove the restriction that
callee is only allocated in non-LargeAllocation, which restriction made ExecState::vm fast.

This patch renames CallFrame::vm to CallFrame::deprecatedVM. And we avoid using it as much as possible.
And we also remove the restriction that callee needs to be in non-LargeAllocation.

  • API/JSContextRef.cpp:

(JSContextCreateBacktrace):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::noticeIncomingCall):

  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::deprecatedVMEntryGlobalObject const):
(JSC::DebuggerCallFrame::functionName const):
(JSC::DebuggerCallFrame::scope):
(JSC::DebuggerCallFrame::type const):
(JSC::DebuggerCallFrame::evaluateWithScopeExtension):
(JSC::DebuggerCallFrame::positionForCallFrame):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::executeOSRExit):
(JSC::DFG::OSRExit::compileOSRExit):
(JSC::DFG::OSRExit::debugOperationPrintSpeculationFailure):

  • dfg/DFGOperations.cpp:
  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLOperations.cpp:

(JSC::FTL::compileFTLLazySlowPath):

  • inspector/JSInjectedScriptHost.cpp:

(Inspector::JSInjectedScriptHost::evaluateWithScopeExtension):

  • inspector/ScriptCallStackFactory.cpp:

(Inspector::createScriptCallStack):
(Inspector::createScriptCallStackForConsole):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::callerSourceOrigin):
(JSC::CallFrame::friendlyFunctionName):

  • interpreter/CallFrame.h:

(JSC::CallFrame::iterate):

  • interpreter/Interpreter.cpp:

(JSC::sizeOfVarargs):
(JSC::sizeFrameForVarargs):
(JSC::Interpreter::getStackTrace):
(JSC::Interpreter::unwind):
(JSC::Interpreter::notifyDebuggerOfExceptionToBeThrown):
(JSC::Interpreter::debug):

  • interpreter/Interpreter.h:
  • interpreter/ShadowChicken.cpp:

(JSC::ShadowChicken::update):

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::StackVisitor):
(JSC::StackVisitor::Frame::functionName const):

  • interpreter/StackVisitor.h:

(JSC::StackVisitor::visit):

  • jit/HostCallReturnValue.cpp:

(JSC::getHostCallReturnValueWithExecState):

  • jit/JITOperations.cpp:
  • jit/Repatch.cpp:

(JSC::linkFor):
(JSC::linkPolymorphicCall):

  • jit/Repatch.h:
  • jsc.cpp:

(functionJSCStack):
(functionRunString):
(functionLoadString):
(functionCallerSourceOrigin):
(functionCallerIsOMGCompiled):
(functionDollarEvalScript):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/Error.cpp:

(JSC::getBytecodeOffset):

  • runtime/FunctionConstructor.cpp:

(JSC::constructFunction):

  • runtime/JSCellInlines.h:

(JSC::CallFrame::deprecatedVM const):
(JSC::CallFrame::vm const): Deleted.

  • runtime/JSFunction.cpp:

(JSC::retrieveArguments):
(JSC::JSFunction::argumentsGetter):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSGlobalObject.cpp:

(JSC::assertCall):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEval):
(JSC::globalFuncImportModule):

  • runtime/NullSetterFunction.cpp:

(JSC::callerIsStrict):
(JSC::NullSetterFunctionInternal::callReturnUndefined):

  • tools/JSDollarVM.cpp:

(IGNORE_WARNINGS_BEGIN):
(JSC::functionLLintTrue):
(JSC::functionJITTrue):
(JSC::functionDumpRegisters):
(JSC::functionShadowChickenFunctionsOnStack):

  • tools/VMInspector.cpp:

(JSC::VMInspector::codeBlockForFrame):
(JSC::VMInspector::dumpCallFrame):
(JSC::VMInspector::dumpRegisters):
(JSC::VMInspector::dumpStack):

  • wasm/js/WasmToJS.cpp:

(JSC::Wasm::wasmToJS):

Source/WebCore:

Passing VM& instead of calling CallFrame::vm.

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::callerGlobalObject):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::responsibleDocument):

  • bindings/js/JSDOMWindowBase.h:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateCallWith):

  • testing/Internals.cpp:

(WebCore::Internals::parserMetaData):

2:18 PM Changeset in webkit [251456] by mark.lam@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Clients of JSArray::tryCreateUninitializedRestricted() should invoke the mutatorFence().
https://bugs.webkit.org/show_bug.cgi?id=203231
<rdar://problem/56486552>

Reviewed by Saam Barati.

Clients of JSArray::tryCreateUninitializedRestricted() creates a partially
initialized JSArray butterfly, with the contract that it (the client) will take
care of filling in all the missing indexed properties before setting the newly
created array loose in the world. We intentionally do not unconditionally write
barrier the newly created array but, instead, rely on an owner object (or GC root)
that it gets put into to scan it.

That said, we do need to ensure that all the stores are completed before this
array is put in an owner object (or GC root) which makes it scannable by the GC.
This ensures that the GC will not be scanning a partially initialized array
butterfly. To achieve this, we should invoke the mutatorFence after the clients
of JSArray::tryCreateUninitializedRestricted() finish initializing the array.

By design, all clients of tryCreateUninitializedRestricted() must instantiate an
ObjectInitializationScope RAII object. This patch makes use of the
ObjectInitializationScope destructor to invoke the mutatorFence.

Note: we technically only need to invoke the fence if we succeeded in allocating
the array. However, we just invoke the fence unconditionally because we expect
that in the common path, we will succeed in allocating the array. The release
build version of ObjectInitializationScope does not keep record of whether we
succeed in allocating the array anyway. To keep the behavior consistent, the
debug build version of ObjectInitializationScope will also unconditionally
invoke the fence even if we failed to allocate the array.

This patch also does the following:

  1. Replaced the setting of the public length in arrayProtoPrivateFuncConcatMemcpy() with an assertion. The public length was already set by tryCreateUninitializedRestricted() earlier.

Ditto for JSArray::fastSlice().

  1. Removed a redundant instance of ObjectInitializationScope in createEmptyRegExpMatchesArray().
  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoPrivateFuncConcatMemcpy):

  • runtime/JSArray.cpp:

(JSC::JSArray::fastSlice):

  • runtime/ObjectInitializationScope.cpp:

(JSC::ObjectInitializationScope::~ObjectInitializationScope):

  • runtime/ObjectInitializationScope.h:

(JSC::ObjectInitializationScope::~ObjectInitializationScope):

  • runtime/RegExpMatchesArray.cpp:

(JSC::createEmptyRegExpMatchesArray):

2:11 PM Changeset in webkit [251455] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][IFC] Add support for continuous content/commit boundary check
https://bugs.webkit.org/show_bug.cgi?id=203255
<rdar://problem/56503598>

Reviewed by Antti Koivisto.

This patch adds support for continuous content and commit boundary check.

<span style="padding-right: 10px;">textcontent</span>

The content above forms a continuous, unbreakable run of ([container start][textcontent][container end with horizontal padding of 10px]).
However at this point we don't know yet whether we are at the end of the run and we need to keep checking for the trailing content.
In general, we can't submit the run to the line breaking unless we managed to find the commit boundary for the current run.

<span style="padding-right: 10px;">textcontent</span><img src="broken.jpg">

This content produces two separate runs as follows:

  1. ([container start][textcontent][container end with horizontal padding of 10px])
  2. ([img])

vs.
<span style="padding-right: 10px;">textcontent</span>moretextcontent

This content produces only one run

  1. ([container start][textcontent][container end with horizontal padding of 10px][moretextcontent])

The idea here is that we don't commit the content on the line unless we identified the run boundary. In practice it means that we hardly commit the current inline item on the line
but instead we use it to decide whether the uncommitted content is ready to be committed.

Using the following example:
<span style="padding-right: 10px;">textcontent<img src="broken.jpg"></span>

Incoming inline items are:

[container start] -> we can't identify the run boundary -> add inline item to pending content
[textcontent] -> we still can't identify the run boundary sine we don't know what the next inline item is -> add inline item to pending content
[img] -> now we know that the [container start][textcontent] is on a commit boundary -> commit pending content -> however the current [img] item's boundary is unknown.
[container end with horizontal padding of 10px] -> Now the [img] and [container end] form an unbreakable run but we don't yet know if this is a run boundary

  • End of content -> always a commit boundary -> commit pending items -> ([img][container end])
  • layout/inlineformatting/InlineLineBreaker.cpp:

(WebCore::Layout::LineBreaker::breakingContext):
(WebCore::Layout::LineBreaker::breakingContextForFloat):
(WebCore::Layout::LineBreaker::wordBreakingBehavior const):
(WebCore::Layout::LineBreaker::isAtBreakingOpportunity): Deleted.

  • layout/inlineformatting/InlineLineBreaker.h:
  • layout/inlineformatting/InlineLineLayout.cpp:

(WebCore::Layout::LineLayout::layout):
(WebCore::Layout::LineLayout::close):
(WebCore::Layout::LineLayout::placeInlineItem):
(WebCore::Layout::LineLayout::processUncommittedContent):
(WebCore::Layout::LineLayout::shouldProcessUncommittedContent const):

  • layout/inlineformatting/InlineLineLayout.h:

(WebCore::Layout::LineLayout::UncommittedContent::runs):
(WebCore::Layout::LineLayout::UncommittedContent::runs const):

2:03 PM Changeset in webkit [251454] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

WebCoreDecompressionSession needs padding on all platforms to avoid link warnings
https://bugs.webkit.org/show_bug.cgi?id=203267
<rdar://problem/56514219>

Reviewed by Simon Fraser.

It's annoying that we have to do this, but it is less annoying than getting
4 linker warnings every time you compile for iOS.

  • platform/graphics/cocoa/WebCoreDecompressionSession.mm:

(WebCore::WebCoreDecompressionSession::enqueueSample): Use padding everywhere.

1:48 PM Changeset in webkit [251453] by aakash_jain@apple.com
  • 2 edits in trunk/Tools

[ews] Status bubble should show previous failures if any in case patch is skipped
https://bugs.webkit.org/show_bug.cgi?id=203261

Reviewed by Jonathan Bedard.

  • BuildSlaveSupport/ews-app/ews/views/statusbubble.py:

(StatusBubble._build_bubble): Display build information from previous builds for skipped patch in
case there are multiple builds.

1:46 PM Changeset in webkit [251452] by commit-queue@webkit.org
  • 7 edits in trunk

Re-enable legacy TLS by default, keep runtime switch
https://bugs.webkit.org/show_bug.cgi?id=203253

Patch by Alex Christensen <achristensen@webkit.org> on 2019-10-22
Reviewed by Geoffrey Garen.

Source/WebKit:

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformInitializeNetworkProcess):

  • UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:

(WebKit::WebsiteDataStore::parameters):

Source/WebKitLegacy/mac:

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:

(TestWebKitAPI::TEST):
(TestWebKitAPI::getWebSocketEventWebKitLegacy):

1:45 PM Changeset in webkit [251451] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Revert r243010 on pre-Catalina macOS
https://bugs.webkit.org/show_bug.cgi?id=203265
<rdar://problem/55570995>

Reviewed by Per Arne Vollan.

  • WebProcess/com.apple.WebProcess.sb.in:
1:40 PM Changeset in webkit [251450] by aakash_jain@apple.com
  • 3 edits in trunk/Tools

[ews] Download the build archive from master when download from S3 fails
https://bugs.webkit.org/show_bug.cgi?id=203263

Reviewed by Jonathan Bedard.

  • BuildSlaveSupport/ews-build/steps.py:

(DownloadBuiltProduct.evaluateCommand):
(DownloadBuiltProductFromMaster): Build step to download the archive from build master.
(DownloadBuiltProductFromMaster.getResultSummary): Added custom failure message.
(DownloadBuiltProductFromMaster.evaluateCommand): Overrided to ensure it doesn't use this method from base
class DownloadBuiltProduct.

  • BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1:29 PM Changeset in webkit [251449] by Russell Epstein
  • 3 edits in trunk/LayoutTests

[ iOS ] Three editing/pasteboard/smart-paste-paragraph tests have been flaky since they landed in r243124 (203264)
https://bugs.webkit.org/show_bug.cgi?id=203264

Unreviewed Test Gardening..

  • platform/ios-wk2/TestExpectations: Marked tests as flaky failures
  • platform/ipad/TestExpectations: Marked tests as passing on iPad.
1:29 PM Changeset in webkit [251448] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit

Update xcfilelists

  • DerivedSources-output.xcfilelist:
1:27 PM Changeset in webkit [251447] by mark.lam@apple.com
  • 3 edits
    1 add in trunk

Fix incorrect assertion in operationRegExpExecNonGlobalOrSticky().
https://bugs.webkit.org/show_bug.cgi?id=203230
<rdar://problem/56460749>

Reviewed by Robin Morisset.

JSTests:

  • stress/incorrect-exception-assertion-in-operationRegExpExecNonGlobalOrSticky.js: Added.

Source/JavaScriptCore:

operationRegExpExecNonGlobalOrSticky() was asserting no exception when
createRegExpMatchesArray() returns null. createRegExpMatchesArray() only returns
null when RegExp::matchInline() returns -1. RegExp::matchInline() can return -1
either when there's an error, or if the match fails. When there's an error,
RegExp::matchInline() also throws an exception via a throwError() helper.

This patch fixes operationRegExpExecNonGlobalOrSticky() to check for an exception
being thrown, or createRegExpMatchesArray() returning a null array due to a failed
match.

  • dfg/DFGOperations.cpp:
1:23 PM Changeset in webkit [251446] by Devin Rousso
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: Sources: content of function definition popover sometimes cut off
https://bugs.webkit.org/show_bug.cgi?id=203258

Reviewed by Matt Baker.

  • UserInterface/Views/SourceCodeTextEditor.js:

(WI.SourceCodeTextEditor.prototype._showPopoverForFunction.didGetDetails):

1:02 PM Changeset in webkit [251445] by timothy_horton@apple.com
  • 51 edits
    4 adds
    1 delete in trunk/Source

Make it possible to not include IPC Messages headers in other headers
https://bugs.webkit.org/show_bug.cgi?id=203074

Reviewed by Geoffrey Garen.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/ExceptionDetails.h: Added.
  • bindings/js/JSDOMExceptionHandling.h:

Split the ExceptionDetails struct out into its own file.

Source/WebKit:

Make the Messages generator generate a new -MessagesReplies.h file, which
only includes headers for and definitions of DelayedReply/AsyncReply types,
which need to be mentioned as arguments to message hander methods, and
thus must be available in various headers throughout the project.

In order to do this, we have to de-nest them from the primary message
class, but we then 'using' them back into place inside the message class
so that most of the code doesn't need to change.

This helps to wildly decrease the header load of WebPage.h and WebPageProxy.h,
especially, because the number of headers needed for types in their replies
is much smaller than the number needed for all message receivers.

Also, only invoke the Messages generator once per source file, and
only parse the source file once, generating all three output files
in one invocation.

And then clean up all the missing indirect includes that we lost by doing this.

All-in-all this is worth roughly 8% on the WebKit2 Build Time Benchmark.

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources.make:
  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
  • NetworkProcess/NetworkConnectionToWebProcess.cpp:
  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkResourceLoader.cpp:
  • NetworkProcess/NetworkResourceLoader.h:
  • PluginProcess/PluginControllerProxy.cpp:
  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/WebProcessConnection.h:
  • Scripts/Makefile:
  • Scripts/generate-message-receiver.py:

(main):

  • Scripts/generate-messages-header.py: Removed.
  • Scripts/webkit/LegacyMessageReceiver-expected.cpp:
  • Scripts/webkit/LegacyMessages-expected.h:
  • Scripts/webkit/LegacyMessagesReplies-expected.h: Added.
  • Scripts/webkit/MessageReceiver-expected.cpp:
  • Scripts/webkit/MessageReceiverSuperclass-expected.cpp:
  • Scripts/webkit/Messages-expected.h:
  • Scripts/webkit/MessagesReplies-expected.h: Added.
  • Scripts/webkit/MessagesRepliesSuperclassReplies-expected.h: Added.
  • Scripts/webkit/MessagesSuperclass-expected.h:
  • Scripts/webkit/messages.py:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
  • UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
  • UIProcess/Downloads/DownloadProxy.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:
  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/Plugins/PluginProcessManager.cpp:
  • UIProcess/Plugins/PluginProcessManager.h:
  • UIProcess/Plugins/PluginProcessProxy.h:
  • UIProcess/ProvisionalPageProxy.h:
  • UIProcess/SuspendedPageProxy.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessPool.cpp:
  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.h:
  • UIProcess/ios/WKContentView.mm:
  • UIProcess/ios/WKContentViewInteraction.mm:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/Storage/WebSWContextManagerConnection.cpp:
  • WebProcess/Storage/WebSWContextManagerConnection.h:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:
  • WebProcess/cocoa/VideoFullscreenManager.h:
  • WebProcess/cocoa/VideoFullscreenManager.mm:
12:57 PM Changeset in webkit [251444] by krit@webkit.org
  • 26 edits in trunk

SVG2: Add bounding-box keyword to pointer-events
https://bugs.webkit.org/show_bug.cgi?id=191382

Reviewed by Dean Jackson.

Source/WebCore:

SVG 2 added the bounding-box keyword to the pointer-events CSS
property. It takes the bounding box of an element as hit area.

Implemented it so that it is as if "fill" was specified for HTML.

Extended existing tests.

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator PointerEvents const):

  • css/CSSProperties.json:
  • css/CSSValueKeywords.in:
  • css/parser/CSSParserFastPaths.cpp:

(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):

  • rendering/PointerEventsHitRules.cpp:

(WebCore::PointerEventsHitRules::PointerEventsHitRules):

  • rendering/PointerEventsHitRules.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::nodeAtFloatPoint):

LayoutTests:

Test pointer-events: bounding-box with different SVG elements.

  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/mac/svg/custom/pointer-events-image-expected.txt:
  • platform/mac/svg/custom/pointer-events-path-expected.txt:
  • platform/mac/svg/custom/pointer-events-text-expected.txt:
  • svg/custom/pointer-events-image-css-transform.svg:
  • svg/custom/pointer-events-image.svg:
  • svg/custom/pointer-events-path.svg:
  • svg/custom/pointer-events-text-css-transform.svg:
  • svg/custom/pointer-events-text.svg:
12:40 PM Changeset in webkit [251443] by Chris Dumez
  • 8 edits in trunk/Source/WebKit

Simplify "Unexpectedly Resumed" assertion handling
https://bugs.webkit.org/show_bug.cgi?id=203254

Reviewed by Geoffrey Garen.

When the WebContent process gets resumed from suspension, it now unconditionally takes a
process assertion on behalf on the UIProcess and sends a ProcessDidResume IPC to the
UIProcess. The UIProcess then sends a DidHandleProcessWasResumed IPC back after handing
the ProcessDidResume IPC allowing the WebContent process to release its assertion on
behalf on the UIProcess.

The previous code was racy because it relied on the m_processIsSuspended flag, which was
queried and set from different threads. Also, the 'unexpectedly resumed' naming was
confusing since we'd often take this assertion whenever the WebProcess got resumed,
wether unexpected or not, simply because the processTaskStateDidChange IPC won the race
with the ProcessDidResume IPC from the UIProcess.

  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::processWasResumed):
(WebKit::WebProcessProxy::processWasUnexpectedlyUnsuspended): Deleted.

  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebProcessProxy.messages.in:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::processDidResume):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::processTaskStateDidChange):
(WebKit::WebProcess::didHandleProcessWasResumed):

12:03 PM Changeset in webkit [251442] by youenn@apple.com
  • 4 edits in trunk

Carriage return character sometimes missing in SDP c-line
https://bugs.webkit.org/show_bug.cgi?id=203190

Reviewed by Eric Carlson.

Source/WebCore:

Covered by updated test.

  • Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::filterSDP const):
Add missing\r when filterig the c line.

LayoutTests:

  • webrtc/datachannel/filter-ice-candidate.html:
11:10 AM Changeset in webkit [251441] by Russell Epstein
  • 3 edits in trunk/LayoutTests

Layout Test imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-iceConnectionState.https.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=203256

Unreviewed Test Gardening.

  • platform/ios-wk2/TestExpectations: Marked test as Flaky.
  • platform/mac-wk2/TestExpectations: Marked test as Flaky on Debug.
10:43 AM Changeset in webkit [251440] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests/imported/w3c

Cannot run some WPT cases manually
https://bugs.webkit.org/show_bug.cgi?id=203063

Patch by Peng Liu <Peng Liu> on 2019-10-22
Reviewed by Eric Carlson.

  • web-platform-tests/resources/testdriver-vendor.js:
10:09 AM Changeset in webkit [251439] by achristensen@apple.com
  • 24 edits in trunk

Remove mayHaveServiceWorkerRegisteredForOrigin
https://bugs.webkit.org/show_bug.cgi?id=203055

Patch by youenn fablet <youenn@apple.com> on 2019-10-22
Reviewed by Alex Christensen.

Source/WebCore:

Remove ServiceWorkerProvider::mayHaveServiceWorkerRegisteredForOrigin and existingServiceWorkerConnection since they are no longer useful.
Creation of a service worker connection no longer requires any additional IPC once network connection is created.
Covered by existing tests.

  • dom/Document.cpp:

(WebCore::Document::resume):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::matchRegistration):
(WebCore::DocumentLoader::commitData):

  • testing/Internals.cpp:

(WebCore::Internals::terminateServiceWorker):

  • testing/Internals.h:
  • testing/Internals.idl:
  • workers/service/SWClientConnection.h:
  • workers/service/ServiceWorkerProvider.cpp:
  • workers/service/ServiceWorkerProvider.h:
  • workers/service/WorkerSWClientConnection.cpp:
  • workers/service/WorkerSWClientConnection.h:

Source/WebKit:

This optimization was used for ensuring we would not create a storage process when no service worker registration is stored on disk.
Now that we do not have a storage process and we are doing registration matching direclty in network process, we can safely remove that optimization.
We also move the throttle state handling in WK2 layer. This allows us to not create a network process connection to update throttle state until
there is a network process connection. This allows continuing passing an API test checking network process connections after crashes.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode const):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::establishWorkerContextConnectionToNetworkProcess):
(WebKit::WebProcessPool::updateServiceWorkerUserAgent):

  • UIProcess/WebProcessPool.h:
  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Storage/WebSWClientConnection.h:
  • WebProcess/Storage/WebServiceWorkerProvider.cpp:

(WebKit::WebServiceWorkerProvider::serviceWorkerConnection):
(WebKit::WebServiceWorkerProvider::updateThrottleState):

  • WebProcess/Storage/WebServiceWorkerProvider.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::m_textAutoSizingAdjustmentTimer):
(WebKit::WebPage::updateThrottleState):

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:

Remove obsolete test.

10:04 AM Changeset in webkit [251438] by yurys@chromium.org
  • 2 edits in trunk/Source/WebKit

[GTK] Web Inspector: add an option for disabling minification and concatenation of inspector UI in release build
https://bugs.webkit.org/show_bug.cgi?id=203201

Reviewed by Carlos Garcia Campos.

Allow passing COMBINE_INSPECTOR_RESOURCES and COMBINE_TEST_RESOURCES as cmake arguments. This
enables to avoid minification of Web Inspector scripts in release binaries which is very
convenient during inspector UI development.

  • InspectorGResources.cmake:
10:03 AM Changeset in webkit [251437] by Simon Fraser
  • 7 edits
    4 adds in trunk

wpt/css/css-images/gradient/color-stops-parsing.html crashes
https://bugs.webkit.org/show_bug.cgi?id=200206

Reviewed by Carlos Alberto Lopez Perez.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-images/gradient/color-stops-parsing-expected.txt:

Source/WebCore:

Share the code that writes color stops, and null-check the stop's m_color.

Tested by http/wpt/css/css-images/gradient/color-stops-parsing.html.

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::writeColorStop const):
(WebCore::CSSLinearGradientValue::customCSSText const):
(WebCore::CSSRadialGradientValue::customCSSText const):
(WebCore::CSSConicGradientValue::customCSSText const):

  • css/CSSGradientValue.h:

(WebCore::CSSGradientValue::CSSGradientValue):

LayoutTests:

Unskip the test. It fails, but no longer crashes.

  • TestExpectations:
  • imported/w3c/web-platform-tests/css/css-images/gradient/color-stops-parsing-expected.txt: Added.
  • platform/mac-highsierra/imported/w3c/web-platform-tests/css/css-images/gradient/color-stops-parsing-expected.txt: Added.
9:38 AM Changeset in webkit [251436] by Adrian Perez de Castro
  • 23 edits in trunk/Source

[GTK][WPE] Fix non-unified builds after r251326
https://bugs.webkit.org/show_bug.cgi?id=203244

Reviewed by Youenn Fablet.

Source/JavaScriptCore:

  • ftl/FTLOSREntry.h: Add missing forward declaration of JSC::VM.
  • inspector/ScriptCallStackFactory.h: Add missing forward declaration of JSC::JSGlobalObject.
  • llint/LLIntExceptions.h: Add missing forward declaration of JSC::VM.
  • runtime/ExceptionFuzz.h: Add missing forward declaration of JSC::JSGlobalObject.
  • runtime/JSDateMath.h: Ditto.
  • runtime/JSStringJoiner.h: Add missing inclusion of the JSGlobalObject.h header.
  • runtime/Watchdog.h: Add missing forward declaration of JSC::JSGlobalObject.
  • wasm/WasmOperations.h: Add missing forward declaration of JSC::JSWebAssemblyInstance.

Source/WebCore:

No new tests needed.

  • Modules/async-clipboard/Clipboard.cpp: Switch inclusion of Blob.h to JSBlob.h, in order to

have a toJS() conversion for Blob defined. Remove the unneeded JSPromise.h header inclusion.

  • Modules/indexeddb/IDBFactory.h: Add missing forward declaration of JSC::JSGlobalObject.
  • bindings/js/JSDOMBindingSecurity.h: Ditto.
  • bindings/js/ScriptState.h: Ditto.
  • dom/Node.cpp: Add missing inclusion of JavaScriptCore/HeapInlines.h
  • page/RemoteDOMWindow.h: Add missing forward declaration of JSC::JSGlobalObject.
  • platform/graphics/HEVCUtilities.cpp: Add missing inclusion of the wtf/text/StringHash.h

header, needed to use String as key for a HashMap.

Source/WebKit:

  • Shared/UserData.cpp: Add missing inclusion of WebCoreArgumentCoders.h
  • UIProcess/Automation/SimulatedInputDispatcher.cpp: Add missing inclusion of wtf/Variant.h
  • UIProcess/ProvisionalPageProxy.h: Add missing inclusion of WebCore/ResourceRequest.h
  • UIProcess/WebTextChecker.cpp: Add missing inclusion of WebPageProxy.h
  • WebProcess/Databases/WebDatabaseProvider.cpp: Add missing inclusion of WebIDBConnectionToServer.h
9:23 AM Changeset in webkit [251435] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Remove expectations for compositing/iframes/nested-iframe-scrolling.html.

It passes now.

  • platform/ios/TestExpectations:
8:55 AM Changeset in webkit [251434] by youenn@apple.com
  • 4 edits in trunk/Source/WebKit

WebSWServerToContextConnection should not assert when failing loads at destruction time
https://bugs.webkit.org/show_bug.cgi?id=203243

Reviewed by Alex Christensen.

On WebSWServerToContextConnection destruction, we move the fetch task map and fail the tasks.
At destruction of the tasks, which happens synchronously, they will try to unregister themselves
and the assertion that the task is in the map will fail.
To fix that, add a specific contextClosed method that will clear the task connection weak pointer.

  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:

(WebKit::ServiceWorkerFetchTask::contextClosed):

  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
  • NetworkProcess/ServiceWorker/WebSWServerToContextConnection.cpp:

(WebKit::WebSWServerToContextConnection::~WebSWServerToContextConnection):

8:33 AM Changeset in webkit [251433] by youenn@apple.com
  • 4 edits in trunk/Source/WebKit

ServiceWorkerFetchTask can use the NetworkConnectionToWebProcess sessionID
https://bugs.webkit.org/show_bug.cgi?id=202208

Reviewed by Alex Christensen.

No need to store the sessionID in ServiceWorkerFetchTask since we can get it from its loader.

  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:

(WebKit::ServiceWorkerFetchTask::ServiceWorkerFetchTask):

  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
  • NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:

(WebKit::WebSWServerConnection::createFetchTask):

8:18 AM Changeset in webkit [251432] by Antti Koivisto
  • 4 edits in trunk

operator==(Vector, Vector) should work with different inline capacities
https://bugs.webkit.org/show_bug.cgi?id=203245

Reviewed by Alex Christensen.

Source/WTF:

Also allow different overflow behavior and minimum capacity.

  • wtf/Vector.h:

(WTF::operator==):
(WTF::operator!=):

Tools:

  • TestWebKitAPI/Tests/WTF/Vector.cpp:

(TestWebKitAPI::TEST):

8:17 AM Changeset in webkit [251431] by magomez@igalia.com
  • 7 edits in trunk

REGRESSION(r244372): [GTK][WPE] fast/images/icon-decoding.html and others are failing
https://bugs.webkit.org/show_bug.cgi?id=197251

Reviewed by Adrian Perez de Castro.

Source/WebCore:

Return 0_s as the duration of incomplete frames in an animation.

Covered by existing tests.

  • platform/image-decoders/ScalableImageDecoder.cpp:

(WebCore::ScalableImageDecoder::frameDurationAtIndex const):

LayoutTests:

Update expectations for passing tests.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/images/icon-decoding-expected.txt:
  • platform/wpe/TestExpectations:
  • platform/wpe/fast/images/icon-decoding-expected.txt:
8:01 AM Changeset in webkit [251430] by youenn@apple.com
  • 3 edits in trunk/Source/WebKit

Remove the ability to fallback to custom scheme handlers after a service worker did not handle the load
https://bugs.webkit.org/show_bug.cgi?id=203239

Reviewed by Alex Christensen.

We remove the ability for service workers to intercept custom scheme handlers.
We can then remove the ability for loads that are not handled by service workers to go through custom scheme handlers.

  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::scheduleLoad):
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::serviceWorkerDidNotHandle):

7:46 AM Changeset in webkit [251429] by Devin Rousso
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION: Sources: when editing style sheets, the content is sometimes suddenly replaced with the original content of the resource
https://bugs.webkit.org/show_bug.cgi?id=203235

Reviewed by Timothy Hatcher.

Each WI.CSSStyleSheet manages it's own state about when it should ignore events from the
backend telling it that it was modified, such as if the frontend caused the update. In these
cases, the WI.CSSStyleSheet itself was early-returning, but the WI.CSSManager wasn't,
meaning that the WI.CSSManager would then override the content even though the specific
WI.CSSStyleSheet knows that its content shouldn't update. To compound this issue, the
WI.CSSManager updates any WI.CSSStyleSheet using a Throttler, so any updates would be
further delayed (first by the protocol travel time) by this, leading to the timing based
intermittent issue. WI.CSSStyleSheet already exposes when it should be updated or not via
WI.CSSStyleSheet.prototype.noteContentDidChange. Rather than have WI.CSSManager just
call that function, it should examine the returned boolean to see if it should continue to
process the update, or if the WI.CSSStyleSheet knows that it should be ignored.

  • UserInterface/Controllers/CSSManager.js:

(WI.CSSManager.prototype.styleSheetChanged):

4:34 AM Changeset in webkit [251428] by clopez@igalia.com
  • 1 edit
    1 add in trunk/Tools

Add a script to run ImageDiff manually
https://bugs.webkit.org/show_bug.cgi?id=203226

Reviewed by Adrian Perez de Castro.

This allows to manually run the ImageDiff tool more easily, that
is sometimes useful when debugging problems with it.

  • Scripts/run-imagediff: Added.
2:43 AM Changeset in webkit [251427] by krit@webkit.org
  • 14 edits in trunk

SVG2: Use DOMMatrix2DInit for setMatrix and createSVGTransformFromMatrix
https://bugs.webkit.org/show_bug.cgi?id=191417

Reviewed by Dean Jackson.

Source/WebCore:

setMatrix and createSVGTransformFromMatrix used to use SVGMatrix as argument.
With SVG 2.0, any DOMPoint2DInit type is supported which inlcudes dictionaries,
DOMMatrix, DOMMatrixReadOnly and SVGMatrix (alias of DOMMatrix).

Extended existing tests.

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::createSVGTransformFromMatrix):

  • svg/SVGSVGElement.h:
  • svg/SVGSVGElement.idl:
  • svg/SVGTransform.h:

(WebCore::SVGTransform::setMatrix):

  • svg/SVGTransform.idl:
  • svg/SVGTransformList.h:
  • svg/SVGTransformList.idl:
  • svg/SVGTransformListValues.cpp:

(WebCore::SVGTransformListValues::createSVGTransformFromMatrix const):

  • svg/SVGTransformListValues.h:

LayoutTests:

Extended existing tests to cover change to new argument
DOMMatrix2DInit.

  • svg/dom/SVGTransform-expected.txt:
  • svg/dom/SVGTransform.html:
  • svg/dom/SVGTransformList-expected.txt:
  • svg/dom/SVGTransformList.html:
2:29 AM Changeset in webkit [251426] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.27.2 release

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit:

  • gtk/NEWS: Add release notes for 2.27.2.
2:24 AM Changeset in webkit [251425] by ysuzuki@apple.com
  • 1116 edits in trunk

[JSC] Thread JSGlobalObject* instead of ExecState*
https://bugs.webkit.org/show_bug.cgi?id=202392

Reviewed by Geoffrey Garen.

LayoutTests/imported/w3c:

  • web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-other-document-expected.txt:

Source/JavaScriptCore:

This patch replaces JSC's convention entirely: instead of passing ExecState*, we pass lexical JSGlobalObject*.
We have many issues historically.

  1. We have a hack like global-exec, since many runtime functions take ExecState* while valid ExecState* is populated only after executing some JS function.
  2. We pass ExecState* without considering whether this is correct one when inlining a function. If inlined function has different realm, exec->lexicalGlobalObject() just returns wrong JSGlobalObject*.

This patch attempts to remove these issues entirely by passing JSGlobalObject* instead of ExecState*.

  1. We change ExecState* to JSGlobalObject*.
  2. JIT operations should take JSGlobalObject* instead of ExecState* to reflect the inlinee's JSGlobalObject* correctly.
  3. We get CallFrame* by using __builtin_frame_address(1) in JIT operations. When it is not available, we put CallFrame* to vm.topCallFrame in the caller side and load it from VM.
  4. We remove ExecState*. All the actual call-frame is called CallFrame*. CallFrame* is passed only when CallFrame* is actually needed: accessing arguments, OSR etc.
  5. LLInt and Baseline slow paths are just getting CallFrame*. It gets CodeBlock from CallFrame* and getting VM& and JSGlobalObject* from it since they do not have inlining.
  6. We basically removed VM::vmEntryGlobalObject. It returns JSGlobalObject* from VMEntryScope. APIs and Completion.cpp use this but they are wrong. And by using lexical JSGlobalObject*, we fixed WPT issues.
  7. This patch does not fix complicated JSGlobalObject* issues. But we put FIXME if it seems wrong and it needs to be revisited.
  8. FunctionConstructor, ArrayConstructor etc. are exposed from JSGlobalObject to use it for InternalFunction::createStructure() without using CallFrame*.
  • API/APICallbackFunction.h:

(JSC::APICallbackFunction::call):
(JSC::APICallbackFunction::construct):

  • API/APICast.h:

(toJS):
(toJSGlobalObject):
(toJSForGC):
(toRef):
(toGlobalRef):

  • API/APIUtils.h:

(handleExceptionIfNeeded):
(setException):

  • API/JSAPIGlobalObject.h:
  • API/JSAPIGlobalObject.mm:

(JSC::JSAPIGlobalObject::moduleLoaderResolve):
(JSC::JSAPIGlobalObject::moduleLoaderImportModule):
(JSC::JSAPIGlobalObject::moduleLoaderFetch):
(JSC::JSAPIGlobalObject::moduleLoaderCreateImportMetaProperties):
(JSC::JSAPIGlobalObject::moduleLoaderEvaluate):
(JSC::JSAPIGlobalObject::loadAndEvaluateJSScriptModule):

  • API/JSAPIValueWrapper.h:
  • API/JSBase.cpp:

(JSEvaluateScriptInternal):
(JSEvaluateScript):
(JSCheckScriptSyntax):
(JSGarbageCollect):
(JSReportExtraMemoryCost):
(JSSynchronousGarbageCollectForDebugging):
(JSSynchronousEdenCollectForDebugging):

  • API/JSBaseInternal.h:
  • API/JSCTestRunnerUtils.cpp:

(JSC::failNextNewCodeBlock):
(JSC::numberOfDFGCompiles):
(JSC::setNeverInline):
(JSC::setNeverOptimize):

  • API/JSCallbackConstructor.h:
  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::JSCallbackObject):
(JSC::JSCallbackObject<Parent>::finishCreation):
(JSC::JSCallbackObject<Parent>::init):
(JSC::JSCallbackObject<Parent>::toStringName):
(JSC::JSCallbackObject<Parent>::getOwnPropertySlot):
(JSC::JSCallbackObject<Parent>::getOwnPropertySlotByIndex):
(JSC::JSCallbackObject<Parent>::defaultValue):
(JSC::JSCallbackObject<Parent>::put):
(JSC::JSCallbackObject<Parent>::putByIndex):
(JSC::JSCallbackObject<Parent>::deleteProperty):
(JSC::JSCallbackObject<Parent>::deletePropertyByIndex):
(JSC::JSCallbackObject<Parent>::construct):
(JSC::JSCallbackObject<Parent>::customHasInstance):
(JSC::JSCallbackObject<Parent>::call):
(JSC::JSCallbackObject<Parent>::getOwnNonIndexPropertyNames):
(JSC::JSCallbackObject<Parent>::getStaticValue):
(JSC::JSCallbackObject<Parent>::staticFunctionGetter):
(JSC::JSCallbackObject<Parent>::callbackGetter):

  • API/JSClassRef.cpp:

(OpaqueJSClass::contextData):
(OpaqueJSClass::staticValues):
(OpaqueJSClass::staticFunctions):
(OpaqueJSClass::prototype):

  • API/JSClassRef.h:
  • API/JSContext.mm:

(-[JSContext ensureWrapperMap]):
(-[JSContext evaluateJSScript:]):
(-[JSContext dependencyIdentifiersForModuleJSScript:]):
(-[JSContext setException:]):
(-[JSContext initWithGlobalContextRef:]):
(-[JSContext wrapperMap]):

  • API/JSContextRef.cpp:

(internalScriptTimeoutCallback):
(JSGlobalContextCreateInGroup):
(JSGlobalContextRetain):
(JSGlobalContextRelease):
(JSContextGetGlobalObject):
(JSContextGetGroup):
(JSContextGetGlobalContext):
(JSGlobalContextCopyName):
(JSGlobalContextSetName):
(JSGlobalContextSetUnhandledRejectionCallback):
(JSContextCreateBacktrace):
(JSGlobalContextGetRemoteInspectionEnabled):
(JSGlobalContextSetRemoteInspectionEnabled):
(JSGlobalContextGetIncludesNativeCallStackWhenReportingExceptions):
(JSGlobalContextSetIncludesNativeCallStackWhenReportingExceptions):
(JSGlobalContextGetDebuggerRunLoop):
(JSGlobalContextSetDebuggerRunLoop):
(JSGlobalContextGetAugmentableInspectorController):

  • API/JSManagedValue.mm:

(-[JSManagedValue initWithValue:]):
(-[JSManagedValue value]):

  • API/JSObjectRef.cpp:

(JSObjectMake):
(JSObjectMakeFunctionWithCallback):
(JSObjectMakeConstructor):
(JSObjectMakeFunction):
(JSObjectMakeArray):
(JSObjectMakeDate):
(JSObjectMakeError):
(JSObjectMakeRegExp):
(JSObjectMakeDeferredPromise):
(JSObjectGetPrototype):
(JSObjectSetPrototype):
(JSObjectHasProperty):
(JSObjectGetProperty):
(JSObjectSetProperty):
(JSObjectHasPropertyForKey):
(JSObjectGetPropertyForKey):
(JSObjectSetPropertyForKey):
(JSObjectDeletePropertyForKey):
(JSObjectGetPropertyAtIndex):
(JSObjectSetPropertyAtIndex):
(JSObjectDeleteProperty):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):
(JSObjectIsFunction):
(JSObjectCallAsFunction):
(JSObjectIsConstructor):
(JSObjectCallAsConstructor):
(JSObjectCopyPropertyNames):
(JSObjectGetGlobalContext):

  • API/JSScriptRef.cpp:
  • API/JSTypedArray.cpp:

(createTypedArray):
(JSValueGetTypedArrayType):
(JSObjectMakeTypedArray):
(JSObjectMakeTypedArrayWithBytesNoCopy):
(JSObjectMakeTypedArrayWithArrayBuffer):
(JSObjectMakeTypedArrayWithArrayBufferAndOffset):
(JSObjectGetTypedArrayBytesPtr):
(JSObjectGetTypedArrayLength):
(JSObjectGetTypedArrayByteLength):
(JSObjectGetTypedArrayByteOffset):
(JSObjectGetTypedArrayBuffer):
(JSObjectMakeArrayBufferWithBytesNoCopy):
(JSObjectGetArrayBufferBytesPtr):
(JSObjectGetArrayBufferByteLength):

  • API/JSValue.mm:

(JSContainerConvertor::add):
(reportExceptionToInspector):
(valueToObjectWithoutCopy):
(ObjcContainerConvertor::add):

  • API/JSValueRef.cpp:

(JSValueGetType):
(JSValueIsUndefined):
(JSValueIsNull):
(JSValueIsBoolean):
(JSValueIsNumber):
(JSValueIsString):
(JSValueIsObject):
(JSValueIsSymbol):
(JSValueIsArray):
(JSValueIsDate):
(JSValueIsObjectOfClass):
(JSValueIsEqual):
(JSValueIsStrictEqual):
(JSValueIsInstanceOfConstructor):
(JSValueMakeUndefined):
(JSValueMakeNull):
(JSValueMakeBoolean):
(JSValueMakeNumber):
(JSValueMakeSymbol):
(JSValueMakeString):
(JSValueMakeFromJSONString):
(JSValueCreateJSONString):
(JSValueToBoolean):
(JSValueToNumber):
(JSValueToStringCopy):
(JSValueToObject):
(JSValueProtect):
(JSValueUnprotect):

  • API/JSWeakObjectMapRefPrivate.cpp:
  • API/JSWrapperMap.mm:

(constructorHasInstance):
(makeWrapper):
(putNonEnumerable):
(copyMethodsToObject):
(-[JSObjCClassInfo wrapperForObject:inContext:]):
(-[JSObjCClassInfo structureInContext:]):

  • API/ObjCCallbackFunction.mm:

(JSC::objCCallbackFunctionCallAsFunction):
(JSC::objCCallbackFunctionCallAsConstructor):
(objCCallbackFunctionForInvocation):

  • API/glib/JSCCallbackFunction.cpp:

(JSC::JSCCallbackFunction::call):
(JSC::JSCCallbackFunction::construct):

  • API/glib/JSCClass.cpp:

(isWrappedObject):
(jscContextForObject):
(jscClassCreateConstructor):
(jscClassAddMethod):

  • API/glib/JSCContext.cpp:

(jsc_context_evaluate_in_object):
(jsc_context_check_syntax):

  • API/glib/JSCException.cpp:

(jscExceptionCreate):

  • API/glib/JSCValue.cpp:

(jsc_value_object_define_property_data):
(jsc_value_object_define_property_accessor):
(jscValueFunctionCreate):

  • API/glib/JSCWeakValue.cpp:

(jscWeakValueInitialize):
(jsc_weak_value_get_value):

  • API/glib/JSCWrapperMap.cpp:

(JSC::WrapperMap::createJSWrappper):
(JSC::WrapperMap::createContextWithJSWrappper):

  • API/tests/JSONParseTest.cpp:

(testJSONParse):

  • API/tests/JSObjectGetProxyTargetTest.cpp:

(testJSObjectGetProxyTarget):

  • API/tests/JSWrapperMapTests.mm:

(+[JSWrapperMapTests testStructureIdentity]):

  • API/tests/testapi.cpp:

(APIContext::APIContext):
(APIContext::operator JSC::JSGlobalObject*):
(APIContext::operator JSC::ExecState*): Deleted.

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptCallArgumentHandler::appendArgument):
(Deprecated::ScriptFunctionCall::ScriptFunctionCall):
(Deprecated::ScriptFunctionCall::call):

  • bindings/ScriptFunctionCall.h:
  • bindings/ScriptObject.cpp:

(Deprecated::ScriptObject::ScriptObject):

  • bindings/ScriptObject.h:

(Deprecated::ScriptObject::globalObject const):
(Deprecated::ScriptObject::scriptState const): Deleted.

  • bindings/ScriptValue.cpp:

(Inspector::jsToInspectorValue):
(Inspector::toInspectorValue):

  • bindings/ScriptValue.h:
  • bytecode/AccessCase.cpp:

(JSC::AccessCase::generateImpl):

  • bytecode/AccessCaseSnippetParams.cpp:

(JSC::SlowPathCallGeneratorWithArguments::generateImpl):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::setConstantIdentifierSetRegisters):
(JSC::CodeBlock::setConstantRegisters):
(JSC::CodeBlock::linkIncomingCall):
(JSC::CodeBlock::linkIncomingPolymorphicCall):
(JSC::CodeBlock::noticeIncomingCall):

  • bytecode/CodeBlock.h:

(JSC::CallFrame::r):
(JSC::CallFrame::uncheckedR):
(JSC::ExecState::r): Deleted.
(JSC::ExecState::uncheckedR): Deleted.

  • bytecode/DirectEvalCodeCache.cpp:

(JSC::DirectEvalCodeCache::setSlow):

  • bytecode/DirectEvalCodeCache.h:

(JSC::DirectEvalCodeCache::set):

  • bytecode/InlineCallFrame.cpp:

(JSC::InlineCallFrame::calleeForCallFrame const):

  • bytecode/InlineCallFrame.h:
  • bytecode/InternalFunctionAllocationProfile.h:

(JSC::InternalFunctionAllocationProfile::createAllocationStructureFromBase):

  • bytecode/ObjectPropertyConditionSet.cpp:

(JSC::generateConditionsForPropertyMiss):
(JSC::generateConditionsForPropertySetterMiss):
(JSC::generateConditionsForPrototypePropertyHit):
(JSC::generateConditionsForPrototypePropertyHitCustom):
(JSC::generateConditionsForInstanceOf):

  • bytecode/ObjectPropertyConditionSet.h:
  • bytecode/PolymorphicAccess.cpp:

(JSC::AccessGenerationState::emitExplicitExceptionHandler):

  • bytecode/StructureStubInfo.h:

(JSC::appropriateGenericGetByIdFunction):

  • bytecode/UnlinkedFunctionExecutable.cpp:

(JSC::UnlinkedFunctionExecutable::fromGlobalCode):

  • bytecode/UnlinkedFunctionExecutable.h:
  • bytecode/ValueRecovery.cpp:

(JSC::ValueRecovery::recover const):

  • bytecode/ValueRecovery.h:
  • debugger/Debugger.cpp:

(JSC::Debugger::attach):
(JSC::Debugger::hasBreakpoint):
(JSC::Debugger::breakProgram):
(JSC::lexicalGlobalObjectForCallFrame):
(JSC::Debugger::updateCallFrame):
(JSC::Debugger::pauseIfNeeded):
(JSC::Debugger::exception):
(JSC::Debugger::atStatement):
(JSC::Debugger::atExpression):
(JSC::Debugger::callEvent):
(JSC::Debugger::returnEvent):
(JSC::Debugger::unwindEvent):
(JSC::Debugger::willExecuteProgram):
(JSC::Debugger::didExecuteProgram):
(JSC::Debugger::didReachBreakpoint):

  • debugger/Debugger.h:
  • debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::create):
(JSC::DebuggerCallFrame::globalObject):
(JSC::DebuggerCallFrame::deprecatedVMEntryGlobalObject const):
(JSC::DebuggerCallFrame::thisValue const):
(JSC::DebuggerCallFrame::evaluateWithScopeExtension):
(JSC::DebuggerCallFrame::sourceIDForCallFrame):
(JSC::DebuggerCallFrame::globalExec): Deleted.
(JSC::DebuggerCallFrame::vmEntryGlobalObject const): Deleted.

  • debugger/DebuggerCallFrame.h:
  • debugger/DebuggerEvalEnabler.h:

(JSC::DebuggerEvalEnabler::DebuggerEvalEnabler):
(JSC::DebuggerEvalEnabler::~DebuggerEvalEnabler):

  • debugger/DebuggerScope.cpp:

(JSC::DebuggerScope::toStringName):
(JSC::DebuggerScope::getOwnPropertySlot):
(JSC::DebuggerScope::put):
(JSC::DebuggerScope::deleteProperty):
(JSC::DebuggerScope::getOwnPropertyNames):
(JSC::DebuggerScope::defineOwnProperty):
(JSC::DebuggerScope::caughtValue const):

  • debugger/DebuggerScope.h:
  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::booleanResult):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGArithMode.h:
  • dfg/DFGArrayifySlowPathGenerator.h:
  • dfg/DFGCallArrayAllocatorSlowPathGenerator.h:

(JSC::DFG::CallArrayAllocatorSlowPathGenerator::CallArrayAllocatorSlowPathGenerator):
(JSC::DFG::CallArrayAllocatorWithVariableSizeSlowPathGenerator::CallArrayAllocatorWithVariableSizeSlowPathGenerator):
(JSC::DFG::CallArrayAllocatorWithVariableStructureVariableSizeSlowPathGenerator::CallArrayAllocatorWithVariableStructureVariableSizeSlowPathGenerator):

  • dfg/DFGCallCreateDirectArgumentsSlowPathGenerator.h:
  • dfg/DFGGraph.h:

(JSC::DFG::Graph::globalThisObjectFor):

  • dfg/DFGJITCode.cpp:

(JSC::DFG::JITCode::reconstruct):

  • dfg/DFGJITCode.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileExceptionHandlers):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):
(JSC::DFG::prepareCatchOSREntry):

  • dfg/DFGOSREntry.h:

(JSC::DFG::prepareOSREntry):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::createClonedArgumentsDuringExit):
(JSC::DFG::OSRExit::executeOSRExit):
(JSC::DFG::adjustAndJumpToTarget):
(JSC::DFG::printOSRExit):
(JSC::DFG::OSRExit::emitRestoreArguments):
(JSC::DFG::OSRExit::compileOSRExit):
(JSC::DFG::OSRExit::debugOperationPrintSpeculationFailure):

  • dfg/DFGOSRExit.h:
  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::osrWriteBarrier):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGOperations.cpp:

(JSC::DFG::putByVal):
(JSC::DFG::putByValInternal):
(JSC::DFG::putByValCellInternal):
(JSC::DFG::putByValCellStringInternal):
(JSC::DFG::newTypedArrayWithSize):
(JSC::DFG::putWithThis):
(JSC::DFG::binaryOp):
(JSC::DFG::bitwiseBinaryOp):
(JSC::DFG::getByValObject):

  • dfg/DFGOperations.h:
  • dfg/DFGSaneStringGetByValSlowPathGenerator.h:

(JSC::DFG::SaneStringGetByValSlowPathGenerator::SaneStringGetByValSlowPathGenerator):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileInById):
(JSC::DFG::SpeculativeJIT::compileInByVal):
(JSC::DFG::SpeculativeJIT::compileDeleteById):
(JSC::DFG::SpeculativeJIT::compileDeleteByVal):
(JSC::DFG::SpeculativeJIT::compilePushWithScope):
(JSC::DFG::SpeculativeJIT::compileStringSlice):
(JSC::DFG::SpeculativeJIT::compileToLowerCase):
(JSC::DFG::SpeculativeJIT::compileCheckTraps):
(JSC::DFG::SpeculativeJIT::compileDoublePutByVal):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::SpeculativeJIT::compileFromCharCode):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetByValForObjectWithString):
(JSC::DFG::SpeculativeJIT::compileGetByValForObjectWithSymbol):
(JSC::DFG::SpeculativeJIT::compilePutByValForCellWithString):
(JSC::DFG::SpeculativeJIT::compilePutByValForCellWithSymbol):
(JSC::DFG::SpeculativeJIT::compileGetByValWithThis):
(JSC::DFG::SpeculativeJIT::compileParseInt):
(JSC::DFG::SpeculativeJIT::compileInstanceOfForCells):
(JSC::DFG::SpeculativeJIT::compileValueBitNot):
(JSC::DFG::SpeculativeJIT::emitUntypedBitOp):
(JSC::DFG::SpeculativeJIT::compileValueBitwiseOp):
(JSC::DFG::SpeculativeJIT::emitUntypedRightShiftBitOp):
(JSC::DFG::SpeculativeJIT::compileValueLShiftOp):
(JSC::DFG::SpeculativeJIT::compileValueBitRShift):
(JSC::DFG::SpeculativeJIT::compileValueAdd):
(JSC::DFG::SpeculativeJIT::compileValueSub):
(JSC::DFG::SpeculativeJIT::compileMathIC):
(JSC::DFG::SpeculativeJIT::compileInstanceOfCustom):
(JSC::DFG::SpeculativeJIT::compileToObjectOrCallObjectConstructor):
(JSC::DFG::SpeculativeJIT::compileArithAbs):
(JSC::DFG::SpeculativeJIT::compileArithClz32):
(JSC::DFG::SpeculativeJIT::compileArithDoubleUnaryOp):
(JSC::DFG::SpeculativeJIT::compileValueMul):
(JSC::DFG::SpeculativeJIT::compileValueDiv):
(JSC::DFG::SpeculativeJIT::compileArithFRound):
(JSC::DFG::SpeculativeJIT::compileValueMod):
(JSC::DFG::SpeculativeJIT::compileArithRounding):
(JSC::DFG::SpeculativeJIT::compileArithSqrt):
(JSC::DFG::SpeculativeJIT::compileValuePow):
(JSC::DFG::SpeculativeJIT::compileStringEquality):
(JSC::DFG::SpeculativeJIT::compileStringCompare):
(JSC::DFG::SpeculativeJIT::compileSameValue):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetByValOnDirectArguments):
(JSC::DFG::SpeculativeJIT::compileNewFunction):
(JSC::DFG::SpeculativeJIT::compileSetFunctionName):
(JSC::DFG::SpeculativeJIT::compileLoadVarargs):
(JSC::DFG::SpeculativeJIT::compileCreateActivation):
(JSC::DFG::SpeculativeJIT::compileCreateDirectArguments):
(JSC::DFG::SpeculativeJIT::compileCreateScopedArguments):
(JSC::DFG::SpeculativeJIT::compileCreateClonedArguments):
(JSC::DFG::SpeculativeJIT::compileCreateRest):
(JSC::DFG::SpeculativeJIT::compileSpread):
(JSC::DFG::SpeculativeJIT::compileNewArray):
(JSC::DFG::SpeculativeJIT::compileNewArrayWithSpread):
(JSC::DFG::SpeculativeJIT::compileArraySlice):
(JSC::DFG::SpeculativeJIT::compileArrayIndexOf):
(JSC::DFG::SpeculativeJIT::compileArrayPush):
(JSC::DFG::SpeculativeJIT::compileNotifyWrite):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileCallDOM):
(JSC::DFG::SpeculativeJIT::compileCallDOMGetter):
(JSC::DFG::SpeculativeJIT::compileToStringOrCallStringConstructorOrStringValueOf):
(JSC::DFG::SpeculativeJIT::compileNumberToStringWithValidRadixConstant):
(JSC::DFG::SpeculativeJIT::compileNumberToStringWithRadix):
(JSC::DFG::SpeculativeJIT::compileNewStringObject):
(JSC::DFG::SpeculativeJIT::compileNewSymbol):
(JSC::DFG::SpeculativeJIT::compileNewTypedArrayWithSize):
(JSC::DFG::SpeculativeJIT::compileNewRegexp):
(JSC::DFG::SpeculativeJIT::emitSwitchImm):
(JSC::DFG::SpeculativeJIT::emitSwitchCharStringJump):
(JSC::DFG::SpeculativeJIT::emitSwitchChar):
(JSC::DFG::SpeculativeJIT::emitSwitchStringOnString):
(JSC::DFG::SpeculativeJIT::emitSwitchString):
(JSC::DFG::SpeculativeJIT::compileStoreBarrier):
(JSC::DFG::SpeculativeJIT::compilePutAccessorById):
(JSC::DFG::SpeculativeJIT::compilePutGetterSetterById):
(JSC::DFG::SpeculativeJIT::compileResolveScope):
(JSC::DFG::SpeculativeJIT::compileResolveScopeForHoistingFuncDeclInEval):
(JSC::DFG::SpeculativeJIT::compileGetDynamicVar):
(JSC::DFG::SpeculativeJIT::compilePutDynamicVar):
(JSC::DFG::SpeculativeJIT::compilePutAccessorByVal):
(JSC::DFG::SpeculativeJIT::compileStringReplace):
(JSC::DFG::SpeculativeJIT::compileDefineDataProperty):
(JSC::DFG::SpeculativeJIT::compileDefineAccessorProperty):
(JSC::DFG::SpeculativeJIT::compileThrow):
(JSC::DFG::SpeculativeJIT::compileThrowStaticError):
(JSC::DFG::SpeculativeJIT::compileHasGenericProperty):
(JSC::DFG::SpeculativeJIT::compileToIndexString):
(JSC::DFG::SpeculativeJIT::compilePutByIdWithThis):
(JSC::DFG::SpeculativeJIT::compileHasStructureProperty):
(JSC::DFG::SpeculativeJIT::compileGetPropertyEnumerator):
(JSC::DFG::SpeculativeJIT::compileStrCat):
(JSC::DFG::SpeculativeJIT::compileNewArrayBuffer):
(JSC::DFG::SpeculativeJIT::compileNewArrayWithSize):
(JSC::DFG::SpeculativeJIT::compileNewTypedArray):
(JSC::DFG::SpeculativeJIT::compileToThis):
(JSC::DFG::SpeculativeJIT::compileObjectKeys):
(JSC::DFG::SpeculativeJIT::compileObjectCreate):
(JSC::DFG::SpeculativeJIT::compileCreateThis):
(JSC::DFG::SpeculativeJIT::compileCreatePromise):
(JSC::DFG::SpeculativeJIT::compileCreateInternalFieldObject):
(JSC::DFG::SpeculativeJIT::compileNewObject):
(JSC::DFG::SpeculativeJIT::compileNewPromise):
(JSC::DFG::SpeculativeJIT::compileNewInternalFieldObject):
(JSC::DFG::SpeculativeJIT::compileToPrimitive):
(JSC::DFG::SpeculativeJIT::compileSetAdd):
(JSC::DFG::SpeculativeJIT::compileMapSet):
(JSC::DFG::SpeculativeJIT::compileWeakSetAdd):
(JSC::DFG::SpeculativeJIT::compileWeakMapSet):
(JSC::DFG::SpeculativeJIT::compileGetPrototypeOf):
(JSC::DFG::SpeculativeJIT::compileAllocateNewArrayWithSize):
(JSC::DFG::SpeculativeJIT::compileHasIndexedProperty):
(JSC::DFG::SpeculativeJIT::compileGetDirectPname):
(JSC::DFG::SpeculativeJIT::compileProfileType):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompare):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch):
(JSC::DFG::SpeculativeJIT::compileBigIntEquality):
(JSC::DFG::SpeculativeJIT::compileMakeRope):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperationWithCallFrameRollbackOnException):
(JSC::DFG::SpeculativeJIT::prepareForExternalCall):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedGetByIdWithThis):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileContiguousPutByVal):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedGetByIdWithThis):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeStrictEq):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):

  • dynbench.cpp:

(main):

  • ftl/FTLCompile.cpp:

(JSC::FTL::compile):

  • ftl/FTLGeneratedFunction.h:
  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::lower):
(JSC::FTL::DFG::LowerDFGToB3::compileToObjectOrCallObjectConstructor):
(JSC::FTL::DFG::LowerDFGToB3::compileToThis):
(JSC::FTL::DFG::LowerDFGToB3::compileValueAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileValueSub):
(JSC::FTL::DFG::LowerDFGToB3::compileValueMul):
(JSC::FTL::DFG::LowerDFGToB3::compileUnaryMathIC):
(JSC::FTL::DFG::LowerDFGToB3::compileBinaryMathIC):
(JSC::FTL::DFG::LowerDFGToB3::compileStrCat):
(JSC::FTL::DFG::LowerDFGToB3::compileArithClz32):
(JSC::FTL::DFG::LowerDFGToB3::compileValueDiv):
(JSC::FTL::DFG::LowerDFGToB3::compileValueMod):
(JSC::FTL::DFG::LowerDFGToB3::compileArithAbs):
(JSC::FTL::DFG::LowerDFGToB3::compileArithUnary):
(JSC::FTL::DFG::LowerDFGToB3::compileValuePow):
(JSC::FTL::DFG::LowerDFGToB3::compileArithRound):
(JSC::FTL::DFG::LowerDFGToB3::compileArithFloor):
(JSC::FTL::DFG::LowerDFGToB3::compileArithCeil):
(JSC::FTL::DFG::LowerDFGToB3::compileArithTrunc):
(JSC::FTL::DFG::LowerDFGToB3::compileArithSqrt):
(JSC::FTL::DFG::LowerDFGToB3::compileArithFRound):
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitNot):
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitAnd):
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitOr):
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitXor):
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitRShift):
(JSC::FTL::DFG::LowerDFGToB3::compileValueBitLShift):
(JSC::FTL::DFG::LowerDFGToB3::compileArrayify):
(JSC::FTL::DFG::LowerDFGToB3::compileGetById):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByIdWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByValWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByIdWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByValWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compileAtomicsReadModifyWrite):
(JSC::FTL::DFG::LowerDFGToB3::compileAtomicsIsLockFree):
(JSC::FTL::DFG::LowerDFGToB3::compileDefineDataProperty):
(JSC::FTL::DFG::LowerDFGToB3::compileDefineAccessorProperty):
(JSC::FTL::DFG::LowerDFGToB3::compilePutById):
(JSC::FTL::DFG::LowerDFGToB3::compileGetIndexedPropertyStorage):
(JSC::FTL::DFG::LowerDFGToB3::compileGetPrototypeOf):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByVal):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByVal):
(JSC::FTL::DFG::LowerDFGToB3::compilePutAccessorById):
(JSC::FTL::DFG::LowerDFGToB3::compilePutGetterSetterById):
(JSC::FTL::DFG::LowerDFGToB3::compilePutAccessorByVal):
(JSC::FTL::DFG::LowerDFGToB3::compileDeleteById):
(JSC::FTL::DFG::LowerDFGToB3::compileDeleteByVal):
(JSC::FTL::DFG::LowerDFGToB3::compileArrayPush):
(JSC::FTL::DFG::LowerDFGToB3::compileArrayIndexOf):
(JSC::FTL::DFG::LowerDFGToB3::compileArrayPop):
(JSC::FTL::DFG::LowerDFGToB3::compilePushWithScope):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateActivation):
(JSC::FTL::DFG::LowerDFGToB3::compileNewFunction):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateDirectArguments):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateScopedArguments):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateClonedArguments):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateRest):
(JSC::FTL::DFG::LowerDFGToB3::compileObjectKeys):
(JSC::FTL::DFG::LowerDFGToB3::compileObjectCreate):
(JSC::FTL::DFG::LowerDFGToB3::compileNewPromise):
(JSC::FTL::DFG::LowerDFGToB3::compileNewInternalFieldObject):
(JSC::FTL::DFG::LowerDFGToB3::compileNewStringObject):
(JSC::FTL::DFG::LowerDFGToB3::compileNewSymbol):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArray):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayWithSpread):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateThis):
(JSC::FTL::DFG::LowerDFGToB3::compileCreatePromise):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateInternalFieldObject):
(JSC::FTL::DFG::LowerDFGToB3::compileSpread):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayBuffer):
(JSC::FTL::DFG::LowerDFGToB3::compileNewArrayWithSize):
(JSC::FTL::DFG::LowerDFGToB3::compileNewTypedArray):
(JSC::FTL::DFG::LowerDFGToB3::compileToNumber):
(JSC::FTL::DFG::LowerDFGToB3::compileToStringOrCallStringConstructorOrStringValueOf):
(JSC::FTL::DFG::LowerDFGToB3::compileToPrimitive):
(JSC::FTL::DFG::LowerDFGToB3::compileMakeRope):
(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt):
(JSC::FTL::DFG::LowerDFGToB3::compileStringFromCharCode):
(JSC::FTL::DFG::LowerDFGToB3::compileNotifyWrite):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
(JSC::FTL::DFG::LowerDFGToB3::compileSameValue):
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstruct):
(JSC::FTL::DFG::LowerDFGToB3::compileTailCall):
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstructVarargsSpread):
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstructVarargs):
(JSC::FTL::DFG::LowerDFGToB3::compileCallEval):
(JSC::FTL::DFG::LowerDFGToB3::compileLoadVarargs):
(JSC::FTL::DFG::LowerDFGToB3::compileSwitch):
(JSC::FTL::DFG::LowerDFGToB3::compileThrow):
(JSC::FTL::DFG::LowerDFGToB3::compileThrowStaticError):
(JSC::FTL::DFG::LowerDFGToB3::mapHashString):
(JSC::FTL::DFG::LowerDFGToB3::compileMapHash):
(JSC::FTL::DFG::LowerDFGToB3::compileGetMapBucket):
(JSC::FTL::DFG::LowerDFGToB3::compileSetAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileMapSet):
(JSC::FTL::DFG::LowerDFGToB3::compileWeakSetAdd):
(JSC::FTL::DFG::LowerDFGToB3::compileWeakMapSet):
(JSC::FTL::DFG::LowerDFGToB3::compileInByVal):
(JSC::FTL::DFG::LowerDFGToB3::compileInById):
(JSC::FTL::DFG::LowerDFGToB3::compileHasOwnProperty):
(JSC::FTL::DFG::LowerDFGToB3::compileParseInt):
(JSC::FTL::DFG::LowerDFGToB3::compileInstanceOf):
(JSC::FTL::DFG::LowerDFGToB3::compileInstanceOfCustom):
(JSC::FTL::DFG::LowerDFGToB3::compileHasIndexedProperty):
(JSC::FTL::DFG::LowerDFGToB3::compileHasGenericProperty):
(JSC::FTL::DFG::LowerDFGToB3::compileHasStructureProperty):
(JSC::FTL::DFG::LowerDFGToB3::compileGetDirectPname):
(JSC::FTL::DFG::LowerDFGToB3::compileGetPropertyEnumerator):
(JSC::FTL::DFG::LowerDFGToB3::compileToIndexString):
(JSC::FTL::DFG::LowerDFGToB3::compileMaterializeNewObject):
(JSC::FTL::DFG::LowerDFGToB3::compileMaterializeCreateActivation):
(JSC::FTL::DFG::LowerDFGToB3::compileCheckTraps):
(JSC::FTL::DFG::LowerDFGToB3::compileRegExpExec):
(JSC::FTL::DFG::LowerDFGToB3::compileRegExpExecNonGlobalOrSticky):
(JSC::FTL::DFG::LowerDFGToB3::compileRegExpMatchFastGlobal):
(JSC::FTL::DFG::LowerDFGToB3::compileRegExpTest):
(JSC::FTL::DFG::LowerDFGToB3::compileRegExpMatchFast):
(JSC::FTL::DFG::LowerDFGToB3::compileNewRegexp):
(JSC::FTL::DFG::LowerDFGToB3::compileSetFunctionName):
(JSC::FTL::DFG::LowerDFGToB3::compileStringReplace):
(JSC::FTL::DFG::LowerDFGToB3::allocatePropertyStorage):
(JSC::FTL::DFG::LowerDFGToB3::reallocatePropertyStorage):
(JSC::FTL::DFG::LowerDFGToB3::allocatePropertyStorageWithSizeImpl):
(JSC::FTL::DFG::LowerDFGToB3::getById):
(JSC::FTL::DFG::LowerDFGToB3::getByIdWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compare):
(JSC::FTL::DFG::LowerDFGToB3::compileStringSlice):
(JSC::FTL::DFG::LowerDFGToB3::compileToLowerCase):
(JSC::FTL::DFG::LowerDFGToB3::compileNumberToStringWithRadix):
(JSC::FTL::DFG::LowerDFGToB3::compileNumberToStringWithValidRadixConstant):
(JSC::FTL::DFG::LowerDFGToB3::compileResolveScopeForHoistingFuncDeclInEval):
(JSC::FTL::DFG::LowerDFGToB3::compileResolveScope):
(JSC::FTL::DFG::LowerDFGToB3::compileGetDynamicVar):
(JSC::FTL::DFG::LowerDFGToB3::compilePutDynamicVar):
(JSC::FTL::DFG::LowerDFGToB3::compileCallDOM):
(JSC::FTL::DFG::LowerDFGToB3::compileCallDOMGetter):
(JSC::FTL::DFG::LowerDFGToB3::nonSpeculativeCompare):
(JSC::FTL::DFG::LowerDFGToB3::stringsEqual):
(JSC::FTL::DFG::LowerDFGToB3::emitBinarySnippet):
(JSC::FTL::DFG::LowerDFGToB3::emitBinaryBitOpSnippet):
(JSC::FTL::DFG::LowerDFGToB3::emitRightShiftSnippet):
(JSC::FTL::DFG::LowerDFGToB3::allocateObject):
(JSC::FTL::DFG::LowerDFGToB3::allocateJSArray):
(JSC::FTL::DFG::LowerDFGToB3::ensureShadowChickenPacket):
(JSC::FTL::DFG::LowerDFGToB3::contiguousPutByValOutOfBounds):
(JSC::FTL::DFG::LowerDFGToB3::switchStringSlow):
(JSC::FTL::DFG::LowerDFGToB3::emitStoreBarrier):
(JSC::FTL::DFG::LowerDFGToB3::callCheck):

  • ftl/FTLOSREntry.cpp:

(JSC::FTL::prepareOSREntry):

  • ftl/FTLOSREntry.h:
  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):
(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLOSRExitCompiler.h:
  • ftl/FTLOperations.cpp:

(JSC::FTL::operationPopulateObjectInOSR):
(JSC::FTL::operationMaterializeObjectInOSR):
(JSC::FTL::compileFTLLazySlowPath):

  • ftl/FTLOperations.h:
  • ftl/FTLSlowPathCall.h:

(JSC::FTL::callOperation):

  • generator/Metadata.rb:
  • heap/Handle.h:
  • heap/HeapCell.h:
  • heap/HeapSnapshotBuilder.cpp:

(JSC::HeapSnapshotBuilder::json):

  • inspector/ConsoleMessage.cpp:

(Inspector::ConsoleMessage::ConsoleMessage):
(Inspector::ConsoleMessage::autogenerateMetadata):
(Inspector::ConsoleMessage::addToFrontend):
(Inspector::ConsoleMessage::globalObject const):
(Inspector::ConsoleMessage::scriptState const): Deleted.

  • inspector/ConsoleMessage.h:
  • inspector/InjectedScript.cpp:

(Inspector::InjectedScript::wrapCallFrames const):
(Inspector::InjectedScript::wrapObject const):
(Inspector::InjectedScript::wrapJSONString const):
(Inspector::InjectedScript::wrapTable const):
(Inspector::InjectedScript::previewValue const):
(Inspector::InjectedScript::arrayFromVector):

  • inspector/InjectedScriptBase.cpp:

(Inspector::InjectedScriptBase::hasAccessToInspectedScriptState const):
(Inspector::InjectedScriptBase::callFunctionWithEvalEnabled const):
(Inspector::InjectedScriptBase::makeCall):
(Inspector::InjectedScriptBase::makeAsyncCall):

  • inspector/InjectedScriptBase.h:
  • inspector/InjectedScriptHost.cpp:

(Inspector::InjectedScriptHost::wrapper):

  • inspector/InjectedScriptHost.h:
  • inspector/InjectedScriptManager.cpp:

(Inspector::InjectedScriptManager::injectedScriptIdFor):
(Inspector::InjectedScriptManager::createInjectedScript):
(Inspector::InjectedScriptManager::injectedScriptFor):

  • inspector/InjectedScriptManager.h:
  • inspector/InjectedScriptModule.cpp:

(Inspector::InjectedScriptModule::ensureInjected):

  • inspector/InjectedScriptModule.h:
  • inspector/InspectorEnvironment.h:
  • inspector/JSGlobalObjectConsoleClient.cpp:

(Inspector::JSGlobalObjectConsoleClient::messageWithTypeAndLevel):
(Inspector::JSGlobalObjectConsoleClient::count):
(Inspector::JSGlobalObjectConsoleClient::countReset):
(Inspector::JSGlobalObjectConsoleClient::profile):
(Inspector::JSGlobalObjectConsoleClient::profileEnd):
(Inspector::JSGlobalObjectConsoleClient::takeHeapSnapshot):
(Inspector::JSGlobalObjectConsoleClient::time):
(Inspector::JSGlobalObjectConsoleClient::timeLog):
(Inspector::JSGlobalObjectConsoleClient::timeEnd):
(Inspector::JSGlobalObjectConsoleClient::timeStamp):
(Inspector::JSGlobalObjectConsoleClient::record):
(Inspector::JSGlobalObjectConsoleClient::recordEnd):
(Inspector::JSGlobalObjectConsoleClient::screenshot):

  • inspector/JSGlobalObjectConsoleClient.h:
  • inspector/JSGlobalObjectInspectorController.cpp:

(Inspector::JSGlobalObjectInspectorController::reportAPIException):

  • inspector/JSGlobalObjectInspectorController.h:
  • inspector/JSGlobalObjectScriptDebugServer.h:
  • inspector/JSInjectedScriptHost.cpp:

(Inspector::JSInjectedScriptHost::evaluate const):
(Inspector::JSInjectedScriptHost::savedResultAlias const):
(Inspector::JSInjectedScriptHost::evaluateWithScopeExtension):
(Inspector::JSInjectedScriptHost::internalConstructorName):
(Inspector::JSInjectedScriptHost::isHTMLAllCollection):
(Inspector::JSInjectedScriptHost::isPromiseRejectedWithNativeGetterTypeError):
(Inspector::JSInjectedScriptHost::subtype):
(Inspector::JSInjectedScriptHost::functionDetails):
(Inspector::constructInternalProperty):
(Inspector::JSInjectedScriptHost::getInternalProperties):
(Inspector::JSInjectedScriptHost::proxyTargetValue):
(Inspector::JSInjectedScriptHost::weakMapSize):
(Inspector::JSInjectedScriptHost::weakMapEntries):
(Inspector::JSInjectedScriptHost::weakSetSize):
(Inspector::JSInjectedScriptHost::weakSetEntries):
(Inspector::cloneArrayIteratorObject):
(Inspector::cloneMapIteratorObject):
(Inspector::cloneSetIteratorObject):
(Inspector::JSInjectedScriptHost::iteratorEntries):
(Inspector::checkForbiddenPrototype):
(Inspector::JSInjectedScriptHost::queryInstances):
(Inspector::JSInjectedScriptHost::queryHolders):

  • inspector/JSInjectedScriptHost.h:
  • inspector/JSInjectedScriptHostPrototype.cpp:

(Inspector::jsInjectedScriptHostPrototypeAttributeEvaluate):
(Inspector::jsInjectedScriptHostPrototypeAttributeSavedResultAlias):
(Inspector::jsInjectedScriptHostPrototypeFunctionInternalConstructorName):
(Inspector::jsInjectedScriptHostPrototypeFunctionIsHTMLAllCollection):
(Inspector::jsInjectedScriptHostPrototypeFunctionIsPromiseRejectedWithNativeGetterTypeError):
(Inspector::jsInjectedScriptHostPrototypeFunctionProxyTargetValue):
(Inspector::jsInjectedScriptHostPrototypeFunctionWeakMapSize):
(Inspector::jsInjectedScriptHostPrototypeFunctionWeakMapEntries):
(Inspector::jsInjectedScriptHostPrototypeFunctionWeakSetSize):
(Inspector::jsInjectedScriptHostPrototypeFunctionWeakSetEntries):
(Inspector::jsInjectedScriptHostPrototypeFunctionIteratorEntries):
(Inspector::jsInjectedScriptHostPrototypeFunctionQueryInstances):
(Inspector::jsInjectedScriptHostPrototypeFunctionQueryHolders):
(Inspector::jsInjectedScriptHostPrototypeFunctionEvaluateWithScopeExtension):
(Inspector::jsInjectedScriptHostPrototypeFunctionSubtype):
(Inspector::jsInjectedScriptHostPrototypeFunctionFunctionDetails):
(Inspector::jsInjectedScriptHostPrototypeFunctionGetInternalProperties):

  • inspector/JSJavaScriptCallFrame.cpp:

(Inspector::JSJavaScriptCallFrame::evaluateWithScopeExtension):
(Inspector::valueForScopeLocation):
(Inspector::JSJavaScriptCallFrame::scopeDescriptions):
(Inspector::JSJavaScriptCallFrame::caller const):
(Inspector::JSJavaScriptCallFrame::sourceID const):
(Inspector::JSJavaScriptCallFrame::line const):
(Inspector::JSJavaScriptCallFrame::column const):
(Inspector::JSJavaScriptCallFrame::functionName const):
(Inspector::JSJavaScriptCallFrame::scopeChain const):
(Inspector::JSJavaScriptCallFrame::thisObject const):
(Inspector::JSJavaScriptCallFrame::isTailDeleted const):
(Inspector::JSJavaScriptCallFrame::type const):
(Inspector::toJS):

  • inspector/JSJavaScriptCallFrame.h:
  • inspector/JSJavaScriptCallFramePrototype.cpp:

(Inspector::jsJavaScriptCallFramePrototypeFunctionEvaluateWithScopeExtension):
(Inspector::jsJavaScriptCallFramePrototypeFunctionScopeDescriptions):
(Inspector::jsJavaScriptCallFrameAttributeCaller):
(Inspector::jsJavaScriptCallFrameAttributeSourceID):
(Inspector::jsJavaScriptCallFrameAttributeLine):
(Inspector::jsJavaScriptCallFrameAttributeColumn):
(Inspector::jsJavaScriptCallFrameAttributeFunctionName):
(Inspector::jsJavaScriptCallFrameAttributeScopeChain):
(Inspector::jsJavaScriptCallFrameAttributeThisObject):
(Inspector::jsJavaScriptCallFrameAttributeType):
(Inspector::jsJavaScriptCallFrameIsTailDeleted):

  • inspector/JavaScriptCallFrame.h:

(Inspector::JavaScriptCallFrame::deprecatedVMEntryGlobalObject const):
(Inspector::JavaScriptCallFrame::vmEntryGlobalObject const): Deleted.

  • inspector/ScriptArguments.cpp:

(Inspector::ScriptArguments::create):
(Inspector::ScriptArguments::ScriptArguments):
(Inspector::ScriptArguments::globalObject const):
(Inspector::ScriptArguments::getFirstArgumentAsString const):
(Inspector::ScriptArguments::isEqual const):
(Inspector::ScriptArguments::globalState const): Deleted.

  • inspector/ScriptArguments.h:
  • inspector/ScriptCallStackFactory.cpp:

(Inspector::createScriptCallStack):
(Inspector::createScriptCallStackForConsole):
(Inspector::extractSourceInformationFromException):
(Inspector::createScriptCallStackFromException):
(Inspector::createScriptArguments):

  • inspector/ScriptCallStackFactory.h:
  • inspector/ScriptDebugListener.h:
  • inspector/ScriptDebugServer.cpp:

(Inspector::ScriptDebugServer::evaluateBreakpointAction):
(Inspector::ScriptDebugServer::sourceParsed):
(Inspector::ScriptDebugServer::handleExceptionInBreakpointCondition const):
(Inspector::ScriptDebugServer::handlePause):
(Inspector::ScriptDebugServer::exceptionOrCaughtValue):

  • inspector/ScriptDebugServer.h:
  • inspector/agents/InspectorAuditAgent.cpp:

(Inspector::InspectorAuditAgent::setup):
(Inspector::InspectorAuditAgent::populateAuditObject):

  • inspector/agents/InspectorAuditAgent.h:
  • inspector/agents/InspectorConsoleAgent.cpp:

(Inspector::InspectorConsoleAgent::startTiming):
(Inspector::InspectorConsoleAgent::logTiming):
(Inspector::InspectorConsoleAgent::stopTiming):
(Inspector::InspectorConsoleAgent::count):
(Inspector::InspectorConsoleAgent::countReset):

  • inspector/agents/InspectorConsoleAgent.h:
  • inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::didScheduleAsyncCall):
(Inspector::InspectorDebuggerAgent::resume):
(Inspector::InspectorDebuggerAgent::didPause):
(Inspector::InspectorDebuggerAgent::breakpointActionProbe):
(Inspector::InspectorDebuggerAgent::didContinue):
(Inspector::InspectorDebuggerAgent::clearDebuggerBreakpointState):
(Inspector::InspectorDebuggerAgent::assertPaused):

  • inspector/agents/InspectorDebuggerAgent.h:
  • inspector/agents/InspectorHeapAgent.cpp:

(Inspector::InspectorHeapAgent::snapshot):
(Inspector::InspectorHeapAgent::getPreview):
(Inspector::InspectorHeapAgent::getRemoteObject):

  • inspector/agents/JSGlobalObjectAuditAgent.cpp:

(Inspector::JSGlobalObjectAuditAgent::injectedScriptForEval):

  • inspector/agents/JSGlobalObjectDebuggerAgent.cpp:

(Inspector::JSGlobalObjectDebuggerAgent::injectedScriptForEval):
(Inspector::JSGlobalObjectDebuggerAgent::breakpointActionLog):

  • inspector/agents/JSGlobalObjectDebuggerAgent.h:
  • inspector/agents/JSGlobalObjectRuntimeAgent.cpp:

(Inspector::JSGlobalObjectRuntimeAgent::injectedScriptForEval):

  • interpreter/AbstractPC.cpp:

(JSC::AbstractPC::AbstractPC):

  • interpreter/AbstractPC.h:
  • interpreter/CachedCall.h:

(JSC::CachedCall::CachedCall):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::initDeprecatedCallFrameForDebugger):
(JSC::CallFrame::wasmAwareLexicalGlobalObject):
(JSC::CallFrame::convertToStackOverflowFrame):
(JSC::ExecState::initGlobalExec): Deleted.

  • interpreter/CallFrame.h:

(JSC::CallFrame::isDeprecatedCallFrameForDebugger const):
(JSC::CallFrame::isGlobalExec const): Deleted.

  • interpreter/Interpreter.cpp:

(JSC::eval):
(JSC::sizeOfVarargs):
(JSC::sizeFrameForForwardArguments):
(JSC::sizeFrameForVarargs):
(JSC::loadVarargs):
(JSC::setupVarargsFrame):
(JSC::setupVarargsFrameAndSetThis):
(JSC::setupForwardArgumentsFrame):
(JSC::setupForwardArgumentsFrameAndSetThis):
(JSC::notifyDebuggerOfUnwinding):
(JSC::Interpreter::notifyDebuggerOfExceptionToBeThrown):
(JSC::Interpreter::executeProgram):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeModuleProgram):
(JSC::Interpreter::debug):

  • interpreter/Interpreter.h:
  • interpreter/InterpreterInlines.h:

(JSC::Interpreter::execute):

  • interpreter/Register.h:
  • interpreter/ShadowChicken.cpp:

(JSC::ShadowChicken::log):
(JSC::ShadowChicken::update):
(JSC::ShadowChicken::functionsOnStack):

  • interpreter/ShadowChicken.h:
  • interpreter/ShadowChickenInlines.h:

(JSC::ShadowChicken::iterate):

  • interpreter/StackVisitor.cpp:

(JSC::StackVisitor::Frame::createArguments):

  • interpreter/StackVisitor.h:
  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::emitDumbVirtualCall):

  • jit/AssemblyHelpers.h:
  • jit/CCallHelpers.cpp:

(JSC::CCallHelpers::ensureShadowChickenPacket):

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::prepareCallOperation):
(JSC::CCallHelpers::setupArguments):

  • jit/HostCallReturnValue.cpp:

(JSC::getHostCallReturnValueWithExecState):

  • jit/HostCallReturnValue.h:

(JSC::initializeHostCallReturnValue):

  • jit/JIT.cpp:

(JSC::JIT::emitEnterOptimizationCheck):
(JSC::JIT::compileWithoutLinking):
(JSC::JIT::privateCompileExceptionHandlers):

  • jit/JIT.h:
  • jit/JITArithmetic.cpp:

(JSC::JIT::emit_compareAndJumpSlow):
(JSC::JIT::emitMathICFast):
(JSC::JIT::emitMathICSlow):

  • jit/JITArithmetic32_64.cpp:

(JSC::JIT::emit_compareAndJumpSlow):

  • jit/JITCall.cpp:

(JSC::JIT::compileSetupFrame):
(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):

  • jit/JITCall32_64.cpp:

(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCallSlowCase):

  • jit/JITExceptions.cpp:

(JSC::genericUnwind):

  • jit/JITExceptions.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emitSlow_op_instanceof):
(JSC::JIT::emit_op_set_function_name):
(JSC::JIT::emit_op_throw):
(JSC::JIT::emitSlow_op_jstricteq):
(JSC::JIT::emitSlow_op_jnstricteq):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::emit_op_debug):
(JSC::JIT::emitSlow_op_eq):
(JSC::JIT::emitSlow_op_neq):
(JSC::JIT::emitSlow_op_jeq):
(JSC::JIT::emitSlow_op_jneq):
(JSC::JIT::emitSlow_op_instanceof_custom):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::emitSlow_op_check_traps):
(JSC::JIT::emit_op_new_regexp):
(JSC::JIT::emitNewFuncCommon):
(JSC::JIT::emitNewFuncExprCommon):
(JSC::JIT::emit_op_new_array):
(JSC::JIT::emit_op_new_array_with_size):
(JSC::JIT::emitSlow_op_has_indexed_property):
(JSC::JIT::emit_op_profile_type):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_debug):
(JSC::JIT::emit_op_profile_type):

  • jit/JITOperations.cpp:

(JSC::newFunctionCommon):
(JSC::getByVal):
(JSC::tryGetByValOptimize):
(JSC::operationNewFunctionCommon): Deleted.

  • jit/JITOperations.h:
  • jit/JITOperationsMSVC64.cpp:

(JSC::getHostCallReturnValueWithExecState):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emitSlow_op_put_by_val):
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter_by_id):
(JSC::JIT::emit_op_put_getter_by_val):
(JSC::JIT::emit_op_put_setter_by_val):
(JSC::JIT::emit_op_del_by_id):
(JSC::JIT::emit_op_del_by_val):
(JSC::JIT::emitSlow_op_try_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id_direct):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id_with_this):
(JSC::JIT::emitSlow_op_put_by_id):
(JSC::JIT::emitSlow_op_in_by_id):
(JSC::JIT::emitSlow_op_get_from_scope):
(JSC::JIT::emitSlow_op_put_to_scope):
(JSC::JIT::emitWriteBarrier):

  • jit/PolymorphicCallStubRoutine.cpp:

(JSC::PolymorphicCallStubRoutine::PolymorphicCallStubRoutine):

  • jit/PolymorphicCallStubRoutine.h:
  • jit/Repatch.cpp:

(JSC::forceICFailure):
(JSC::tryCacheGetByID):
(JSC::repatchGetByID):
(JSC::tryCachePutByID):
(JSC::repatchPutByID):
(JSC::tryCacheInByID):
(JSC::repatchInByID):
(JSC::tryCacheInstanceOf):
(JSC::repatchInstanceOf):
(JSC::linkFor):
(JSC::linkDirectFor):
(JSC::linkSlowFor):
(JSC::linkVirtualFor):
(JSC::linkPolymorphicCall):

  • jit/Repatch.h:
  • jit/SnippetSlowPathCalls.h:
  • jit/ThunkGenerators.cpp:

(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::slowPathFor):
(JSC::nativeForGenerator):
(JSC::boundThisNoArgsFunctionCallGenerator):

  • jit/ThunkGenerators.h:
  • jsc.cpp:

(GlobalObject::finishCreation):
(GlobalObject::moduleLoaderImportModule):
(GlobalObject::moduleLoaderResolve):
(GlobalObject::moduleLoaderFetch):
(GlobalObject::moduleLoaderCreateImportMetaProperties):
(cStringFromViewWithString):
(printInternal):
(functionPrintStdOut):
(functionPrintStdErr):
(functionDebug):
(functionSleepSeconds):
(functionRun):
(functionRunString):
(functionLoad):
(functionLoadString):
(functionReadFile):
(functionCheckSyntax):
(functionSetSamplingFlags):
(functionClearSamplingFlags):
(functionSetRandomSeed):
(functionNeverInlineFunction):
(functionNoDFG):
(functionNoOSRExitFuzzing):
(functionOptimizeNextInvocation):
(functionNumberOfDFGCompiles):
(functionCallerIsOMGCompiled):
(functionDollarEvalScript):
(functionDollarAgentStart):
(functionDollarAgentReceiveBroadcast):
(functionDollarAgentReport):
(functionDollarAgentSleep):
(functionDollarAgentBroadcast):
(functionFlashHeapAccess):
(functionJSCOptions):
(functionTransferArrayBuffer):
(functionCheckModuleSyntax):
(functionGenerateHeapSnapshot):
(functionSamplingProfilerStackTraces):
(functionAsyncTestStart):
(functionWebAssemblyMemoryMode):
(functionSetUnhandledRejectionCallback):
(dumpException):
(checkUncaughtException):
(checkException):
(runWithOptions):
(runInteractive):

  • llint/LLIntExceptions.cpp:

(JSC::LLInt::returnToThrow):
(JSC::LLInt::callToThrow):

  • llint/LLIntExceptions.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::getNonConstantOperand):
(JSC::LLInt::getOperand):
(JSC::LLInt::llint_trace_operand):
(JSC::LLInt::llint_trace_value):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::traceFunctionPrologue):
(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::entryOSR):
(JSC::LLInt::setupGetByIdPrototypeCache):
(JSC::LLInt::getByVal):
(JSC::LLInt::handleHostCall):
(JSC::LLInt::setUpCall):
(JSC::LLInt::genericCall):
(JSC::LLInt::varargsSetup):
(JSC::LLInt::commonCallEval):
(JSC::LLInt::llint_throw_stack_overflow_error):
(JSC::LLInt::llint_write_barrier_slow):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter.cpp:

(JSC::CLoopRegister::operator CallFrame*):
(JSC::CLoopRegister::operator ExecState*): Deleted.

  • parser/ModuleAnalyzer.cpp:

(JSC::ModuleAnalyzer::ModuleAnalyzer):

  • parser/ModuleAnalyzer.h:
  • parser/ParserError.h:

(JSC::ParserError::toErrorObject):

  • profiler/ProfilerBytecode.cpp:

(JSC::Profiler::Bytecode::toJS const):

  • profiler/ProfilerBytecode.h:
  • profiler/ProfilerBytecodeSequence.cpp:

(JSC::Profiler::BytecodeSequence::addSequenceProperties const):

  • profiler/ProfilerBytecodeSequence.h:
  • profiler/ProfilerBytecodes.cpp:

(JSC::Profiler::Bytecodes::toJS const):

  • profiler/ProfilerBytecodes.h:
  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::toJS const):

  • profiler/ProfilerCompilation.h:
  • profiler/ProfilerCompiledBytecode.cpp:

(JSC::Profiler::CompiledBytecode::toJS const):

  • profiler/ProfilerCompiledBytecode.h:
  • profiler/ProfilerDatabase.cpp:

(JSC::Profiler::Database::toJS const):
(JSC::Profiler::Database::toJSON const):

  • profiler/ProfilerDatabase.h:
  • profiler/ProfilerEvent.cpp:

(JSC::Profiler::Event::toJS const):

  • profiler/ProfilerEvent.h:
  • profiler/ProfilerOSRExit.cpp:

(JSC::Profiler::OSRExit::toJS const):

  • profiler/ProfilerOSRExit.h:
  • profiler/ProfilerOSRExitSite.cpp:

(JSC::Profiler::OSRExitSite::toJS const):

  • profiler/ProfilerOSRExitSite.h:
  • profiler/ProfilerOrigin.cpp:

(JSC::Profiler::Origin::toJS const):

  • profiler/ProfilerOrigin.h:
  • profiler/ProfilerOriginStack.cpp:

(JSC::Profiler::OriginStack::toJS const):

  • profiler/ProfilerOriginStack.h:
  • profiler/ProfilerProfiledBytecodes.cpp:

(JSC::Profiler::ProfiledBytecodes::toJS const):

  • profiler/ProfilerProfiledBytecodes.h:
  • profiler/ProfilerUID.cpp:

(JSC::Profiler::UID::toJS const):

  • profiler/ProfilerUID.h:
  • runtime/AbstractModuleRecord.cpp:

(JSC::AbstractModuleRecord::finishCreation):
(JSC::AbstractModuleRecord::hostResolveImportedModule):
(JSC::AbstractModuleRecord::resolveImport):
(JSC::AbstractModuleRecord::resolveExportImpl):
(JSC::AbstractModuleRecord::resolveExport):
(JSC::getExportedNames):
(JSC::AbstractModuleRecord::getModuleNamespace):
(JSC::AbstractModuleRecord::link):
(JSC::AbstractModuleRecord::evaluate):

  • runtime/AbstractModuleRecord.h:
  • runtime/ArgList.h:

(JSC::ArgList::ArgList):

  • runtime/ArrayBufferView.h:
  • runtime/ArrayConstructor.cpp:

(JSC::constructArrayWithSizeQuirk):
(JSC::constructWithArrayConstructor):
(JSC::callArrayConstructor):
(JSC::isArraySlowInline):
(JSC::isArraySlow):
(JSC::arrayConstructorPrivateFuncIsArraySlow):

  • runtime/ArrayConstructor.h:

(JSC::isArray):

  • runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::finishCreation):
(JSC::getProperty):
(JSC::putLength):
(JSC::setLength):
(JSC::speciesWatchpointIsValid):
(JSC::arrayProtoFuncSpeciesCreate):
(JSC::argumentClampedIndexFromStartOrEnd):
(JSC::shift):
(JSC::unshift):
(JSC::fastJoin):
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::slowJoin):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSlice):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
(JSC::fastIndexOf):
(JSC::arrayProtoFuncIndexOf):
(JSC::arrayProtoFuncLastIndexOf):
(JSC::moveElements):
(JSC::concatAppendOne):
(JSC::arrayProtoPrivateFuncConcatMemcpy):
(JSC::arrayProtoPrivateFuncAppendMemcpy):

  • runtime/AsyncFunctionConstructor.cpp:

(JSC::callAsyncFunctionConstructor):
(JSC::constructAsyncFunctionConstructor):

  • runtime/AsyncGeneratorFunctionConstructor.cpp:

(JSC::callAsyncGeneratorFunctionConstructor):
(JSC::constructAsyncGeneratorFunctionConstructor):

  • runtime/AtomicsObject.cpp:

(JSC::atomicsFuncAdd):
(JSC::atomicsFuncAnd):
(JSC::atomicsFuncCompareExchange):
(JSC::atomicsFuncExchange):
(JSC::atomicsFuncIsLockFree):
(JSC::atomicsFuncLoad):
(JSC::atomicsFuncOr):
(JSC::atomicsFuncStore):
(JSC::atomicsFuncSub):
(JSC::atomicsFuncWait):
(JSC::atomicsFuncWake):
(JSC::atomicsFuncXor):
(JSC::operationAtomicsAdd):
(JSC::operationAtomicsAnd):
(JSC::operationAtomicsCompareExchange):
(JSC::operationAtomicsExchange):
(JSC::operationAtomicsIsLockFree):
(JSC::operationAtomicsLoad):
(JSC::operationAtomicsOr):
(JSC::operationAtomicsStore):
(JSC::operationAtomicsSub):
(JSC::operationAtomicsXor):

  • runtime/AtomicsObject.h:
  • runtime/BigIntConstructor.cpp:

(JSC::toBigInt):
(JSC::callBigIntConstructor):

  • runtime/BigIntObject.cpp:

(JSC::BigIntObject::toStringName):
(JSC::BigIntObject::defaultValue):

  • runtime/BigIntObject.h:
  • runtime/BigIntPrototype.cpp:

(JSC::bigIntProtoFuncToStringImpl):
(JSC::bigIntProtoFuncValueOf):

  • runtime/BooleanConstructor.cpp:

(JSC::callBooleanConstructor):
(JSC::constructWithBooleanConstructor):
(JSC::constructBooleanFromImmediateBoolean):

  • runtime/BooleanConstructor.h:
  • runtime/BooleanPrototype.cpp:

(JSC::booleanProtoFuncToString):
(JSC::booleanProtoFuncValueOf):

  • runtime/CallData.cpp:

(JSC::call):
(JSC::profiledCall):

  • runtime/CallData.h:
  • runtime/ClassInfo.h:
  • runtime/ClonedArguments.cpp:

(JSC::ClonedArguments::createEmpty):
(JSC::ClonedArguments::createWithInlineFrame):
(JSC::ClonedArguments::createWithMachineFrame):
(JSC::ClonedArguments::createByCopyingFrom):
(JSC::ClonedArguments::getOwnPropertySlot):
(JSC::ClonedArguments::getOwnPropertyNames):
(JSC::ClonedArguments::put):
(JSC::ClonedArguments::deleteProperty):
(JSC::ClonedArguments::defineOwnProperty):
(JSC::ClonedArguments::materializeSpecials):
(JSC::ClonedArguments::materializeSpecialsIfNecessary):

  • runtime/ClonedArguments.h:
  • runtime/CommonSlowPaths.cpp:

(JSC::throwArityCheckStackOverflowError):
(JSC::SLOW_PATH_DECL):
(JSC::createInternalFieldObject):
(JSC::updateArithProfileForBinaryArithOp):

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::codeBlockFromCallFrameCallee):
(JSC::CommonSlowPaths::arityCheckFor):
(JSC::CommonSlowPaths::opInByVal):
(JSC::CommonSlowPaths::tryCachePutToScopeGlobal):
(JSC::CommonSlowPaths::tryCacheGetFromScopeGlobal):
(JSC::CommonSlowPaths::putDirectWithReify):
(JSC::CommonSlowPaths::putDirectAccessorWithReify):

  • runtime/Completion.cpp:

(JSC::checkSyntax):
(JSC::checkModuleSyntax):
(JSC::evaluate):
(JSC::profiledEvaluate):
(JSC::evaluateWithScopeExtension):
(JSC::rejectPromise):
(JSC::loadAndEvaluateModule):
(JSC::loadModule):
(JSC::linkAndEvaluateModule):
(JSC::importModule):

  • runtime/Completion.h:

(JSC::evaluate):
(JSC::profiledEvaluate):

  • runtime/ConsoleClient.cpp:

(JSC::ConsoleClient::printConsoleMessageWithArguments):
(JSC::ConsoleClient::internalMessageWithTypeAndLevel):
(JSC::ConsoleClient::logWithLevel):
(JSC::ConsoleClient::clear):
(JSC::ConsoleClient::dir):
(JSC::ConsoleClient::dirXML):
(JSC::ConsoleClient::table):
(JSC::ConsoleClient::trace):
(JSC::ConsoleClient::assertion):
(JSC::ConsoleClient::group):
(JSC::ConsoleClient::groupCollapsed):
(JSC::ConsoleClient::groupEnd):

  • runtime/ConsoleClient.h:
  • runtime/ConsoleObject.cpp:

(JSC::valueOrDefaultLabelString):
(JSC::valueToStringWithUndefinedOrNullCheck):
(JSC::consoleLogWithLevel):
(JSC::consoleProtoFuncDebug):
(JSC::consoleProtoFuncError):
(JSC::consoleProtoFuncLog):
(JSC::consoleProtoFuncInfo):
(JSC::consoleProtoFuncWarn):
(JSC::consoleProtoFuncClear):
(JSC::consoleProtoFuncDir):
(JSC::consoleProtoFuncDirXML):
(JSC::consoleProtoFuncTable):
(JSC::consoleProtoFuncTrace):
(JSC::consoleProtoFuncAssert):
(JSC::consoleProtoFuncCount):
(JSC::consoleProtoFuncCountReset):
(JSC::consoleProtoFuncProfile):
(JSC::consoleProtoFuncProfileEnd):
(JSC::consoleProtoFuncTakeHeapSnapshot):
(JSC::consoleProtoFuncTime):
(JSC::consoleProtoFuncTimeLog):
(JSC::consoleProtoFuncTimeEnd):
(JSC::consoleProtoFuncTimeStamp):
(JSC::consoleProtoFuncGroup):
(JSC::consoleProtoFuncGroupCollapsed):
(JSC::consoleProtoFuncGroupEnd):
(JSC::consoleProtoFuncRecord):
(JSC::consoleProtoFuncRecordEnd):
(JSC::consoleProtoFuncScreenshot):

  • runtime/ConstructData.cpp:

(JSC::construct):
(JSC::profiledConstruct):

  • runtime/ConstructData.h:

(JSC::construct):
(JSC::profiledConstruct):

  • runtime/CustomGetterSetter.cpp:

(JSC::callCustomSetter):

  • runtime/CustomGetterSetter.h:
  • runtime/DataView.cpp:

(JSC::DataView::wrap):

  • runtime/DataView.h:
  • runtime/DateConstructor.cpp:

(JSC::millisecondsFromComponents):
(JSC::constructDate):
(JSC::constructWithDateConstructor):
(JSC::dateParse):
(JSC::dateUTC):

  • runtime/DateConstructor.h:
  • runtime/DateInstance.cpp:

(JSC::DateInstance::calculateGregorianDateTime const):
(JSC::DateInstance::calculateGregorianDateTimeUTC const):

  • runtime/DateInstance.h:
  • runtime/DatePrototype.cpp:

(JSC::formatLocaleDate):
(JSC::formateDateInstance):
(JSC::fillStructuresUsingTimeArgs):
(JSC::fillStructuresUsingDateArgs):
(JSC::dateProtoFuncToString):
(JSC::dateProtoFuncToUTCString):
(JSC::dateProtoFuncToISOString):
(JSC::dateProtoFuncToDateString):
(JSC::dateProtoFuncToTimeString):
(JSC::dateProtoFuncToLocaleString):
(JSC::dateProtoFuncToLocaleDateString):
(JSC::dateProtoFuncToLocaleTimeString):
(JSC::dateProtoFuncToPrimitiveSymbol):
(JSC::dateProtoFuncGetTime):
(JSC::dateProtoFuncGetFullYear):
(JSC::dateProtoFuncGetUTCFullYear):
(JSC::dateProtoFuncGetMonth):
(JSC::dateProtoFuncGetUTCMonth):
(JSC::dateProtoFuncGetDate):
(JSC::dateProtoFuncGetUTCDate):
(JSC::dateProtoFuncGetDay):
(JSC::dateProtoFuncGetUTCDay):
(JSC::dateProtoFuncGetHours):
(JSC::dateProtoFuncGetUTCHours):
(JSC::dateProtoFuncGetMinutes):
(JSC::dateProtoFuncGetUTCMinutes):
(JSC::dateProtoFuncGetSeconds):
(JSC::dateProtoFuncGetUTCSeconds):
(JSC::dateProtoFuncGetMilliSeconds):
(JSC::dateProtoFuncGetUTCMilliseconds):
(JSC::dateProtoFuncGetTimezoneOffset):
(JSC::dateProtoFuncSetTime):
(JSC::setNewValueFromTimeArgs):
(JSC::setNewValueFromDateArgs):
(JSC::dateProtoFuncSetMilliSeconds):
(JSC::dateProtoFuncSetUTCMilliseconds):
(JSC::dateProtoFuncSetSeconds):
(JSC::dateProtoFuncSetUTCSeconds):
(JSC::dateProtoFuncSetMinutes):
(JSC::dateProtoFuncSetUTCMinutes):
(JSC::dateProtoFuncSetHours):
(JSC::dateProtoFuncSetUTCHours):
(JSC::dateProtoFuncSetDate):
(JSC::dateProtoFuncSetUTCDate):
(JSC::dateProtoFuncSetMonth):
(JSC::dateProtoFuncSetUTCMonth):
(JSC::dateProtoFuncSetFullYear):
(JSC::dateProtoFuncSetUTCFullYear):
(JSC::dateProtoFuncSetYear):
(JSC::dateProtoFuncGetYear):
(JSC::dateProtoFuncToJSON):

  • runtime/DirectArguments.cpp:

(JSC::DirectArguments::createByCopying):
(JSC::DirectArguments::copyToArguments):

  • runtime/DirectArguments.h:
  • runtime/DirectEvalExecutable.cpp:

(JSC::DirectEvalExecutable::create):
(JSC::DirectEvalExecutable::DirectEvalExecutable):

  • runtime/DirectEvalExecutable.h:
  • runtime/Error.cpp:

(JSC::createError):
(JSC::createEvalError):
(JSC::createRangeError):
(JSC::createReferenceError):
(JSC::createSyntaxError):
(JSC::createTypeError):
(JSC::createNotEnoughArgumentsError):
(JSC::createURIError):
(JSC::createGetterTypeError):
(JSC::getStackTrace):
(JSC::getBytecodeOffset):
(JSC::addErrorInfo):
(JSC::throwConstructorCannotBeCalledAsFunctionTypeError):
(JSC::throwTypeError):
(JSC::throwSyntaxError):
(JSC::throwGetterTypeError):
(JSC::throwDOMAttributeGetterTypeError):
(JSC::createOutOfMemoryError):

  • runtime/Error.h:

(JSC::throwRangeError):
(JSC::throwVMError):
(JSC::throwVMTypeError):
(JSC::throwVMRangeError):
(JSC::throwVMGetterTypeError):
(JSC::throwVMDOMAttributeGetterTypeError):

  • runtime/ErrorConstructor.cpp:

(JSC::constructErrorConstructor):
(JSC::callErrorConstructor):
(JSC::ErrorConstructor::put):
(JSC::ErrorConstructor::deleteProperty):

  • runtime/ErrorConstructor.h:
  • runtime/ErrorInstance.cpp:

(JSC::ErrorInstance::create):
(JSC::appendSourceToError):
(JSC::ErrorInstance::finishCreation):
(JSC::ErrorInstance::sanitizedToString):
(JSC::ErrorInstance::getOwnPropertySlot):
(JSC::ErrorInstance::getOwnNonIndexPropertyNames):
(JSC::ErrorInstance::getStructurePropertyNames):
(JSC::ErrorInstance::defineOwnProperty):
(JSC::ErrorInstance::put):
(JSC::ErrorInstance::deleteProperty):

  • runtime/ErrorInstance.h:

(JSC::ErrorInstance::create):

  • runtime/ErrorPrototype.cpp:

(JSC::errorProtoFuncToString):

  • runtime/EvalExecutable.cpp:

(JSC::EvalExecutable::EvalExecutable):

  • runtime/EvalExecutable.h:
  • runtime/ExceptionFuzz.cpp:

(JSC::doExceptionFuzzing):

  • runtime/ExceptionFuzz.h:

(JSC::doExceptionFuzzingIfEnabled):

  • runtime/ExceptionHelpers.cpp:

(JSC::TerminatedExecutionError::defaultValue):
(JSC::createStackOverflowError):
(JSC::createUndefinedVariableError):
(JSC::errorDescriptionForValue):
(JSC::createError):
(JSC::createInvalidFunctionApplyParameterError):
(JSC::createInvalidInParameterError):
(JSC::createInvalidInstanceofParameterErrorNotFunction):
(JSC::createInvalidInstanceofParameterErrorHasInstanceValueNotFunction):
(JSC::createNotAConstructorError):
(JSC::createNotAFunctionError):
(JSC::createNotAnObjectError):
(JSC::createErrorForInvalidGlobalAssignment):
(JSC::createTDZError):
(JSC::throwOutOfMemoryError):
(JSC::throwStackOverflowError):
(JSC::throwTerminatedExecutionException):

  • runtime/ExceptionHelpers.h:
  • runtime/FunctionConstructor.cpp:

(JSC::constructWithFunctionConstructor):
(JSC::callFunctionConstructor):
(JSC::constructFunction):
(JSC::constructFunctionSkippingEvalEnabledCheck):

  • runtime/FunctionConstructor.h:
  • runtime/FunctionExecutable.cpp:

(JSC::FunctionExecutable::fromGlobalCode):

  • runtime/FunctionExecutable.h:
  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncToString):

  • runtime/FunctionRareData.h:
  • runtime/GeneratorFunctionConstructor.cpp:

(JSC::callGeneratorFunctionConstructor):
(JSC::constructGeneratorFunctionConstructor):

  • runtime/GenericArguments.h:
  • runtime/GenericArgumentsInlines.h:

(JSC::GenericArguments<Type>::getOwnPropertySlot):
(JSC::GenericArguments<Type>::getOwnPropertySlotByIndex):
(JSC::GenericArguments<Type>::getOwnPropertyNames):
(JSC::GenericArguments<Type>::put):
(JSC::GenericArguments<Type>::putByIndex):
(JSC::GenericArguments<Type>::deleteProperty):
(JSC::GenericArguments<Type>::deletePropertyByIndex):
(JSC::GenericArguments<Type>::defineOwnProperty):
(JSC::GenericArguments<Type>::copyToArguments):

  • runtime/GenericTypedArrayView.h:
  • runtime/GenericTypedArrayViewInlines.h:

(JSC::GenericTypedArrayView<Adaptor>::wrap):

  • runtime/GetterSetter.cpp:

(JSC::callGetter):
(JSC::callSetter):

  • runtime/GetterSetter.h:
  • runtime/HashMapImpl.h:

(JSC::HashMapBuffer::create):
(JSC::areKeysEqual):
(JSC::jsMapHash):
(JSC::HashMapImpl::finishCreation):
(JSC::HashMapImpl::findBucket):
(JSC::HashMapImpl::get):
(JSC::HashMapImpl::has):
(JSC::HashMapImpl::add):
(JSC::HashMapImpl::addNormalized):
(JSC::HashMapImpl::remove):
(JSC::HashMapImpl::clear):
(JSC::HashMapImpl::setUpHeadAndTail):
(JSC::HashMapImpl::addNormalizedNonExistingForCloning):
(JSC::HashMapImpl::addNormalizedInternal):
(JSC::HashMapImpl::findBucketAlreadyHashedAndNormalized):
(JSC::HashMapImpl::rehash):
(JSC::HashMapImpl::makeAndSetNewBuffer):

  • runtime/Identifier.h:
  • runtime/IndirectEvalExecutable.cpp:

(JSC::IndirectEvalExecutable::create):
(JSC::IndirectEvalExecutable::IndirectEvalExecutable):

  • runtime/IndirectEvalExecutable.h:
  • runtime/InspectorInstrumentationObject.cpp:

(JSC::inspectorInstrumentationObjectLog):

  • runtime/InternalFunction.cpp:

(JSC::InternalFunction::InternalFunction):
(JSC::InternalFunction::createSubclassStructureSlow):

  • runtime/InternalFunction.h:

(JSC::InternalFunction::createSubclassStructure):

  • runtime/IntlCollator.cpp:

(JSC::IntlCollator::initializeCollator):
(JSC::IntlCollator::createCollator):
(JSC::IntlCollator::compareStrings):
(JSC::IntlCollator::resolvedOptions):

  • runtime/IntlCollator.h:
  • runtime/IntlCollatorConstructor.cpp:

(JSC::constructIntlCollator):
(JSC::callIntlCollator):
(JSC::IntlCollatorConstructorFuncSupportedLocalesOf):

  • runtime/IntlCollatorPrototype.cpp:

(JSC::IntlCollatorFuncCompare):
(JSC::IntlCollatorPrototypeGetterCompare):
(JSC::IntlCollatorPrototypeFuncResolvedOptions):

  • runtime/IntlDateTimeFormat.cpp:

(JSC::IntlDTFInternal::toDateTimeOptionsAnyDate):
(JSC::IntlDateTimeFormat::initializeDateTimeFormat):
(JSC::IntlDateTimeFormat::resolvedOptions):
(JSC::IntlDateTimeFormat::format):
(JSC::IntlDateTimeFormat::formatToParts):

  • runtime/IntlDateTimeFormat.h:
  • runtime/IntlDateTimeFormatConstructor.cpp:

(JSC::constructIntlDateTimeFormat):
(JSC::callIntlDateTimeFormat):
(JSC::IntlDateTimeFormatConstructorFuncSupportedLocalesOf):

  • runtime/IntlDateTimeFormatPrototype.cpp:

(JSC::IntlDateTimeFormatFuncFormatDateTime):
(JSC::IntlDateTimeFormatPrototypeGetterFormat):
(JSC::IntlDateTimeFormatPrototypeFuncFormatToParts):
(JSC::IntlDateTimeFormatPrototypeFuncResolvedOptions):

  • runtime/IntlNumberFormat.cpp:

(JSC::IntlNumberFormat::initializeNumberFormat):
(JSC::IntlNumberFormat::formatNumber):
(JSC::IntlNumberFormat::resolvedOptions):
(JSC::IntlNumberFormat::formatToParts):

  • runtime/IntlNumberFormat.h:
  • runtime/IntlNumberFormatConstructor.cpp:

(JSC::constructIntlNumberFormat):
(JSC::callIntlNumberFormat):
(JSC::IntlNumberFormatConstructorFuncSupportedLocalesOf):

  • runtime/IntlNumberFormatPrototype.cpp:

(JSC::IntlNumberFormatFuncFormatNumber):
(JSC::IntlNumberFormatPrototypeGetterFormat):
(JSC::IntlNumberFormatPrototypeFuncFormatToParts):
(JSC::IntlNumberFormatPrototypeFuncResolvedOptions):

  • runtime/IntlObject.cpp:

(JSC::intlBooleanOption):
(JSC::intlStringOption):
(JSC::intlNumberOption):
(JSC::intlDefaultNumberOption):
(JSC::canonicalizeLocaleList):
(JSC::defaultLocale):
(JSC::lookupMatcher):
(JSC::bestFitMatcher):
(JSC::resolveLocale):
(JSC::lookupSupportedLocales):
(JSC::bestFitSupportedLocales):
(JSC::supportedLocales):
(JSC::intlObjectFuncGetCanonicalLocales):

  • runtime/IntlObject.h:
  • runtime/IntlObjectInlines.h:

(JSC::constructIntlInstanceWithWorkaroundForLegacyIntlConstructor):

  • runtime/IntlPluralRules.cpp:

(JSC::IntlPluralRules::initializePluralRules):
(JSC::IntlPluralRules::resolvedOptions):
(JSC::IntlPluralRules::select):

  • runtime/IntlPluralRules.h:
  • runtime/IntlPluralRulesConstructor.cpp:

(JSC::constructIntlPluralRules):
(JSC::callIntlPluralRules):
(JSC::IntlPluralRulesConstructorFuncSupportedLocalesOf):

  • runtime/IntlPluralRulesPrototype.cpp:

(JSC::IntlPluralRulesPrototypeFuncSelect):
(JSC::IntlPluralRulesPrototypeFuncResolvedOptions):

  • runtime/IteratorOperations.cpp:

(JSC::iteratorNext):
(JSC::iteratorValue):
(JSC::iteratorComplete):
(JSC::iteratorStep):
(JSC::iteratorClose):
(JSC::createIteratorResultObject):
(JSC::hasIteratorMethod):
(JSC::iteratorMethod):
(JSC::iteratorForIterable):

  • runtime/IteratorOperations.h:

(JSC::forEachInIterable):

  • runtime/JSArray.cpp:

(JSC::JSArray::setLengthWritable):
(JSC::JSArray::defineOwnProperty):
(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::put):
(JSC::JSArray::deleteProperty):
(JSC::JSArray::getOwnNonIndexPropertyNames):
(JSC::JSArray::setLengthWithArrayStorage):
(JSC::JSArray::appendMemcpy):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::fastSlice):
(JSC::JSArray::shiftCountWithAnyIndexingType):
(JSC::JSArray::unshiftCountWithArrayStorage):
(JSC::JSArray::unshiftCountWithAnyIndexingType):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):
(JSC::constructArray):
(JSC::constructArrayNegativeIndexed):

  • runtime/JSArray.h:

(JSC::JSArray::shiftCountForShift):
(JSC::JSArray::shiftCountForSplice):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCountForShift):
(JSC::JSArray::unshiftCountForSplice):
(JSC::JSArray::unshiftCount):

  • runtime/JSArrayBufferConstructor.cpp:

(JSC::JSGenericArrayBufferConstructor<sharingMode>::constructArrayBuffer):
(JSC::callArrayBuffer):

  • runtime/JSArrayBufferPrototype.cpp:

(JSC::arrayBufferProtoFuncSlice):
(JSC::arrayBufferProtoGetterFuncByteLength):
(JSC::sharedArrayBufferProtoGetterFuncByteLength):

  • runtime/JSArrayBufferView.cpp:

(JSC::JSArrayBufferView::toStringName):
(JSC::JSArrayBufferView::put):
(JSC::JSArrayBufferView::unsharedJSBuffer):
(JSC::JSArrayBufferView::possiblySharedJSBuffer):
(JSC::JSArrayBufferView::slowDownAndWasteMemory):

  • runtime/JSArrayBufferView.h:
  • runtime/JSArrayInlines.h:

(JSC::toLength):
(JSC::JSArray::pushInline):

  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::tryCreateWithLength):
(JSC::JSBigInt::toPrimitive const):
(JSC::JSBigInt::parseInt):
(JSC::JSBigInt::stringToBigInt):
(JSC::JSBigInt::toString):
(JSC::JSBigInt::exponentiate):
(JSC::JSBigInt::multiply):
(JSC::JSBigInt::divide):
(JSC::JSBigInt::remainder):
(JSC::JSBigInt::add):
(JSC::JSBigInt::sub):
(JSC::JSBigInt::bitwiseAnd):
(JSC::JSBigInt::bitwiseOr):
(JSC::JSBigInt::bitwiseXor):
(JSC::JSBigInt::leftShift):
(JSC::JSBigInt::signedRightShift):
(JSC::JSBigInt::bitwiseNot):
(JSC::JSBigInt::absoluteAdd):
(JSC::JSBigInt::absoluteDivWithBigIntDivisor):
(JSC::JSBigInt::absoluteLeftShiftAlwaysCopy):
(JSC::JSBigInt::absoluteAddOne):
(JSC::JSBigInt::absoluteSubOne):
(JSC::JSBigInt::leftShiftByAbsolute):
(JSC::JSBigInt::rightShiftByAbsolute):
(JSC::JSBigInt::toStringBasePowerOfTwo):
(JSC::JSBigInt::toStringGeneric):
(JSC::JSBigInt::allocateFor):
(JSC::JSBigInt::toNumber const):
(JSC::JSBigInt::getPrimitiveNumber const):
(JSC::JSBigInt::toObject const):

  • runtime/JSBigInt.h:
  • runtime/JSBoundFunction.cpp:

(JSC::boundThisNoArgsFunctionCall):
(JSC::boundFunctionCall):
(JSC::boundThisNoArgsFunctionConstruct):
(JSC::boundFunctionConstruct):
(JSC::hasInstanceBoundFunction):
(JSC::getBoundFunctionStructure):
(JSC::JSBoundFunction::create):
(JSC::JSBoundFunction::customHasInstance):
(JSC::JSBoundFunction::boundArgsCopy):

  • runtime/JSBoundFunction.h:
  • runtime/JSCJSValue.cpp:

(JSC::JSValue::toInteger const):
(JSC::JSValue::toIntegerPreserveNaN const):
(JSC::JSValue::toLength const):
(JSC::JSValue::toNumberSlowCase const):
(JSC::JSValue::toObjectSlowCase const):
(JSC::JSValue::toThisSlowCase const):
(JSC::JSValue::synthesizePrototype const):
(JSC::JSValue::putToPrimitive):
(JSC::JSValue::putToPrimitiveByIndex):
(JSC::JSValue::toStringSlowCase const):
(JSC::JSValue::toWTFStringSlowCase const):

  • runtime/JSCJSValue.h:

(JSC::JSValue::toFloat const):

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::toInt32 const):
(JSC::JSValue::toUInt32 const):
(JSC::JSValue::toIndex const):
(JSC::JSValue::getString const):
(JSC::Unknown>::getString const):
(JSC::JSValue::toPropertyKey const):
(JSC::JSValue::toPrimitive const):
(JSC::toPreferredPrimitiveType):
(JSC::JSValue::getPrimitiveNumber):
(JSC::JSValue::toNumber const):
(JSC::JSValue::toNumeric const):
(JSC::JSValue::toBigIntOrInt32 const):
(JSC::JSValue::toObject const):
(JSC::JSValue::toThis const):
(JSC::JSValue::get const):
(JSC::JSValue::getPropertySlot const):
(JSC::JSValue::getOwnPropertySlot const):
(JSC::JSValue::put):
(JSC::JSValue::putInline):
(JSC::JSValue::putByIndex):
(JSC::JSValue::equal):
(JSC::JSValue::equalSlowCaseInline):
(JSC::JSValue::strictEqualSlowCaseInline):
(JSC::JSValue::strictEqual):
(JSC::JSValue::requireObjectCoercible const):
(JSC::sameValue):

  • runtime/JSCell.cpp:

(JSC::JSCell::getString const):
(JSC::JSCell::put):
(JSC::JSCell::putByIndex):
(JSC::JSCell::deleteProperty):
(JSC::JSCell::deletePropertyByIndex):
(JSC::JSCell::toThis):
(JSC::JSCell::toPrimitive const):
(JSC::JSCell::getPrimitiveNumber const):
(JSC::JSCell::toNumber const):
(JSC::JSCell::toObjectSlow const):
(JSC::JSCell::defaultValue):
(JSC::JSCell::getOwnPropertySlot):
(JSC::JSCell::getOwnPropertySlotByIndex):
(JSC::JSCell::doPutPropertySecurityCheck):
(JSC::JSCell::getOwnPropertyNames):
(JSC::JSCell::getOwnNonIndexPropertyNames):
(JSC::JSCell::toStringName):
(JSC::JSCell::getPropertyNames):
(JSC::JSCell::customHasInstance):
(JSC::JSCell::defineOwnProperty):
(JSC::JSCell::getEnumerableLength):
(JSC::JSCell::getStructurePropertyNames):
(JSC::JSCell::getGenericPropertyNames):
(JSC::JSCell::preventExtensions):
(JSC::JSCell::isExtensible):
(JSC::JSCell::setPrototype):
(JSC::JSCell::getPrototype):

  • runtime/JSCell.h:
  • runtime/JSCellInlines.h:

(JSC::CallFrame::vm const):
(JSC::JSCell::toBoolean const):
(JSC::JSCell::toObject const):
(JSC::JSCell::putInline):
(JSC::ExecState::vm const): Deleted.

  • runtime/JSCustomGetterSetterFunction.cpp:

(JSC::JSCustomGetterSetterFunction::customGetterSetterFunctionCall):

  • runtime/JSDataView.cpp:

(JSC::JSDataView::create):
(JSC::JSDataView::createUninitialized):
(JSC::JSDataView::set):
(JSC::JSDataView::setIndex):
(JSC::JSDataView::getOwnPropertySlot):
(JSC::JSDataView::put):
(JSC::JSDataView::defineOwnProperty):
(JSC::JSDataView::deleteProperty):
(JSC::JSDataView::getOwnNonIndexPropertyNames):

  • runtime/JSDataView.h:
  • runtime/JSDataViewPrototype.cpp:

(JSC::getData):
(JSC::setData):
(JSC::dataViewProtoGetterBuffer):
(JSC::dataViewProtoGetterByteLength):
(JSC::dataViewProtoGetterByteOffset):

  • runtime/JSDateMath.cpp:

(JSC::parseDate):

  • runtime/JSDateMath.h:
  • runtime/JSFixedArray.cpp:

(JSC::JSFixedArray::copyToArguments):

  • runtime/JSFixedArray.h:
  • runtime/JSFunction.cpp:

(JSC::callHostFunctionAsConstructor):
(JSC::JSFunction::prototypeForConstruction):
(JSC::JSFunction::allocateAndInitializeRareData):
(JSC::JSFunction::initializeRareData):
(JSC::retrieveArguments):
(JSC::JSFunction::argumentsGetter):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::callerGetter):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnNonIndexPropertyNames):
(JSC::JSFunction::put):
(JSC::JSFunction::deleteProperty):
(JSC::JSFunction::defineOwnProperty):
(JSC::JSFunction::setFunctionName):
(JSC::JSFunction::reifyName):
(JSC::JSFunction::reifyLazyPropertyIfNeeded):
(JSC::JSFunction::reifyLazyPropertyForHostOrBuiltinIfNeeded):
(JSC::JSFunction::reifyLazyLengthIfNeeded):
(JSC::JSFunction::reifyLazyNameIfNeeded):
(JSC::JSFunction::reifyLazyBoundNameIfNeeded):

  • runtime/JSFunction.h:
  • runtime/JSFunctionInlines.h:

(JSC::JSFunction::ensureRareDataAndAllocationProfile):

  • runtime/JSGenericTypedArrayView.h:
  • runtime/JSGenericTypedArrayViewConstructorInlines.h:

(JSC::constructGenericTypedArrayViewFromIterator):
(JSC::constructGenericTypedArrayViewWithArguments):
(JSC::constructGenericTypedArrayView):
(JSC::callGenericTypedArrayView):

  • runtime/JSGenericTypedArrayViewInlines.h:

(JSC::JSGenericTypedArrayView<Adaptor>::create):
(JSC::JSGenericTypedArrayView<Adaptor>::createWithFastVector):
(JSC::JSGenericTypedArrayView<Adaptor>::createUninitialized):
(JSC::JSGenericTypedArrayView<Adaptor>::validateRange):
(JSC::JSGenericTypedArrayView<Adaptor>::setWithSpecificType):
(JSC::JSGenericTypedArrayView<Adaptor>::set):
(JSC::JSGenericTypedArrayView<Adaptor>::throwNeuteredTypedArrayTypeError):
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertySlot):
(JSC::JSGenericTypedArrayView<Adaptor>::put):
(JSC::JSGenericTypedArrayView<Adaptor>::defineOwnProperty):
(JSC::JSGenericTypedArrayView<Adaptor>::deleteProperty):
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertySlotByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::putByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::deletePropertyByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertyNames):

  • runtime/JSGenericTypedArrayViewPrototypeFunctions.h:

(JSC::speciesConstruct):
(JSC::argumentClampedIndexFromStartOrEnd):
(JSC::genericTypedArrayViewProtoFuncSet):
(JSC::genericTypedArrayViewProtoFuncCopyWithin):
(JSC::genericTypedArrayViewProtoFuncIncludes):
(JSC::genericTypedArrayViewProtoFuncIndexOf):
(JSC::genericTypedArrayViewProtoFuncJoin):
(JSC::genericTypedArrayViewProtoFuncLastIndexOf):
(JSC::genericTypedArrayViewProtoGetterFuncBuffer):
(JSC::genericTypedArrayViewProtoGetterFuncLength):
(JSC::genericTypedArrayViewProtoGetterFuncByteLength):
(JSC::genericTypedArrayViewProtoGetterFuncByteOffset):
(JSC::genericTypedArrayViewProtoFuncReverse):
(JSC::genericTypedArrayViewPrivateFuncSort):
(JSC::genericTypedArrayViewProtoFuncSlice):
(JSC::genericTypedArrayViewPrivateFuncSubarrayCreate):

  • runtime/JSGlobalLexicalEnvironment.cpp:

(JSC::JSGlobalLexicalEnvironment::getOwnPropertySlot):
(JSC::JSGlobalLexicalEnvironment::put):

  • runtime/JSGlobalLexicalEnvironment.h:
  • runtime/JSGlobalObject.cpp:

(JSC::createConsoleProperty):
(JSC::makeBoundFunction):
(JSC::hasOwnLengthProperty):
(JSC::getGetterById):
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::put):
(JSC::JSGlobalObject::defineOwnProperty):
(JSC::JSGlobalObject::addFunction):
(JSC::JSGlobalObject::visitChildren):
(JSC::JSGlobalObject::deprecatedCallFrameForDebugger):
(JSC::JSGlobalObject::exposeDollarVM):
(JSC::JSGlobalObject::getOwnPropertySlot):
(JSC::JSGlobalObject::tryInstallArraySpeciesWatchpoint):
(JSC::JSGlobalObject::defaultCollator):
(JSC::JSGlobalObject::globalExec): Deleted.

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::addVar):
(JSC::JSGlobalObject::regExpConstructor const):
(JSC::JSGlobalObject::functionConstructor const):
(JSC::JSGlobalObject::arrayStructureForProfileDuringAllocation const):
(JSC::JSGlobalObject::supportsRichSourceInfo):
(JSC::JSGlobalObject::globalObjectAtDebuggerEntry const):
(JSC::JSGlobalObject::setGlobalObjectAtDebuggerEntry):
(JSC::constructEmptyArray):
(JSC::constructArray):
(JSC::constructArrayNegativeIndexed):
(JSC::JSGlobalObject::callFrameAtDebuggerEntry const): Deleted.
(JSC::JSGlobalObject::setCallFrameAtDebuggerEntry): Deleted.
(JSC::ExecState::globalThisValue const): Deleted.

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::encode):
(JSC::decode):
(JSC::globalFuncEval):
(JSC::globalFuncParseInt):
(JSC::globalFuncParseFloat):
(JSC::globalFuncDecodeURI):
(JSC::globalFuncDecodeURIComponent):
(JSC::globalFuncEncodeURI):
(JSC::globalFuncEncodeURIComponent):
(JSC::globalFuncEscape):
(JSC::globalFuncUnescape):
(JSC::globalFuncThrowTypeError):
(JSC::globalFuncThrowTypeErrorArgumentsCalleeAndCaller):
(JSC::globalFuncMakeTypeError):
(JSC::globalFuncProtoGetter):
(JSC::globalFuncProtoSetter):
(JSC::globalFuncHostPromiseRejectionTracker):
(JSC::globalFuncBuiltinLog):
(JSC::globalFuncImportModule):
(JSC::globalFuncPropertyIsEnumerable):
(JSC::globalFuncOwnKeys):
(JSC::globalFuncDateTimeFormat):

  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSGlobalObjectInlines.h:

(JSC::JSGlobalObject::arrayStructureForIndexingTypeDuringAllocation const):
(JSC::getVM):

  • runtime/JSImmutableButterfly.cpp:

(JSC::JSImmutableButterfly::copyToArguments):

  • runtime/JSImmutableButterfly.h:
  • runtime/JSInternalPromise.cpp:

(JSC::JSInternalPromise::then):

  • runtime/JSInternalPromise.h:
  • runtime/JSInternalPromiseDeferred.cpp:

(JSC::JSInternalPromiseDeferred::tryCreate):
(JSC::JSInternalPromiseDeferred::resolve):
(JSC::JSInternalPromiseDeferred::reject):

  • runtime/JSInternalPromiseDeferred.h:
  • runtime/JSLexicalEnvironment.cpp:

(JSC::JSLexicalEnvironment::getOwnNonIndexPropertyNames):
(JSC::JSLexicalEnvironment::getOwnPropertySlot):
(JSC::JSLexicalEnvironment::put):
(JSC::JSLexicalEnvironment::deleteProperty):

  • runtime/JSLexicalEnvironment.h:
  • runtime/JSLock.cpp:

(JSC::JSLockHolder::JSLockHolder):
(JSC::JSLock::lock):
(JSC::JSLock::unlock):
(JSC::JSLock::DropAllLocks::DropAllLocks):

  • runtime/JSLock.h:
  • runtime/JSMap.cpp:

(JSC::JSMap::toStringName):
(JSC::JSMap::clone):

  • runtime/JSMap.h:
  • runtime/JSMapIterator.cpp:

(JSC::JSMapIterator::createPair):

  • runtime/JSMapIterator.h:
  • runtime/JSMicrotask.cpp:

(JSC::JSMicrotask::run):

  • runtime/JSModuleEnvironment.cpp:

(JSC::JSModuleEnvironment::getOwnPropertySlot):
(JSC::JSModuleEnvironment::getOwnNonIndexPropertyNames):
(JSC::JSModuleEnvironment::put):
(JSC::JSModuleEnvironment::deleteProperty):

  • runtime/JSModuleEnvironment.h:
  • runtime/JSModuleLoader.cpp:

(JSC::JSModuleLoader::finishCreation):
(JSC::printableModuleKey):
(JSC::JSModuleLoader::dependencyKeysIfEvaluated):
(JSC::JSModuleLoader::provideFetch):
(JSC::JSModuleLoader::loadAndEvaluateModule):
(JSC::JSModuleLoader::loadModule):
(JSC::JSModuleLoader::linkAndEvaluateModule):
(JSC::JSModuleLoader::requestImportModule):
(JSC::JSModuleLoader::importModule):
(JSC::JSModuleLoader::resolveSync):
(JSC::JSModuleLoader::resolve):
(JSC::JSModuleLoader::fetch):
(JSC::JSModuleLoader::createImportMetaProperties):
(JSC::JSModuleLoader::evaluate):
(JSC::JSModuleLoader::evaluateNonVirtual):
(JSC::JSModuleLoader::getModuleNamespaceObject):
(JSC::moduleLoaderParseModule):
(JSC::moduleLoaderRequestedModules):
(JSC::moduleLoaderModuleDeclarationInstantiation):
(JSC::moduleLoaderResolve):
(JSC::moduleLoaderResolveSync):
(JSC::moduleLoaderFetch):
(JSC::moduleLoaderGetModuleNamespaceObject):
(JSC::moduleLoaderEvaluate):

  • runtime/JSModuleLoader.h:
  • runtime/JSModuleNamespaceObject.cpp:

(JSC::JSModuleNamespaceObject::finishCreation):
(JSC::JSModuleNamespaceObject::getOwnPropertySlotCommon):
(JSC::JSModuleNamespaceObject::getOwnPropertySlot):
(JSC::JSModuleNamespaceObject::getOwnPropertySlotByIndex):
(JSC::JSModuleNamespaceObject::put):
(JSC::JSModuleNamespaceObject::putByIndex):
(JSC::JSModuleNamespaceObject::deleteProperty):
(JSC::JSModuleNamespaceObject::getOwnPropertyNames):
(JSC::JSModuleNamespaceObject::defineOwnProperty):

  • runtime/JSModuleNamespaceObject.h:
  • runtime/JSModuleRecord.cpp:

(JSC::JSModuleRecord::create):
(JSC::JSModuleRecord::finishCreation):
(JSC::JSModuleRecord::link):
(JSC::JSModuleRecord::instantiateDeclarations):
(JSC::JSModuleRecord::evaluate):

  • runtime/JSModuleRecord.h:
  • runtime/JSONObject.cpp:

(JSC::unwrapBoxedPrimitive):
(JSC::gap):
(JSC::PropertyNameForFunctionCall::value const):
(JSC::Stringifier::Stringifier):
(JSC::Stringifier::stringify):
(JSC::Stringifier::toJSON):
(JSC::Stringifier::toJSONImpl):
(JSC::Stringifier::appendStringifiedValue):
(JSC::Stringifier::Holder::Holder):
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::Walker):
(JSC::Walker::callReviver):
(JSC::Walker::walk):
(JSC::JSONProtoFuncParse):
(JSC::JSONProtoFuncStringify):
(JSC::JSONParse):
(JSC::JSONStringify):

  • runtime/JSONObject.h:
  • runtime/JSObject.cpp:

(JSC::getClassPropertyNames):
(JSC::JSObject::toStringName):
(JSC::JSObject::calculatedClassName):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::ordinarySetSlow):
(JSC::JSObject::put):
(JSC::JSObject::putInlineSlow):
(JSC::JSObject::putByIndex):
(JSC::JSObject::setPrototypeWithCycleCheck):
(JSC::JSObject::setPrototype):
(JSC::JSObject::getPrototype):
(JSC::JSObject::putGetter):
(JSC::JSObject::putSetter):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::hasProperty const):
(JSC::JSObject::hasPropertyGeneric const):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::deletePropertyByIndex):
(JSC::callToPrimitiveFunction):
(JSC::JSObject::ordinaryToPrimitive const):
(JSC::JSObject::defaultValue):
(JSC::JSObject::toPrimitive const):
(JSC::JSObject::getPrimitiveNumber const):
(JSC::JSObject::hasInstance):
(JSC::JSObject::defaultHasInstance):
(JSC::objectPrivateFuncInstanceOf):
(JSC::JSObject::getPropertyNames):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::toNumber const):
(JSC::JSObject::toString const):
(JSC::JSObject::toThis):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::isExtensible):
(JSC::JSObject::reifyAllStaticProperties):
(JSC::putIndexedDescriptor):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::attemptToInterceptPutByIndexOnHoleForPrototype):
(JSC::JSObject::attemptToInterceptPutByIndexOnHole):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):
(JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexSlowOrBeyondVectorLength):
(JSC::getCustomGetterSetterFunctionForGetterSetter):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::putDescriptor):
(JSC::JSObject::putDirectMayBeIndex):
(JSC::validateAndApplyPropertyDescriptor):
(JSC::JSObject::defineOwnNonIndexProperty):
(JSC::JSObject::defineOwnProperty):
(JSC::JSObject::getEnumerableLength):
(JSC::JSObject::getStructurePropertyNames):
(JSC::JSObject::getGenericPropertyNames):
(JSC::JSObject::getMethod):

  • runtime/JSObject.h:

(JSC::JSObject::putByIndexInline):
(JSC::JSObject::putDirectIndex):
(JSC::JSObject::getDirectIndex):
(JSC::JSObject::getIndex const):
(JSC::JSObject::createRawObject):
(JSC::JSFinalObject::create):
(JSC::JSObject::getPrototype):
(JSC::JSObject::getOwnPropertySlot):
(JSC::JSObject::doPutPropertySecurityCheck):
(JSC::JSObject::getPropertySlot):
(JSC::JSObject::get const):

  • runtime/JSObjectInlines.h:

(JSC::createListFromArrayLike):
(JSC::JSObject::getPropertySlot const):
(JSC::JSObject::getPropertySlot):
(JSC::JSObject::getNonIndexPropertySlot):
(JSC::JSObject::getOwnPropertySlotInline):
(JSC::JSObject::putInlineForJSObject):
(JSC::JSObject::hasOwnProperty const):
(JSC::JSObject::putOwnDataPropertyMayBeIndex):

  • runtime/JSPromise.cpp:

(JSC::JSPromise::resolve):

  • runtime/JSPromise.h:
  • runtime/JSPromiseDeferred.cpp:

(JSC::JSPromiseDeferred::createDeferredData):
(JSC::JSPromiseDeferred::tryCreate):
(JSC::callFunction):
(JSC::JSPromiseDeferred::resolve):
(JSC::JSPromiseDeferred::reject):

  • runtime/JSPromiseDeferred.h:
  • runtime/JSPropertyNameEnumerator.h:

(JSC::propertyNameEnumerator):

  • runtime/JSProxy.cpp:

(JSC::JSProxy::toStringName):
(JSC::JSProxy::getOwnPropertySlot):
(JSC::JSProxy::getOwnPropertySlotByIndex):
(JSC::JSProxy::put):
(JSC::JSProxy::putByIndex):
(JSC::JSProxy::defineOwnProperty):
(JSC::JSProxy::deleteProperty):
(JSC::JSProxy::isExtensible):
(JSC::JSProxy::preventExtensions):
(JSC::JSProxy::deletePropertyByIndex):
(JSC::JSProxy::getPropertyNames):
(JSC::JSProxy::getEnumerableLength):
(JSC::JSProxy::getStructurePropertyNames):
(JSC::JSProxy::getGenericPropertyNames):
(JSC::JSProxy::getOwnPropertyNames):
(JSC::JSProxy::setPrototype):
(JSC::JSProxy::getPrototype):

  • runtime/JSProxy.h:
  • runtime/JSScope.cpp:

(JSC::abstractAccess):
(JSC::isUnscopable):
(JSC::JSScope::resolve):
(JSC::JSScope::resolveScopeForHoistingFuncDeclInEval):
(JSC::JSScope::abstractResolve):
(JSC::JSScope::toThis):

  • runtime/JSScope.h:

(JSC::CallFrame::lexicalGlobalObject const):
(JSC::ExecState::lexicalGlobalObject const): Deleted.

  • runtime/JSSet.cpp:

(JSC::JSSet::toStringName):
(JSC::JSSet::clone):

  • runtime/JSSet.h:
  • runtime/JSSetIterator.cpp:

(JSC::JSSetIterator::createPair):

  • runtime/JSSetIterator.h:
  • runtime/JSString.cpp:

(JSC::JSString::equalSlowCase const):
(JSC::JSRopeString::resolveRopeToAtomString const):
(JSC::JSRopeString::resolveRopeToExistingAtomString const):
(JSC::JSRopeString::resolveRopeWithFunction const):
(JSC::JSRopeString::resolveRope const):
(JSC::JSRopeString::outOfMemory const):
(JSC::JSString::toPrimitive const):
(JSC::JSString::getPrimitiveNumber const):
(JSC::JSString::toNumber const):
(JSC::JSString::toObject const):
(JSC::JSString::toThis):
(JSC::JSString::getStringPropertyDescriptor):

  • runtime/JSString.h:

(JSC::JSString::toIdentifier const):
(JSC::JSString::toAtomString const):
(JSC::JSString::toExistingAtomString const):
(JSC::JSString::value const):
(JSC::JSString::tryGetValue const):
(JSC::JSString::getIndex):
(JSC::jsSubstring):
(JSC::jsStringWithCache):
(JSC::JSString::getStringPropertySlot):
(JSC::JSRopeString::unsafeView const):
(JSC::JSRopeString::viewWithUnderlyingString const):
(JSC::JSString::unsafeView const):
(JSC::JSString::viewWithUnderlyingString const):
(JSC::JSValue::toBoolean const):
(JSC::JSValue::toString const):
(JSC::JSValue::toStringOrNull const):
(JSC::JSValue::toWTFString const):

  • runtime/JSStringInlines.h:

(JSC::JSString::equal const):
(JSC::jsMakeNontrivialString):
(JSC::repeatCharacter):

  • runtime/JSStringIterator.cpp:

(JSC::JSStringIterator::iteratedValue const):
(JSC::JSStringIterator::clone):

  • runtime/JSStringIterator.h:
  • runtime/JSStringJoiner.cpp:

(JSC::JSStringJoiner::joinedLength const):
(JSC::JSStringJoiner::join):

  • runtime/JSStringJoiner.h:

(JSC::JSStringJoiner::JSStringJoiner):
(JSC::JSStringJoiner::appendWithoutSideEffects):
(JSC::JSStringJoiner::append):

  • runtime/JSSymbolTableObject.cpp:

(JSC::JSSymbolTableObject::deleteProperty):
(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):

  • runtime/JSSymbolTableObject.h:

(JSC::symbolTablePut):
(JSC::symbolTablePutTouchWatchpointSet):
(JSC::symbolTablePutInvalidateWatchpointSet):

  • runtime/JSTemplateObjectDescriptor.cpp:

(JSC::JSTemplateObjectDescriptor::createTemplateObject):

  • runtime/JSTemplateObjectDescriptor.h:
  • runtime/JSTypedArrayViewConstructor.cpp:

(JSC::constructTypedArrayView):

  • runtime/JSTypedArrayViewPrototype.cpp:

(JSC::typedArrayViewPrivateFuncLength):
(JSC::typedArrayViewProtoFuncSet):
(JSC::typedArrayViewProtoFuncCopyWithin):
(JSC::typedArrayViewProtoFuncIncludes):
(JSC::typedArrayViewProtoFuncLastIndexOf):
(JSC::typedArrayViewProtoFuncIndexOf):
(JSC::typedArrayViewProtoFuncJoin):
(JSC::typedArrayViewProtoGetterFuncBuffer):
(JSC::typedArrayViewProtoGetterFuncLength):
(JSC::typedArrayViewProtoGetterFuncByteLength):
(JSC::typedArrayViewProtoGetterFuncByteOffset):
(JSC::typedArrayViewProtoFuncReverse):
(JSC::typedArrayViewPrivateFuncSubarrayCreate):
(JSC::typedArrayViewProtoFuncSlice):

  • runtime/JSTypedArrays.cpp:

(JSC::createUint8TypedArray):

  • runtime/JSTypedArrays.h:
  • runtime/JSWeakMap.cpp:

(JSC::JSWeakMap::toStringName):

  • runtime/JSWeakMap.h:
  • runtime/JSWeakObjectRef.cpp:

(JSC::JSWeakObjectRef::toStringName):

  • runtime/JSWeakObjectRef.h:
  • runtime/JSWeakSet.cpp:

(JSC::JSWeakSet::toStringName):

  • runtime/JSWeakSet.h:
  • runtime/LiteralParser.cpp:

(JSC::LiteralParser<CharType>::tryJSONPParse):
(JSC::LiteralParser<CharType>::makeIdentifier):
(JSC::LiteralParser<CharType>::parse):

  • runtime/LiteralParser.h:

(JSC::LiteralParser::LiteralParser):

  • runtime/Lookup.h:

(JSC::putEntry):
(JSC::lookupPut):
(JSC::nonCachingStaticFunctionGetter):

  • runtime/MapConstructor.cpp:

(JSC::callMap):
(JSC::constructMap):

  • runtime/MapPrototype.cpp:

(JSC::getMap):
(JSC::mapProtoFuncClear):
(JSC::mapProtoFuncDelete):
(JSC::mapProtoFuncGet):
(JSC::mapProtoFuncHas):
(JSC::mapProtoFuncSet):
(JSC::mapProtoFuncSize):

  • runtime/MathObject.cpp:

(JSC::mathProtoFuncAbs):
(JSC::mathProtoFuncACos):
(JSC::mathProtoFuncASin):
(JSC::mathProtoFuncATan):
(JSC::mathProtoFuncATan2):
(JSC::mathProtoFuncCeil):
(JSC::mathProtoFuncClz32):
(JSC::mathProtoFuncCos):
(JSC::mathProtoFuncExp):
(JSC::mathProtoFuncFloor):
(JSC::mathProtoFuncHypot):
(JSC::mathProtoFuncLog):
(JSC::mathProtoFuncMax):
(JSC::mathProtoFuncMin):
(JSC::mathProtoFuncPow):
(JSC::mathProtoFuncRound):
(JSC::mathProtoFuncSign):
(JSC::mathProtoFuncSin):
(JSC::mathProtoFuncSqrt):
(JSC::mathProtoFuncTan):
(JSC::mathProtoFuncIMul):
(JSC::mathProtoFuncACosh):
(JSC::mathProtoFuncASinh):
(JSC::mathProtoFuncATanh):
(JSC::mathProtoFuncCbrt):
(JSC::mathProtoFuncCosh):
(JSC::mathProtoFuncExpm1):
(JSC::mathProtoFuncFround):
(JSC::mathProtoFuncLog1p):
(JSC::mathProtoFuncLog10):
(JSC::mathProtoFuncLog2):
(JSC::mathProtoFuncSinh):
(JSC::mathProtoFuncTanh):
(JSC::mathProtoFuncTrunc):

  • runtime/Microtask.h:
  • runtime/ModuleProgramExecutable.cpp:

(JSC::ModuleProgramExecutable::ModuleProgramExecutable):
(JSC::ModuleProgramExecutable::create):

  • runtime/ModuleProgramExecutable.h:
  • runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructor<errorType>::constructNativeErrorConstructor):
(JSC::NativeErrorConstructor<errorType>::callNativeErrorConstructor):

  • runtime/NullSetterFunction.cpp:

(JSC::callerIsStrict):
(JSC::NullSetterFunctionInternal::callReturnUndefined):

  • runtime/NumberConstructor.cpp:

(JSC::constructNumberConstructor):
(JSC::callNumberConstructor):

  • runtime/NumberObject.cpp:

(JSC::constructNumber):

  • runtime/NumberObject.h:
  • runtime/NumberPrototype.cpp:

(JSC::throwVMToThisNumberError):
(JSC::numberProtoFuncToExponential):
(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):
(JSC::numberProtoFuncToString):
(JSC::numberProtoFuncToLocaleString):
(JSC::numberProtoFuncValueOf):
(JSC::extractToStringRadixArgument):

  • runtime/NumberPrototype.h:
  • runtime/ObjectConstructor.cpp:

(JSC::constructObjectWithNewTarget):
(JSC::constructWithObjectConstructor):
(JSC::callObjectConstructor):
(JSC::objectConstructorGetPrototypeOf):
(JSC::objectConstructorSetPrototypeOf):
(JSC::objectConstructorGetOwnPropertyDescriptor):
(JSC::objectConstructorGetOwnPropertyDescriptors):
(JSC::objectConstructorGetOwnPropertyNames):
(JSC::objectConstructorGetOwnPropertySymbols):
(JSC::objectConstructorKeys):
(JSC::objectConstructorAssign):
(JSC::objectConstructorValues):
(JSC::toPropertyDescriptor):
(JSC::objectConstructorDefineProperty):
(JSC::defineProperties):
(JSC::objectConstructorDefineProperties):
(JSC::objectConstructorCreate):
(JSC::setIntegrityLevel):
(JSC::testIntegrityLevel):
(JSC::objectConstructorSeal):
(JSC::objectConstructorFreeze):
(JSC::objectConstructorPreventExtensions):
(JSC::objectConstructorIsSealed):
(JSC::objectConstructorIsFrozen):
(JSC::objectConstructorIsExtensible):
(JSC::objectConstructorIs):
(JSC::ownPropertyKeys):

  • runtime/ObjectConstructor.h:

(JSC::constructEmptyObject):
(JSC::constructObject):
(JSC::constructObjectFromPropertyDescriptor):

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncValueOf):
(JSC::objectProtoFuncHasOwnProperty):
(JSC::objectProtoFuncIsPrototypeOf):
(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
(JSC::objectProtoFuncPropertyIsEnumerable):
(JSC::objectProtoFuncToLocaleString):
(JSC::objectProtoFuncToString):

  • runtime/Operations.cpp:

(JSC::JSValue::equalSlowCase):
(JSC::JSValue::strictEqualSlowCase):
(JSC::jsAddSlowCase):
(JSC::jsTypeStringForValue):
(JSC::jsIsObjectTypeOrNull):
(JSC::normalizePrototypeChain):

  • runtime/Operations.h:

(JSC::jsString):
(JSC::jsStringFromRegisterArray):
(JSC::bigIntCompare):
(JSC::toPrimitiveNumeric):
(JSC::jsLess):
(JSC::jsLessEq):
(JSC::jsAddNonNumber):
(JSC::jsAdd):
(JSC::jsSub):
(JSC::jsMul):
(JSC::jsStringFromArguments): Deleted.

  • runtime/ParseInt.h:

(JSC::toStringView):

  • runtime/ProgramExecutable.cpp:

(JSC::ProgramExecutable::ProgramExecutable):
(JSC::hasRestrictedGlobalProperty):
(JSC::ProgramExecutable::initializeGlobalProperties):

  • runtime/ProgramExecutable.h:
  • runtime/PropertyDescriptor.cpp:

(JSC::PropertyDescriptor::slowGetterSetter):
(JSC::PropertyDescriptor::equalTo const):

  • runtime/PropertyDescriptor.h:
  • runtime/PropertySlot.cpp:

(JSC::PropertySlot::functionGetter const):
(JSC::PropertySlot::customGetter const):
(JSC::PropertySlot::customAccessorGetter const):

  • runtime/PropertySlot.h:

(JSC::PropertySlot::getValue const):

  • runtime/ProxyConstructor.cpp:

(JSC::makeRevocableProxy):
(JSC::proxyRevocableConstructorThrowError):
(JSC::constructProxyObject):
(JSC::callProxy):

  • runtime/ProxyConstructor.h:
  • runtime/ProxyObject.cpp:

(JSC::ProxyObject::toStringName):
(JSC::ProxyObject::finishCreation):
(JSC::performProxyGet):
(JSC::ProxyObject::performGet):
(JSC::ProxyObject::performInternalMethodGetOwnProperty):
(JSC::ProxyObject::performHasProperty):
(JSC::ProxyObject::getOwnPropertySlotCommon):
(JSC::ProxyObject::getOwnPropertySlot):
(JSC::ProxyObject::getOwnPropertySlotByIndex):
(JSC::ProxyObject::performPut):
(JSC::ProxyObject::put):
(JSC::ProxyObject::putByIndexCommon):
(JSC::ProxyObject::putByIndex):
(JSC::performProxyCall):
(JSC::performProxyConstruct):
(JSC::ProxyObject::performDelete):
(JSC::ProxyObject::deleteProperty):
(JSC::ProxyObject::deletePropertyByIndex):
(JSC::ProxyObject::performPreventExtensions):
(JSC::ProxyObject::preventExtensions):
(JSC::ProxyObject::performIsExtensible):
(JSC::ProxyObject::isExtensible):
(JSC::ProxyObject::performDefineOwnProperty):
(JSC::ProxyObject::defineOwnProperty):
(JSC::ProxyObject::performGetOwnPropertyNames):
(JSC::ProxyObject::getOwnPropertyNames):
(JSC::ProxyObject::getPropertyNames):
(JSC::ProxyObject::getOwnNonIndexPropertyNames):
(JSC::ProxyObject::getStructurePropertyNames):
(JSC::ProxyObject::getGenericPropertyNames):
(JSC::ProxyObject::performSetPrototype):
(JSC::ProxyObject::setPrototype):
(JSC::ProxyObject::performGetPrototype):
(JSC::ProxyObject::getPrototype):

  • runtime/ProxyObject.h:
  • runtime/PutPropertySlot.h:
  • runtime/ReflectObject.cpp:

(JSC::reflectObjectConstruct):
(JSC::reflectObjectDefineProperty):
(JSC::reflectObjectGet):
(JSC::reflectObjectGetOwnPropertyDescriptor):
(JSC::reflectObjectGetPrototypeOf):
(JSC::reflectObjectIsExtensible):
(JSC::reflectObjectOwnKeys):
(JSC::reflectObjectPreventExtensions):
(JSC::reflectObjectSet):
(JSC::reflectObjectSetPrototypeOf):

  • runtime/RegExp.h:
  • runtime/RegExpCachedResult.cpp:

(JSC::RegExpCachedResult::lastResult):
(JSC::RegExpCachedResult::leftContext):
(JSC::RegExpCachedResult::rightContext):
(JSC::RegExpCachedResult::setInput):

  • runtime/RegExpCachedResult.h:
  • runtime/RegExpConstructor.cpp:

(JSC::regExpConstructorDollar):
(JSC::regExpConstructorInput):
(JSC::regExpConstructorMultiline):
(JSC::regExpConstructorLastMatch):
(JSC::regExpConstructorLastParen):
(JSC::regExpConstructorLeftContext):
(JSC::regExpConstructorRightContext):
(JSC::setRegExpConstructorInput):
(JSC::setRegExpConstructorMultiline):
(JSC::getRegExpStructure):
(JSC::toFlags):
(JSC::regExpCreate):
(JSC::constructRegExp):
(JSC::esSpecRegExpCreate):
(JSC::constructWithRegExpConstructor):
(JSC::callRegExpConstructor):

  • runtime/RegExpConstructor.h:

(JSC::isRegExp):

  • runtime/RegExpGlobalData.cpp:

(JSC::RegExpGlobalData::getBackref):
(JSC::RegExpGlobalData::getLastParen):
(JSC::RegExpGlobalData::getLeftContext):
(JSC::RegExpGlobalData::getRightContext):

  • runtime/RegExpGlobalData.h:
  • runtime/RegExpGlobalDataInlines.h:

(JSC::RegExpGlobalData::setInput):

  • runtime/RegExpInlines.h:

(JSC::RegExp::matchInline):

  • runtime/RegExpMatchesArray.h:

(JSC::createRegExpMatchesArray):

  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::getOwnPropertySlot):
(JSC::RegExpObject::deleteProperty):
(JSC::RegExpObject::getOwnNonIndexPropertyNames):
(JSC::RegExpObject::getPropertyNames):
(JSC::RegExpObject::getGenericPropertyNames):
(JSC::RegExpObject::defineOwnProperty):
(JSC::regExpObjectSetLastIndexStrict):
(JSC::regExpObjectSetLastIndexNonStrict):
(JSC::RegExpObject::put):
(JSC::RegExpObject::exec):
(JSC::RegExpObject::match):
(JSC::RegExpObject::matchGlobal):

  • runtime/RegExpObject.h:
  • runtime/RegExpObjectInlines.h:

(JSC::getRegExpObjectLastIndexAsUnsigned):
(JSC::RegExpObject::execInline):
(JSC::RegExpObject::matchInline):
(JSC::collectMatches):

  • runtime/RegExpPrototype.cpp:

(JSC::regExpProtoFuncTestFast):
(JSC::regExpProtoFuncExec):
(JSC::regExpProtoFuncMatchFast):
(JSC::regExpProtoFuncCompile):
(JSC::flagsString):
(JSC::regExpProtoFuncToString):
(JSC::regExpProtoGetterGlobal):
(JSC::regExpProtoGetterIgnoreCase):
(JSC::regExpProtoGetterMultiline):
(JSC::regExpProtoGetterDotAll):
(JSC::regExpProtoGetterSticky):
(JSC::regExpProtoGetterUnicode):
(JSC::regExpProtoGetterFlags):
(JSC::regExpProtoGetterSourceInternal):
(JSC::regExpProtoGetterSource):
(JSC::regExpProtoFuncSearchFast):
(JSC::regExpProtoFuncSplitFast):

  • runtime/SamplingProfiler.cpp:

(JSC::FrameWalker::FrameWalker):
(JSC::FrameWalker::isValidFramePointer):
(JSC::CFrameWalker::CFrameWalker):
(JSC::SamplingProfiler::takeSample):
(JSC::SamplingProfiler::StackFrame::nameFromCallee):

  • runtime/ScopedArguments.cpp:

(JSC::ScopedArguments::createByCopying):
(JSC::ScopedArguments::copyToArguments):

  • runtime/ScopedArguments.h:
  • runtime/ScriptExecutable.cpp:

(JSC::ScriptExecutable::newCodeBlockFor):
(JSC::ScriptExecutable::prepareForExecutionImpl):
(JSC::ScriptExecutable::createTemplateObject):

  • runtime/ScriptExecutable.h:
  • runtime/SetConstructor.cpp:

(JSC::callSet):
(JSC::constructSet):

  • runtime/SetPrototype.cpp:

(JSC::getSet):
(JSC::setProtoFuncAdd):
(JSC::setProtoFuncClear):
(JSC::setProtoFuncDelete):
(JSC::setProtoFuncHas):
(JSC::setProtoFuncSize):

  • runtime/SimpleTypedArrayController.cpp:

(JSC::SimpleTypedArrayController::toJS):

  • runtime/SimpleTypedArrayController.h:
  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayValueMap::putDirect):
(JSC::SparseArrayEntry::put):

  • runtime/SparseArrayValueMap.h:
  • runtime/StrictEvalActivation.cpp:

(JSC::StrictEvalActivation::deleteProperty):

  • runtime/StrictEvalActivation.h:
  • runtime/StringConstructor.cpp:

(JSC::stringFromCharCode):
(JSC::stringFromCodePoint):
(JSC::constructWithStringConstructor):
(JSC::stringConstructor):
(JSC::callStringConstructor):

  • runtime/StringConstructor.h:
  • runtime/StringObject.cpp:

(JSC::StringObject::getOwnPropertySlot):
(JSC::StringObject::getOwnPropertySlotByIndex):
(JSC::StringObject::put):
(JSC::StringObject::putByIndex):
(JSC::isStringOwnProperty):
(JSC::StringObject::defineOwnProperty):
(JSC::StringObject::deleteProperty):
(JSC::StringObject::deletePropertyByIndex):
(JSC::StringObject::getOwnPropertyNames):
(JSC::StringObject::getOwnNonIndexPropertyNames):

  • runtime/StringObject.h:

(JSC::jsStringWithReuse):
(JSC::jsSubstring):

  • runtime/StringPrototype.cpp:

(JSC::substituteBackreferencesSlow):
(JSC::jsSpliceSubstrings):
(JSC::jsSpliceSubstringsWithSeparators):
(JSC::removeUsingRegExpSearch):
(JSC::replaceUsingRegExpSearch):
(JSC::operationStringProtoFuncReplaceRegExpEmptyStr):
(JSC::operationStringProtoFuncReplaceRegExpString):
(JSC::replaceUsingStringSearch):
(JSC::stringProtoFuncRepeatCharacter):
(JSC::replace):
(JSC::stringProtoFuncReplaceUsingRegExp):
(JSC::stringProtoFuncReplaceUsingStringSearch):
(JSC::operationStringProtoFuncReplaceGeneric):
(JSC::stringProtoFuncToString):
(JSC::stringProtoFuncCharAt):
(JSC::stringProtoFuncCharCodeAt):
(JSC::stringProtoFuncCodePointAt):
(JSC::stringProtoFuncIndexOf):
(JSC::stringProtoFuncLastIndexOf):
(JSC::stringProtoFuncSlice):
(JSC::splitStringByOneCharacterImpl):
(JSC::stringProtoFuncSplitFast):
(JSC::stringProtoFuncSubstrImpl):
(JSC::stringProtoFuncSubstring):
(JSC::stringProtoFuncToLowerCase):
(JSC::stringProtoFuncToUpperCase):
(JSC::stringProtoFuncLocaleCompare):
(JSC::toLocaleCase):
(JSC::stringProtoFuncToLocaleUpperCase):
(JSC::trimString):
(JSC::stringProtoFuncTrim):
(JSC::stringProtoFuncTrimStart):
(JSC::stringProtoFuncTrimEnd):
(JSC::stringProtoFuncStartsWith):
(JSC::stringProtoFuncEndsWith):
(JSC::stringIncludesImpl):
(JSC::stringProtoFuncIncludes):
(JSC::builtinStringIncludesInternal):
(JSC::stringProtoFuncIterator):
(JSC::normalize):
(JSC::stringProtoFuncNormalize):

  • runtime/StringPrototype.h:
  • runtime/StringPrototypeInlines.h:

(JSC::stringSlice):

  • runtime/StringRecursionChecker.cpp:

(JSC::StringRecursionChecker::throwStackOverflowError):
(JSC::StringRecursionChecker::emptyString):

  • runtime/StringRecursionChecker.h:

(JSC::StringRecursionChecker::performCheck):
(JSC::StringRecursionChecker::StringRecursionChecker):
(JSC::StringRecursionChecker::~StringRecursionChecker):

  • runtime/Structure.h:
  • runtime/StructureInlines.h:

(JSC::Structure::prototypeChain const):
(JSC::Structure::setObjectToStringValue):

  • runtime/StructureRareData.cpp:

(JSC::StructureRareData::setObjectToStringValue):

  • runtime/StructureRareData.h:
  • runtime/Symbol.cpp:

(JSC::Symbol::toPrimitive const):
(JSC::Symbol::getPrimitiveNumber const):
(JSC::Symbol::toObject const):
(JSC::Symbol::toNumber const):

  • runtime/Symbol.h:
  • runtime/SymbolConstructor.cpp:

(JSC::callSymbol):
(JSC::symbolConstructorFor):
(JSC::symbolConstructorKeyFor):

  • runtime/SymbolObject.cpp:

(JSC::SymbolObject::toStringName):
(JSC::SymbolObject::defaultValue):

  • runtime/SymbolObject.h:
  • runtime/SymbolPrototype.cpp:

(JSC::symbolProtoGetterDescription):
(JSC::symbolProtoFuncToString):
(JSC::symbolProtoFuncValueOf):

  • runtime/TestRunnerUtils.cpp:

(JSC::failNextNewCodeBlock):
(JSC::numberOfDFGCompiles):
(JSC::setNeverInline):
(JSC::setNeverOptimize):
(JSC::setCannotUseOSRExitFuzzing):
(JSC::optimizeNextInvocation):

  • runtime/TestRunnerUtils.h:
  • runtime/ThrowScope.cpp:

(JSC::ThrowScope::throwException):

  • runtime/ThrowScope.h:

(JSC::ThrowScope::throwException):
(JSC::throwException):

  • runtime/ToNativeFromValue.h:

(JSC::toNativeFromValue):

  • runtime/TypeError.h:

(JSC::typeError):

  • runtime/TypedArrayController.h:
  • runtime/VM.cpp:

(JSC::VM::throwException):
(JSC::VM::callPromiseRejectionCallback):
(JSC::QueuedTask::run):
(JSC::VM::deprecatedVMEntryGlobalObject const):
(JSC::VM::vmEntryGlobalObject const): Deleted.

  • runtime/VM.h:

(JSC::VM::addressOfCallFrameForCatch):
(JSC::VM::handleTraps):

  • runtime/VMEntryScope.cpp:

(JSC::VMEntryScope::VMEntryScope):

  • runtime/VMEntryScope.h:
  • runtime/VMTraps.cpp:

(JSC::VMTraps::invalidateCodeBlocksOnStack):
(JSC::VMTraps::handleTraps):

  • runtime/VMTraps.h:

(JSC::VMTraps::invalidateCodeBlocksOnStack):

  • runtime/Watchdog.cpp:

(JSC::Watchdog::shouldTerminate):

  • runtime/Watchdog.h:
  • runtime/WeakMapConstructor.cpp:

(JSC::callWeakMap):
(JSC::constructWeakMap):

  • runtime/WeakMapPrototype.cpp:

(JSC::getWeakMap):
(JSC::protoFuncWeakMapDelete):
(JSC::protoFuncWeakMapGet):
(JSC::protoFuncWeakMapHas):
(JSC::protoFuncWeakMapSet):

  • runtime/WeakObjectRefConstructor.cpp:

(JSC::callWeakRef):
(JSC::constructWeakRef):

  • runtime/WeakObjectRefPrototype.cpp:

(JSC::getWeakRef):
(JSC::protoFuncWeakRefDeref):

  • runtime/WeakSetConstructor.cpp:

(JSC::callWeakSet):
(JSC::constructWeakSet):

  • runtime/WeakSetPrototype.cpp:

(JSC::getWeakSet):
(JSC::protoFuncWeakSetDelete):
(JSC::protoFuncWeakSetHas):
(JSC::protoFuncWeakSetAdd):

  • tools/JSDollarVM.cpp:

(JSC::JSDollarVMCallFrame::create):
(JSC::JSDollarVMCallFrame::finishCreation):
(JSC::ImpureGetter::getOwnPropertySlot):
(JSC::CustomGetter::getOwnPropertySlot):
(JSC::CustomGetter::customGetter):
(JSC::CustomGetter::customGetterAcessor):
(JSC::RuntimeArray::create):
(JSC::RuntimeArray::getOwnPropertySlot):
(JSC::RuntimeArray::getOwnPropertySlotByIndex):
(JSC::RuntimeArray::put):
(JSC::RuntimeArray::deleteProperty):
(JSC::RuntimeArray::finishCreation):
(JSC::RuntimeArray::RuntimeArray):
(JSC::RuntimeArray::lengthGetter):
(JSC::testStaticAccessorGetter):
(JSC::testStaticAccessorPutter):
(JSC::StaticCustomAccessor::getOwnPropertySlot):
(JSC::DOMJITGetter::DOMJITAttribute::slowCall):
(JSC::DOMJITGetter::DOMJITAttribute::callDOMGetter):
(JSC::DOMJITGetter::customGetter):
(JSC::DOMJITGetterComplex::DOMJITAttribute::slowCall):
(JSC::DOMJITGetterComplex::DOMJITAttribute::callDOMGetter):
(JSC::DOMJITGetterComplex::customGetter):
(JSC::DOMJITFunctionObject::functionWithTypeCheck):
(JSC::DOMJITFunctionObject::functionWithoutTypeCheck):
(JSC::DOMJITCheckSubClassObject::functionWithTypeCheck):
(JSC::DOMJITCheckSubClassObject::functionWithoutTypeCheck):
(JSC::DOMJITGetterBaseJSObject::DOMJITAttribute::slowCall):
(JSC::DOMJITGetterBaseJSObject::DOMJITAttribute::callDOMGetter):
(JSC::DOMJITGetterBaseJSObject::customGetter):
(JSC::customGetAccessor):
(JSC::customGetValue):
(JSC::customSetAccessor):
(JSC::customSetValue):
(JSC::functionWasmStreamingParserAddBytes):
(JSC::functionBreakpoint):
(JSC::functionGC):
(JSC::functionEdenGC):
(JSC::functionCallFrame):
(JSC::functionCodeBlockForFrame):
(JSC::codeBlockFromArg):
(JSC::doPrint):
(JSC::functionDumpCallFrame):
(JSC::functionDumpStack):
(JSC::functionCreateRuntimeArray):
(JSC::functionSetImpureGetterDelegate):
(JSC::functionCreateBuiltin):
(JSC::functionGetPrivateProperty):
(JSC::functionCreateElement):
(JSC::functionGetHiddenValue):
(JSC::functionSetHiddenValue):
(JSC::functionShadowChickenFunctionsOnStack):
(JSC::functionFindTypeForExpression):
(JSC::functionReturnTypeFor):
(JSC::functionHasBasicBlockExecuted):
(JSC::functionBasicBlockExecutionCount):
(JSC::changeDebuggerModeWhenIdle):
(JSC::functionEnableDebuggerModeWhenIdle):
(JSC::functionDisableDebuggerModeWhenIdle):
(JSC::functionGetGetterSetter):
(JSC::functionLoadGetterFromGetterSetter):

  • tools/VMInspector.cpp:

(JSC::VMInspector::currentThreadOwnsJSLock):
(JSC::ensureCurrentThreadOwnsJSLock):
(JSC::VMInspector::gc):
(JSC::VMInspector::edenGC):
(JSC::VMInspector::isValidCodeBlock):
(JSC::VMInspector::codeBlockForFrame):
(JSC::VMInspector::dumpCallFrame):
(JSC::VMInspector::dumpStack):

  • tools/VMInspector.h:
  • wasm/WasmCallingConvention.h:
  • wasm/WasmEmbedder.h:
  • wasm/WasmOperations.cpp:

(JSC::Wasm::operationThrowBadI64):

  • wasm/WasmOperations.h:
  • wasm/js/JSToWasm.cpp:

(JSC::Wasm::allocateResultsArray):

  • wasm/js/JSWebAssembly.cpp:

(JSC::reject):
(JSC::webAssemblyModuleValidateAsyncInternal):
(JSC::webAssemblyCompileFunc):
(JSC::resolve):
(JSC::JSWebAssembly::webAssemblyModuleValidateAsync):
(JSC::instantiate):
(JSC::compileAndInstantiate):
(JSC::JSWebAssembly::instantiate):
(JSC::webAssemblyModuleInstantinateAsyncInternal):
(JSC::JSWebAssembly::webAssemblyModuleInstantinateAsync):
(JSC::webAssemblyInstantiateFunc):
(JSC::webAssemblyValidateFunc):
(JSC::webAssemblyCompileStreamingInternal):
(JSC::webAssemblyInstantiateStreamingInternal):

  • wasm/js/JSWebAssembly.h:
  • wasm/js/JSWebAssemblyCompileError.cpp:

(JSC::JSWebAssemblyCompileError::create):
(JSC::createJSWebAssemblyCompileError):

  • wasm/js/JSWebAssemblyCompileError.h:
  • wasm/js/JSWebAssemblyHelpers.h:

(JSC::toNonWrappingUint32):
(JSC::getWasmBufferFromValue):
(JSC::createSourceBufferFromValue):

  • wasm/js/JSWebAssemblyInstance.cpp:

(JSC::JSWebAssemblyInstance::JSWebAssemblyInstance):
(JSC::JSWebAssemblyInstance::finalizeCreation):
(JSC::JSWebAssemblyInstance::create):

  • wasm/js/JSWebAssemblyInstance.h:
  • wasm/js/JSWebAssemblyLinkError.cpp:

(JSC::JSWebAssemblyLinkError::create):
(JSC::createJSWebAssemblyLinkError):

  • wasm/js/JSWebAssemblyLinkError.h:
  • wasm/js/JSWebAssemblyMemory.cpp:

(JSC::JSWebAssemblyMemory::create):
(JSC::JSWebAssemblyMemory::grow):

  • wasm/js/JSWebAssemblyMemory.h:
  • wasm/js/JSWebAssemblyModule.cpp:

(JSC::JSWebAssemblyModule::createStub):

  • wasm/js/JSWebAssemblyModule.h:
  • wasm/js/JSWebAssemblyRuntimeError.cpp:

(JSC::JSWebAssemblyRuntimeError::create):
(JSC::createJSWebAssemblyRuntimeError):

  • wasm/js/JSWebAssemblyRuntimeError.h:
  • wasm/js/JSWebAssemblyTable.cpp:

(JSC::JSWebAssemblyTable::create):

  • wasm/js/JSWebAssemblyTable.h:
  • wasm/js/WasmToJS.cpp:

(JSC::Wasm::handleBadI64Use):
(JSC::Wasm::wasmToJS):
(JSC::Wasm::wasmToJSException):

  • wasm/js/WasmToJS.h:
  • wasm/js/WebAssemblyCompileErrorConstructor.cpp:

(JSC::constructJSWebAssemblyCompileError):
(JSC::callJSWebAssemblyCompileError):

  • wasm/js/WebAssemblyFunction.cpp:

(JSC::callWebAssemblyFunction):

  • wasm/js/WebAssemblyInstanceConstructor.cpp:

(JSC::constructJSWebAssemblyInstance):
(JSC::callJSWebAssemblyInstance):

  • wasm/js/WebAssemblyInstanceConstructor.h:
  • wasm/js/WebAssemblyInstancePrototype.cpp:

(JSC::getInstance):
(JSC::webAssemblyInstanceProtoFuncExports):

  • wasm/js/WebAssemblyLinkErrorConstructor.cpp:

(JSC::constructJSWebAssemblyLinkError):
(JSC::callJSWebAssemblyLinkError):

  • wasm/js/WebAssemblyMemoryConstructor.cpp:

(JSC::constructJSWebAssemblyMemory):
(JSC::callJSWebAssemblyMemory):

  • wasm/js/WebAssemblyMemoryPrototype.cpp:

(JSC::getMemory):
(JSC::webAssemblyMemoryProtoFuncGrow):
(JSC::webAssemblyMemoryProtoFuncBuffer):

  • wasm/js/WebAssemblyModuleConstructor.cpp:

(JSC::webAssemblyModuleCustomSections):
(JSC::webAssemblyModuleImports):
(JSC::webAssemblyModuleExports):
(JSC::constructJSWebAssemblyModule):
(JSC::callJSWebAssemblyModule):
(JSC::WebAssemblyModuleConstructor::createModule):

  • wasm/js/WebAssemblyModuleConstructor.h:
  • wasm/js/WebAssemblyModuleRecord.cpp:

(JSC::WebAssemblyModuleRecord::create):
(JSC::WebAssemblyModuleRecord::finishCreation):
(JSC::WebAssemblyModuleRecord::link):
(JSC::dataSegmentFail):
(JSC::WebAssemblyModuleRecord::evaluate):

  • wasm/js/WebAssemblyModuleRecord.h:
  • wasm/js/WebAssemblyRuntimeErrorConstructor.cpp:

(JSC::constructJSWebAssemblyRuntimeError):
(JSC::callJSWebAssemblyRuntimeError):

  • wasm/js/WebAssemblyTableConstructor.cpp:

(JSC::constructJSWebAssemblyTable):
(JSC::callJSWebAssemblyTable):

  • wasm/js/WebAssemblyTablePrototype.cpp:

(JSC::getTable):
(JSC::webAssemblyTableProtoFuncLength):
(JSC::webAssemblyTableProtoFuncGrow):
(JSC::webAssemblyTableProtoFuncGet):
(JSC::webAssemblyTableProtoFuncSet):

  • wasm/js/WebAssemblyWrapperFunction.cpp:

(JSC::callWebAssemblyWrapperFunction):

  • yarr/YarrErrorCode.cpp:

(JSC::Yarr::errorToThrow):

  • yarr/YarrErrorCode.h:

Source/WebCore:

This patch is changing ExecState* to JSGlobalObject*. We are using ExecState* (a.k.a. CallFrame*) as a useful way to access arguments, thisValue,
and lexical JSGlobalObject*. But using CallFrame* to access lexical JSGlobalObject* is wrong: when a function is inlined, CallFrame* is pointing
a CallFrame* of outer function. So if outer function's lexical JSGlobalObject is different from inlined one, we are getting wrong value. We had this
bug so long and we are adhocly fixing some of them, but we have bunch of this type of bugs.

In this patch, we explicitly pass lexical JSGlobalObject* so that we pass correct lexical JSGlobalObject* instead of just passing ExecState*. This fixes
various issues. And furthermore, it cleans up code by decoupling JSGlobalObject* from CallFrame*. Now CallFrame* is really a CallFrame* and it is used
only when we actually want to access CallFrame information.

And this also removes many ExecState::vm() function calls. And we can just use JSGlobalObject::vm() calls instead. We had a ugly hack that we had
restriction that all JSCallee needs to be non-large-allocation. This limitation is introduced to keep ExecState::vm() fast. But this limitation now
becomes major obstacle to introduce IsoSubspace optimization, and this problem prevents us from putting all JSCells into IsoSubspace. This patch paves
the way to putting all JSCells into IsoSubspace by removing the above restriction.

  • Modules/applepay/ApplePaySession.cpp:

(WebCore::ApplePaySession::completeMerchantValidation):

  • Modules/applepay/ApplePaySession.h:
  • Modules/applepay/ApplePaySession.idl:
  • Modules/applepay/PaymentMerchantSession.h:
  • Modules/applepay/cocoa/PaymentMerchantSessionCocoa.mm:

(WebCore::PaymentMerchantSession::fromJS):

  • Modules/applepay/paymentrequest/ApplePayPaymentHandler.cpp:

(WebCore::ApplePayPaymentHandler::computeTotalAndLineItems const):
(WebCore::toJSDictionary):
(WebCore::ApplePayPaymentHandler::didAuthorizePayment):
(WebCore::ApplePayPaymentHandler::didSelectPaymentMethod):

  • Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:

(WebCore::ClipboardItemBindingsDataSource::getType):

  • Modules/encryptedmedia/MediaKeyStatusMap.cpp:

(WebCore::MediaKeyStatusMap::get):

  • Modules/encryptedmedia/MediaKeyStatusMap.h:
  • Modules/encryptedmedia/MediaKeyStatusMap.idl:
  • Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp:

(WebCore::CDMSessionClearKey::update):

  • Modules/fetch/FetchBody.idl:
  • Modules/fetch/FetchBodyOwner.cpp:

(WebCore::FetchBodyOwner::readableStream):
(WebCore::FetchBodyOwner::createReadableStream):

  • Modules/fetch/FetchBodyOwner.h:
  • Modules/fetch/FetchResponse.h:
  • Modules/indexeddb/IDBCursor.cpp:

(WebCore::IDBCursor::update):
(WebCore::IDBCursor::continuePrimaryKey):
(WebCore::IDBCursor::continueFunction):
(WebCore::IDBCursor::deleteFunction):

  • Modules/indexeddb/IDBCursor.h:
  • Modules/indexeddb/IDBCursor.idl:
  • Modules/indexeddb/IDBFactory.cpp:

(WebCore::IDBFactory::cmp):

  • Modules/indexeddb/IDBFactory.h:
  • Modules/indexeddb/IDBFactory.idl:
  • Modules/indexeddb/IDBIndex.cpp:

(WebCore::IDBIndex::doOpenCursor):
(WebCore::IDBIndex::openCursor):
(WebCore::IDBIndex::doOpenKeyCursor):
(WebCore::IDBIndex::openKeyCursor):
(WebCore::IDBIndex::count):
(WebCore::IDBIndex::doCount):
(WebCore::IDBIndex::get):
(WebCore::IDBIndex::doGet):
(WebCore::IDBIndex::getKey):
(WebCore::IDBIndex::doGetKey):
(WebCore::IDBIndex::doGetAll):
(WebCore::IDBIndex::getAll):
(WebCore::IDBIndex::doGetAllKeys):
(WebCore::IDBIndex::getAllKeys):

  • Modules/indexeddb/IDBIndex.h:
  • Modules/indexeddb/IDBIndex.idl:
  • Modules/indexeddb/IDBKeyRange.cpp:

(WebCore::IDBKeyRange::only):
(WebCore::IDBKeyRange::lowerBound):
(WebCore::IDBKeyRange::upperBound):
(WebCore::IDBKeyRange::bound):
(WebCore::IDBKeyRange::includes):

  • Modules/indexeddb/IDBKeyRange.h:
  • Modules/indexeddb/IDBKeyRange.idl:
  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::doOpenCursor):
(WebCore::IDBObjectStore::openCursor):
(WebCore::IDBObjectStore::doOpenKeyCursor):
(WebCore::IDBObjectStore::openKeyCursor):
(WebCore::IDBObjectStore::get):
(WebCore::IDBObjectStore::getKey):
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(WebCore::IDBObjectStore::putForCursorUpdate):
(WebCore::IDBObjectStore::putOrAdd):
(WebCore::IDBObjectStore::deleteFunction):
(WebCore::IDBObjectStore::doDelete):
(WebCore::IDBObjectStore::clear):
(WebCore::IDBObjectStore::createIndex):
(WebCore::IDBObjectStore::count):
(WebCore::IDBObjectStore::doCount):
(WebCore::IDBObjectStore::doGetAll):
(WebCore::IDBObjectStore::getAll):
(WebCore::IDBObjectStore::doGetAllKeys):
(WebCore::IDBObjectStore::getAllKeys):

  • Modules/indexeddb/IDBObjectStore.h:
  • Modules/indexeddb/IDBObjectStore.idl:
  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::requestOpenCursor):
(WebCore::IDBTransaction::doRequestOpenCursor):
(WebCore::IDBTransaction::requestGetAllObjectStoreRecords):
(WebCore::IDBTransaction::requestGetAllIndexRecords):
(WebCore::IDBTransaction::requestGetRecord):
(WebCore::IDBTransaction::requestGetValue):
(WebCore::IDBTransaction::requestGetKey):
(WebCore::IDBTransaction::requestIndexRecord):
(WebCore::IDBTransaction::requestCount):
(WebCore::IDBTransaction::requestDeleteRecord):
(WebCore::IDBTransaction::requestClearObjectStore):
(WebCore::IDBTransaction::requestPutOrAdd):

  • Modules/indexeddb/IDBTransaction.h:
  • Modules/indexeddb/server/IDBSerializationContext.cpp:

(WebCore::IDBServer::IDBSerializationContext::execState):

  • Modules/indexeddb/server/IDBSerializationContext.h:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::certificateTypeFromAlgorithmIdentifier):
(WebCore::RTCPeerConnection::generateCertificate):

  • Modules/mediastream/RTCPeerConnection.h:
  • Modules/mediastream/RTCPeerConnection.idl:
  • Modules/paymentrequest/PaymentMethodChangeEvent.h:
  • Modules/paymentrequest/PaymentRequest.cpp:

(WebCore::checkAndCanonicalizeDetails):

  • Modules/paymentrequest/PaymentResponse.h:
  • Modules/plugins/QuickTimePluginReplacement.mm:

(WebCore::QuickTimePluginReplacement::ensureReplacementScriptInjected):
(WebCore::QuickTimePluginReplacement::installReplacement):
(WebCore::JSQuickTimePluginReplacement::timedMetaData const):
(WebCore::JSQuickTimePluginReplacement::accessLog const):
(WebCore::JSQuickTimePluginReplacement::errorLog const):

  • Modules/webgpu/WebGPUDevice.cpp:

(WebCore::WebGPUDevice::createBufferMapped const):

  • Modules/webgpu/WebGPUDevice.h:
  • Modules/webgpu/WebGPUDevice.idl:
  • animation/Animatable.idl:
  • animation/KeyframeEffect.cpp:

(WebCore::processKeyframeLikeObject):
(WebCore::processIterableKeyframes):
(WebCore::processPropertyIndexedKeyframes):
(WebCore::KeyframeEffect::create):
(WebCore::KeyframeEffect::getKeyframes):
(WebCore::KeyframeEffect::setKeyframes):
(WebCore::KeyframeEffect::processKeyframes):
(WebCore::KeyframeEffect::animationDidSeek):

  • animation/KeyframeEffect.h:
  • animation/KeyframeEffect.idl:
  • bindings/js/DOMPromiseProxy.h:

(WebCore::DOMPromiseProxy<IDLType>::promise):
(WebCore::DOMPromiseProxy<IDLVoid>::promise):
(WebCore::DOMPromiseProxyWithResolveCallback<IDLType>::promise):

  • bindings/js/DOMWrapperWorld.h:

(WebCore::currentWorld):
(WebCore::isWorldCompatible):

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::get):
(WebCore::set):
(WebCore::toJS):
(WebCore::createIDBKeyFromValue):
(WebCore::getNthValueOnKeyPath):
(WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
(WebCore::ensureNthValueOnKeyPath):
(WebCore::canInjectNthValueOnKeyPath):
(WebCore::injectIDBKeyIntoScriptValue):
(WebCore::maybeCreateIDBKeyFromScriptValueAndKeyPath):
(WebCore::canInjectIDBKeyIntoScriptValue):
(WebCore::deserializeIDBValueToJSValue):
(WebCore::scriptValueToIDBKey):
(WebCore::createKeyPathArray):
(WebCore::generateIndexKeyForValue):
(WebCore::deserializeIDBValueWithKeyInjection):

  • bindings/js/IDBBindingUtilities.h:
  • bindings/js/JSAnimationEffectCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSAnimationTimelineCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSAuthenticatorResponseCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSBasicCredentialCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSBlobCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSCallbackData.cpp:

(WebCore::JSCallbackData::invokeCallback):

  • bindings/js/JSCustomElementInterface.cpp:

(WebCore::JSCustomElementInterface::tryToConstructCustomElement):
(WebCore::constructCustomElementSynchronously):
(WebCore::JSCustomElementInterface::upgradeElement):
(WebCore::JSCustomElementInterface::invokeCallback):
(WebCore::JSCustomElementInterface::invokeAdoptedCallback):
(WebCore::JSCustomElementInterface::invokeAttributeChangedCallback):

  • bindings/js/JSCustomElementInterface.h:

(WebCore::JSCustomElementInterface::invokeCallback):

  • bindings/js/JSCustomElementRegistryCustom.cpp:

(WebCore::getCustomElementCallback):
(WebCore::validateCustomElementNameAndThrowIfNeeded):
(WebCore::JSCustomElementRegistry::define):
(WebCore::whenDefinedPromise):
(WebCore::JSCustomElementRegistry::whenDefined):

  • bindings/js/JSCustomEventCustom.cpp:

(WebCore::JSCustomEvent::detail const):

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::create):
(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/js/JSCustomXPathNSResolver.h:
  • bindings/js/JSDOMAbstractOperations.h:

(WebCore::isVisibleNamedProperty):
(WebCore::accessVisibleNamedProperty):

  • bindings/js/JSDOMAttribute.h:

(WebCore::IDLAttribute::set):
(WebCore::IDLAttribute::setStatic):
(WebCore::IDLAttribute::get):
(WebCore::IDLAttribute::getStatic):
(WebCore::AttributeSetter::call):

  • bindings/js/JSDOMBindingSecurity.cpp:

(WebCore::canAccessDocument):
(WebCore::BindingSecurity::shouldAllowAccessToFrame):
(WebCore::BindingSecurity::shouldAllowAccessToDOMWindow):
(WebCore::BindingSecurity::shouldAllowAccessToNode):

  • bindings/js/JSDOMBindingSecurity.h:

(WebCore::BindingSecurity::checkSecurityForNode):

  • bindings/js/JSDOMBuiltinConstructor.h:

(WebCore::JSDOMBuiltinConstructor<JSClass>::callConstructor):
(WebCore::JSDOMBuiltinConstructor<JSClass>::construct):

  • bindings/js/JSDOMBuiltinConstructorBase.cpp:

(WebCore::JSDOMBuiltinConstructorBase::callFunctionWithCurrentArguments):

  • bindings/js/JSDOMBuiltinConstructorBase.h:
  • bindings/js/JSDOMConstructorBase.cpp:

(WebCore::callThrowTypeError):
(WebCore::JSDOMConstructorBase::toStringName):

  • bindings/js/JSDOMConstructorBase.h:
  • bindings/js/JSDOMConstructorNotConstructable.h:

(WebCore::JSDOMConstructorNotConstructable::callThrowTypeError):

  • bindings/js/JSDOMConvertAny.h:

(WebCore::Converter<IDLAny>::convert):
(WebCore::VariadicConverter<IDLAny>::convert):

  • bindings/js/JSDOMConvertBase.h:

(WebCore::DefaultExceptionThrower::operator()):
(WebCore::convert):
(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/js/JSDOMConvertBoolean.h:

(WebCore::Converter<IDLBoolean>::convert):

  • bindings/js/JSDOMConvertBufferSource.h:

(WebCore::toJS):
(WebCore::Detail::BufferSourceConverter::convert):
(WebCore::Converter<IDLArrayBuffer>::convert):
(WebCore::JSConverter<IDLArrayBuffer>::convert):
(WebCore::Converter<IDLDataView>::convert):
(WebCore::JSConverter<IDLDataView>::convert):
(WebCore::Converter<IDLInt8Array>::convert):
(WebCore::JSConverter<IDLInt8Array>::convert):
(WebCore::Converter<IDLInt16Array>::convert):
(WebCore::JSConverter<IDLInt16Array>::convert):
(WebCore::Converter<IDLInt32Array>::convert):
(WebCore::JSConverter<IDLInt32Array>::convert):
(WebCore::Converter<IDLUint8Array>::convert):
(WebCore::JSConverter<IDLUint8Array>::convert):
(WebCore::Converter<IDLUint16Array>::convert):
(WebCore::JSConverter<IDLUint16Array>::convert):
(WebCore::Converter<IDLUint32Array>::convert):
(WebCore::JSConverter<IDLUint32Array>::convert):
(WebCore::Converter<IDLUint8ClampedArray>::convert):
(WebCore::JSConverter<IDLUint8ClampedArray>::convert):
(WebCore::Converter<IDLFloat32Array>::convert):
(WebCore::JSConverter<IDLFloat32Array>::convert):
(WebCore::Converter<IDLFloat64Array>::convert):
(WebCore::JSConverter<IDLFloat64Array>::convert):
(WebCore::Converter<IDLArrayBufferView>::convert):
(WebCore::JSConverter<IDLArrayBufferView>::convert):

  • bindings/js/JSDOMConvertCallbacks.h:

(WebCore::Converter<IDLCallbackFunction<T>>::convert):
(WebCore::Converter<IDLCallbackInterface<T>>::convert):

  • bindings/js/JSDOMConvertDate.cpp:

(WebCore::jsDate):
(WebCore::valueToDate):

  • bindings/js/JSDOMConvertDate.h:

(WebCore::Converter<IDLDate>::convert):
(WebCore::JSConverter<IDLDate>::convert):

  • bindings/js/JSDOMConvertDictionary.h:

(WebCore::Converter<IDLDictionary<T>>::convert):
(WebCore::JSConverter<IDLDictionary<T>>::convert):

  • bindings/js/JSDOMConvertEnumeration.h:

(WebCore::Converter<IDLEnumeration<T>>::convert):
(WebCore::JSConverter<IDLEnumeration<T>>::convert):

  • bindings/js/JSDOMConvertEventListener.h:

(WebCore::Converter<IDLEventListener<T>>::convert):

  • bindings/js/JSDOMConvertIndexedDB.h:

(WebCore::JSConverter<IDLIDBKey>::convert):
(WebCore::JSConverter<IDLIDBKeyData>::convert):
(WebCore::JSConverter<IDLIDBValue>::convert):

  • bindings/js/JSDOMConvertInterface.h:

(WebCore::JSToWrappedOverloader::toWrapped):
(WebCore::Converter<IDLInterface<T>>::convert):
(WebCore::JSConverter<IDLInterface<T>>::convert):
(WebCore::JSConverter<IDLInterface<T>>::convertNewlyCreated):
(WebCore::VariadicConverter<IDLInterface<T>>::convert):

  • bindings/js/JSDOMConvertJSON.h:

(WebCore::Converter<IDLJSON>::convert):
(WebCore::JSConverter<IDLJSON>::convert):

  • bindings/js/JSDOMConvertNull.h:

(WebCore::Converter<IDLNull>::convert):

  • bindings/js/JSDOMConvertNullable.h:

(WebCore::Converter<IDLNullable<T>>::convert):
(WebCore::JSConverter<IDLNullable<T>>::convert):
(WebCore::JSConverter<IDLNullable<T>>::convertNewlyCreated):

  • bindings/js/JSDOMConvertNumbers.cpp:

(WebCore::enforceRange):
(WebCore::toSmallerInt):
(WebCore::toSmallerUInt):
(WebCore::convertToIntegerEnforceRange<int8_t>):
(WebCore::convertToIntegerEnforceRange<uint8_t>):
(WebCore::convertToIntegerClamp<int8_t>):
(WebCore::convertToIntegerClamp<uint8_t>):
(WebCore::convertToInteger<int8_t>):
(WebCore::convertToInteger<uint8_t>):
(WebCore::convertToIntegerEnforceRange<int16_t>):
(WebCore::convertToIntegerEnforceRange<uint16_t>):
(WebCore::convertToIntegerClamp<int16_t>):
(WebCore::convertToIntegerClamp<uint16_t>):
(WebCore::convertToInteger<int16_t>):
(WebCore::convertToInteger<uint16_t>):
(WebCore::convertToIntegerEnforceRange<int32_t>):
(WebCore::convertToIntegerEnforceRange<uint32_t>):
(WebCore::convertToIntegerClamp<int32_t>):
(WebCore::convertToIntegerClamp<uint32_t>):
(WebCore::convertToInteger<int32_t>):
(WebCore::convertToInteger<uint32_t>):
(WebCore::convertToIntegerEnforceRange<int64_t>):
(WebCore::convertToIntegerEnforceRange<uint64_t>):
(WebCore::convertToIntegerClamp<int64_t>):
(WebCore::convertToIntegerClamp<uint64_t>):
(WebCore::convertToInteger<int64_t>):
(WebCore::convertToInteger<uint64_t>):

  • bindings/js/JSDOMConvertNumbers.h:

(WebCore::Converter<IDLByte>::convert):
(WebCore::Converter<IDLOctet>::convert):
(WebCore::Converter<IDLShort>::convert):
(WebCore::Converter<IDLUnsignedShort>::convert):
(WebCore::Converter<IDLLong>::convert):
(WebCore::Converter<IDLUnsignedLong>::convert):
(WebCore::Converter<IDLLongLong>::convert):
(WebCore::Converter<IDLUnsignedLongLong>::convert):
(WebCore::Converter<IDLClampAdaptor<T>>::convert):
(WebCore::Converter<IDLEnforceRangeAdaptor<T>>::convert):
(WebCore::Converter<IDLFloat>::convert):
(WebCore::Converter<IDLUnrestrictedFloat>::convert):
(WebCore::Converter<IDLDouble>::convert):
(WebCore::Converter<IDLUnrestrictedDouble>::convert):

  • bindings/js/JSDOMConvertObject.h:

(WebCore::Converter<IDLObject>::convert):

  • bindings/js/JSDOMConvertPromise.h:

(WebCore::Converter<IDLPromise<T>>::convert):
(WebCore::JSConverter<IDLPromise<T>>::convert):

  • bindings/js/JSDOMConvertRecord.h:

(WebCore::Detail::IdentifierConverter<IDLDOMString>::convert):
(WebCore::Detail::IdentifierConverter<IDLByteString>::convert):
(WebCore::Detail::IdentifierConverter<IDLUSVString>::convert):

  • bindings/js/JSDOMConvertScheduledAction.h:

(WebCore::Converter<IDLScheduledAction>::convert):

  • bindings/js/JSDOMConvertSequences.h:

(WebCore::Detail::GenericSequenceConverter::convert):
(WebCore::Detail::NumericSequenceConverter::convertArray):
(WebCore::Detail::NumericSequenceConverter::convert):
(WebCore::Detail::SequenceConverter::convertArray):
(WebCore::Detail::SequenceConverter::convert):
(WebCore::Detail::SequenceConverter<IDLLong>::convert):
(WebCore::Detail::SequenceConverter<IDLFloat>::convert):
(WebCore::Detail::SequenceConverter<IDLUnrestrictedFloat>::convert):
(WebCore::Detail::SequenceConverter<IDLDouble>::convert):
(WebCore::Detail::SequenceConverter<IDLUnrestrictedDouble>::convert):
(WebCore::Converter<IDLSequence<T>>::convert):
(WebCore::JSConverter<IDLSequence<T>>::convert):
(WebCore::Converter<IDLFrozenArray<T>>::convert):
(WebCore::JSConverter<IDLFrozenArray<T>>::convert):

  • bindings/js/JSDOMConvertSerializedScriptValue.h:

(WebCore::Converter<IDLSerializedScriptValue<T>>::convert):
(WebCore::JSConverter<IDLSerializedScriptValue<T>>::convert):

  • bindings/js/JSDOMConvertStrings.cpp:

(WebCore::stringToByteString):
(WebCore::identifierToByteString):
(WebCore::valueToByteString):
(WebCore::identifierToUSVString):
(WebCore::valueToUSVString):

  • bindings/js/JSDOMConvertStrings.h:

(WebCore::Converter<IDLDOMString>::convert):
(WebCore::JSConverter<IDLDOMString>::convert):
(WebCore::Converter<IDLByteString>::convert):
(WebCore::JSConverter<IDLByteString>::convert):
(WebCore::Converter<IDLUSVString>::convert):
(WebCore::JSConverter<IDLUSVString>::convert):
(WebCore::Converter<IDLTreatNullAsEmptyAdaptor<T>>::convert):
(WebCore::JSConverter<IDLTreatNullAsEmptyAdaptor<T>>::convert):
(WebCore::Converter<IDLAtomStringAdaptor<T>>::convert):
(WebCore::JSConverter<IDLAtomStringAdaptor<T>>::convert):
(WebCore::Converter<IDLRequiresExistingAtomStringAdaptor<T>>::convert):
(WebCore::JSConverter<IDLRequiresExistingAtomStringAdaptor<T>>::convert):

  • bindings/js/JSDOMConvertUnion.h:
  • bindings/js/JSDOMConvertVariadic.h:

(WebCore::VariadicConverter::convert):
(WebCore::convertVariadicArguments):

  • bindings/js/JSDOMConvertWebGL.cpp:

(WebCore::convertToJSValue):

  • bindings/js/JSDOMConvertWebGL.h:

(WebCore::convertToJSValue):
(WebCore::JSConverter<IDLWebGLAny>::convert):
(WebCore::JSConverter<IDLWebGLExtension>::convert):

  • bindings/js/JSDOMConvertXPathNSResolver.h:

(WebCore::Converter<IDLXPathNSResolver<T>>::convert):
(WebCore::JSConverter<IDLXPathNSResolver<T>>::convert):
(WebCore::JSConverter<IDLXPathNSResolver<T>>::convertNewlyCreated):

  • bindings/js/JSDOMExceptionHandling.cpp:

(WebCore::reportException):
(WebCore::retrieveErrorMessage):
(WebCore::reportCurrentException):
(WebCore::createDOMException):
(WebCore::propagateExceptionSlowPath):
(WebCore::throwTypeError):
(WebCore::throwNotSupportedError):
(WebCore::throwInvalidStateError):
(WebCore::throwSecurityError):
(WebCore::throwArgumentMustBeEnumError):
(WebCore::throwArgumentMustBeFunctionError):
(WebCore::throwArgumentTypeError):
(WebCore::throwAttributeTypeError):
(WebCore::throwRequiredMemberTypeError):
(WebCore::throwConstructorScriptExecutionContextUnavailableError):
(WebCore::throwSequenceTypeError):
(WebCore::throwNonFiniteTypeError):
(WebCore::throwGetterTypeError):
(WebCore::rejectPromiseWithGetterTypeError):
(WebCore::throwSetterTypeError):
(WebCore::throwThisTypeError):
(WebCore::rejectPromiseWithThisTypeError):
(WebCore::throwDOMSyntaxError):
(WebCore::throwDataCloneError):

  • bindings/js/JSDOMExceptionHandling.h:

(WebCore::propagateException):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::makeThisTypeErrorForBuiltins):
(WebCore::makeGetterTypeErrorForBuiltins):
(WebCore::JSDOMGlobalObject::promiseRejectionTracker):
(WebCore::callerGlobalObject):

  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMGlobalObjectTask.cpp:
  • bindings/js/JSDOMIterator.cpp:

(WebCore::addValueIterableMethods):

  • bindings/js/JSDOMIterator.h:

(WebCore::jsPair):
(WebCore::IteratorTraits>::asJS):
(WebCore::appendForEachArguments):
(WebCore::iteratorForEach):
(WebCore::IteratorTraits>::next):

  • bindings/js/JSDOMMapLike.cpp:

(WebCore::getBackingMap):
(WebCore::createBackingMap):
(WebCore::forwardAttributeGetterToBackingMap):
(WebCore::forwardFunctionCallToBackingMap):
(WebCore::forwardForEachCallToBackingMap):

  • bindings/js/JSDOMMapLike.h:

(WebCore::DOMMapLike::set):
(WebCore::synchronizeBackingMap):
(WebCore::forwardSizeToMapLike):
(WebCore::forwardEntriesToMapLike):
(WebCore::forwardKeysToMapLike):
(WebCore::forwardValuesToMapLike):
(WebCore::forwardClearToMapLike):
(WebCore::forwardForEachToMapLike):
(WebCore::forwardGetToMapLike):
(WebCore::forwardHasToMapLike):
(WebCore::forwardAddToMapLike):
(WebCore::forwardDeleteToMapLike):

  • bindings/js/JSDOMOperation.h:

(WebCore::IDLOperation::call):
(WebCore::IDLOperation::callStatic):

  • bindings/js/JSDOMOperationReturningPromise.h:

(WebCore::IDLOperationReturningPromise::call):
(WebCore::IDLOperationReturningPromise::callReturningOwnPromise):
(WebCore::IDLOperationReturningPromise::callStatic):
(WebCore::IDLOperationReturningPromise::callStaticReturningOwnPromise):

  • bindings/js/JSDOMPromise.cpp:

(WebCore::callFunction):
(WebCore::DOMPromise::whenPromiseIsSettled):
(WebCore::DOMPromise::result const):
(WebCore::DOMPromise::status const):

  • bindings/js/JSDOMPromiseDeferred.cpp:

(WebCore::DeferredPromise::callFunction):
(WebCore::DeferredPromise::reject):
(WebCore::rejectPromiseWithExceptionIfAny):
(WebCore::createDeferredPromise):
(WebCore::createRejectedPromiseWithTypeError):
(WebCore::parseAsJSON):
(WebCore::fulfillPromiseWithJSON):
(WebCore::fulfillPromiseWithArrayBuffer):

  • bindings/js/JSDOMPromiseDeferred.h:

(WebCore::DeferredPromise::create):
(WebCore::DeferredPromise::resolve):
(WebCore::DeferredPromise::resolveWithNewlyCreated):
(WebCore::DeferredPromise::resolveCallbackValueWithNewlyCreated):
(WebCore::DeferredPromise::reject):
(WebCore::DeferredPromise::resolveWithCallback):
(WebCore::DeferredPromise::rejectWithCallback):
(WebCore::callPromiseFunction):
(WebCore::bindingPromiseFunctionAdapter):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::updateDocument):
(WebCore::shouldInterruptScriptToPreventInfiniteRecursionWhenClosingPage):
(WebCore::toJS):
(WebCore::incumbentDOMWindow):
(WebCore::activeDOMWindow):
(WebCore::firstDOMWindow):
(WebCore::responsibleDocument):
(WebCore::JSDOMWindowBase::moduleLoaderResolve):
(WebCore::JSDOMWindowBase::moduleLoaderFetch):
(WebCore::JSDOMWindowBase::moduleLoaderEvaluate):
(WebCore::JSDOMWindowBase::moduleLoaderImportModule):
(WebCore::JSDOMWindowBase::moduleLoaderCreateImportMetaProperties):
(WebCore::tryAllocate):
(WebCore::isResponseCorrect):
(WebCore::handleResponseOnStreamingAction):
(WebCore::JSDOMWindowBase::compileStreaming):
(WebCore::JSDOMWindowBase::instantiateStreaming):

  • bindings/js/JSDOMWindowBase.h:

(WebCore::toJS):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::jsDOMWindowWebKit):
(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore::JSDOMWindow::doPutPropertySecurityCheck):
(WebCore::JSDOMWindow::put):
(WebCore::JSDOMWindow::putByIndex):
(WebCore::JSDOMWindow::deleteProperty):
(WebCore::JSDOMWindow::deletePropertyByIndex):
(WebCore::addCrossOriginOwnPropertyNames):
(WebCore::addScopedChildrenIndexes):
(WebCore::JSDOMWindow::getOwnPropertyNames):
(WebCore::JSDOMWindow::defineOwnProperty):
(WebCore::JSDOMWindow::getPrototype):
(WebCore::JSDOMWindow::preventExtensions):
(WebCore::JSDOMWindow::toStringName):
(WebCore::JSDOMWindow::event const):
(WebCore::DialogHandler::DialogHandler):
(WebCore::DialogHandler::dialogCreated):
(WebCore::DialogHandler::returnValue const):
(WebCore::JSDOMWindow::showModalDialog):
(WebCore::JSDOMWindow::queueMicrotask):
(WebCore::JSDOMWindow::setOpener):
(WebCore::JSDOMWindow::self const):
(WebCore::JSDOMWindow::window const):
(WebCore::JSDOMWindow::frames const):
(WebCore::jsDOMWindowInstanceFunctionOpenDatabaseBody):
(WebCore::IDLOperation<JSDOMWindow>::cast):
(WebCore::jsDOMWindowInstanceFunctionOpenDatabase):
(WebCore::JSDOMWindow::openDatabase const):
(WebCore::JSDOMWindow::setOpenDatabase):

  • bindings/js/JSDOMWindowCustom.h:
  • bindings/js/JSDOMWindowProperties.cpp:

(WebCore::jsDOMWindowPropertiesGetOwnPropertySlotNamedItemGetter):
(WebCore::JSDOMWindowProperties::getOwnPropertySlot):
(WebCore::JSDOMWindowProperties::getOwnPropertySlotByIndex):

  • bindings/js/JSDOMWindowProperties.h:
  • bindings/js/JSDOMWrapper.cpp:

(WebCore::cloneAcrossWorlds):

  • bindings/js/JSDOMWrapper.h:
  • bindings/js/JSDOMWrapperCache.h:

(WebCore::deprecatedGlobalObjectForPrototype):
(WebCore::deprecatedGetDOMStructure):
(WebCore::wrap):

  • bindings/js/JSDeprecatedCSSOMValueCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::createNewDocumentWrapper):
(WebCore::cachedDocumentWrapper):
(WebCore::reportMemoryForDocumentIfFrameless):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSDocumentCustom.h:
  • bindings/js/JSDocumentFragmentCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSElementCustom.cpp:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/js/JSErrorHandler.cpp:

(WebCore::JSErrorHandler::handleEvent):

  • bindings/js/JSErrorHandler.h:

(WebCore::createJSErrorHandler):

  • bindings/js/JSEventCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):
(WebCore::createEventListenerForEventHandlerAttribute):
(WebCore::setEventHandlerAttribute):
(WebCore::setWindowEventHandlerAttribute):
(WebCore::setDocumentEventHandlerAttribute):

  • bindings/js/JSEventListener.h:
  • bindings/js/JSEventTargetCustom.h:

(WebCore::IDLOperation<JSEventTarget>::call):

  • bindings/js/JSExecState.cpp:

(WebCore::JSExecState::didLeaveScriptContext):
(WebCore::functionCallHandlerFromAnyThread):
(WebCore::evaluateHandlerFromAnyThread):

  • bindings/js/JSExecState.h:

(WebCore::JSExecState::currentState):
(WebCore::JSExecState::call):
(WebCore::JSExecState::evaluate):
(WebCore::JSExecState::profiledCall):
(WebCore::JSExecState::profiledEvaluate):
(WebCore::JSExecState::runTask):
(WebCore::JSExecState::loadModule):
(WebCore::JSExecState::linkAndEvaluateModule):
(WebCore::JSExecState::JSExecState):
(WebCore::JSExecState::~JSExecState):
(WebCore::JSExecState::setCurrentState):

  • bindings/js/JSExtendableMessageEventCustom.cpp:

(WebCore::constructJSExtendableMessageEvent):
(WebCore::JSExtendableMessageEvent::data const):

  • bindings/js/JSFileSystemEntryCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSHTMLElementCustom.cpp:

(WebCore::constructJSHTMLElement):
(WebCore::JSHTMLElement::pushEventHandlerScope const):

  • bindings/js/JSHistoryCustom.cpp:

(WebCore::JSHistory::state const):

  • bindings/js/JSIDBCursorCustom.cpp:

(WebCore::JSIDBCursor::key const):
(WebCore::JSIDBCursor::primaryKey const):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSIDBCursorWithValueCustom.cpp:

(WebCore::JSIDBCursorWithValue::value const):

  • bindings/js/JSIDBRequestCustom.cpp:

(WebCore::JSIDBRequest::result const):

  • bindings/js/JSImageDataCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSLazyEventListener.cpp:

(WebCore::JSLazyEventListener::initializeJSFunction const):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::getOwnPropertySlotCommon):
(WebCore::JSLocation::getOwnPropertySlot):
(WebCore::JSLocation::getOwnPropertySlotByIndex):
(WebCore::putCommon):
(WebCore::JSLocation::doPutPropertySecurityCheck):
(WebCore::JSLocation::put):
(WebCore::JSLocation::putByIndex):
(WebCore::JSLocation::deleteProperty):
(WebCore::JSLocation::deletePropertyByIndex):
(WebCore::JSLocation::getOwnPropertyNames):
(WebCore::JSLocation::defineOwnProperty):
(WebCore::JSLocation::getPrototype):
(WebCore::JSLocation::preventExtensions):
(WebCore::JSLocation::toStringName):
(WebCore::JSLocationPrototype::put):
(WebCore::JSLocationPrototype::defineOwnProperty):

  • bindings/js/JSMediaStreamTrackCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSMessageEventCustom.cpp:

(WebCore::JSMessageEvent::ports const):
(WebCore::JSMessageEvent::data const):

  • bindings/js/JSMicrotaskCallback.h:

(WebCore::JSMicrotaskCallback::call):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::JSNode::pushEventHandlerScope const):
(WebCore::createWrapperInline):
(WebCore::createWrapper):
(WebCore::toJSNewlyCreated):
(WebCore::willCreatePossiblyOrphanedTreeByRemovalSlowCase):

  • bindings/js/JSNodeCustom.h:

(WebCore::toJS):
(WebCore::JSNode::nodeType const):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::toJSNewlyCreated):

  • bindings/js/JSNodeListCustom.h:

(WebCore::toJS):

  • bindings/js/JSPaymentMethodChangeEventCustom.cpp:

(WebCore::JSPaymentMethodChangeEvent::methodDetails const):

  • bindings/js/JSPaymentResponseCustom.cpp:

(WebCore::JSPaymentResponse::details const):

  • bindings/js/JSPerformanceEntryCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginScriptObject):
(WebCore::pluginElementPropertyGetter):
(WebCore::pluginElementCustomGetOwnPropertySlot):
(WebCore::pluginElementCustomPut):
(WebCore::callPlugin):

  • bindings/js/JSPluginElementFunctions.h:
  • bindings/js/JSPopStateEventCustom.cpp:

(WebCore::JSPopStateEvent::state const):

  • bindings/js/JSReadableStreamSourceCustom.cpp:

(WebCore::JSReadableStreamSource::start):
(WebCore::JSReadableStreamSource::pull):
(WebCore::JSReadableStreamSource::controller const):

  • bindings/js/JSRemoteDOMWindowCustom.cpp:

(WebCore::JSRemoteDOMWindow::getOwnPropertySlot):
(WebCore::JSRemoteDOMWindow::getOwnPropertySlotByIndex):
(WebCore::JSRemoteDOMWindow::put):
(WebCore::JSRemoteDOMWindow::putByIndex):
(WebCore::JSRemoteDOMWindow::deleteProperty):
(WebCore::JSRemoteDOMWindow::deletePropertyByIndex):
(WebCore::JSRemoteDOMWindow::getOwnPropertyNames):
(WebCore::JSRemoteDOMWindow::defineOwnProperty):
(WebCore::JSRemoteDOMWindow::getPrototype):
(WebCore::JSRemoteDOMWindow::preventExtensions):
(WebCore::JSRemoteDOMWindow::toStringName):

  • bindings/js/JSSVGPathSegCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSServiceWorkerClientCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSStyleSheetCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSTextCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSTextTrackCueCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSTrackCustom.cpp:

(WebCore::toJS):

  • bindings/js/JSTrackCustom.h:
  • bindings/js/JSTypedOMCSSStyleValueCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSValueInWrappedObject.h:

(WebCore::cachedPropertyValue):

  • bindings/js/JSWebAnimationCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):
(WebCore::constructJSWebAnimation):

  • bindings/js/JSWindowProxy.cpp:

(WebCore::toJS):

  • bindings/js/JSWindowProxy.h:

(WebCore::toJS):

  • bindings/js/JSWorkerGlobalScopeBase.cpp:

(WebCore::toJS):

  • bindings/js/JSWorkerGlobalScopeBase.h:

(WebCore::toJS):

  • bindings/js/JSWorkerGlobalScopeCustom.cpp:

(WebCore::JSWorkerGlobalScope::queueMicrotask):

  • bindings/js/JSWorkletGlobalScopeBase.cpp:

(WebCore::toJS):

  • bindings/js/JSWorkletGlobalScopeBase.h:

(WebCore::toJS):

  • bindings/js/JSXMLDocumentCustom.cpp:

(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::response const):

  • bindings/js/JSXPathNSResolverCustom.cpp:

(WebCore::JSXPathNSResolver::toWrapped):

  • bindings/js/ReadableStream.cpp:

(WebCore::ReadableStream::create):
(WebCore::ReadableStreamInternal::callFunction):
(WebCore::ReadableStream::pipeTo):
(WebCore::ReadableStream::tee):
(WebCore::ReadableStream::lock):
(WebCore::checkReadableStream):
(WebCore::ReadableStream::isDisturbed):

  • bindings/js/ReadableStream.h:

(WebCore::JSReadableStreamWrapperConverter::toWrapped):
(WebCore::toJS):

  • bindings/js/ReadableStreamDefaultController.cpp:

(WebCore::readableStreamCallFunction):
(WebCore::ReadableStreamDefaultController::invoke):

  • bindings/js/ReadableStreamDefaultController.h:

(WebCore::ReadableStreamDefaultController::close):
(WebCore::ReadableStreamDefaultController::error):
(WebCore::ReadableStreamDefaultController::enqueue):
(WebCore::ReadableStreamDefaultController::globalExec const): Deleted.

  • bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::executeFunctionInContext):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::evaluateInWorld):
(WebCore::ScriptController::loadModuleScriptInWorld):
(WebCore::ScriptController::linkAndEvaluateModuleScriptInWorld):
(WebCore::ScriptController::evaluateModule):
(WebCore::jsValueToModuleKey):
(WebCore::ScriptController::setupModuleScriptHandlers):
(WebCore::ScriptController::canAccessFromCurrentOrigin):
(WebCore::ScriptController::collectIsolatedContexts):
(WebCore::ScriptController::jsObjectForPluginElement):
(WebCore::ScriptController::executeIfJavaScriptURL):

  • bindings/js/ScriptController.h:
  • bindings/js/ScriptControllerMac.mm:

(WebCore::ScriptController::javaScriptContext):

  • bindings/js/ScriptModuleLoader.cpp:

(WebCore::ScriptModuleLoader::resolve):
(WebCore::rejectToPropagateNetworkError):
(WebCore::ScriptModuleLoader::fetch):
(WebCore::ScriptModuleLoader::moduleURL):
(WebCore::ScriptModuleLoader::evaluate):
(WebCore::rejectPromise):
(WebCore::ScriptModuleLoader::importModule):
(WebCore::ScriptModuleLoader::createImportMetaProperties):
(WebCore::ScriptModuleLoader::notifyFinished):

  • bindings/js/ScriptModuleLoader.h:
  • bindings/js/ScriptState.cpp:

(WebCore::domWindowFromExecState):
(WebCore::frameFromExecState):
(WebCore::scriptExecutionContextFromExecState):
(WebCore::mainWorldExecState):
(WebCore::execStateFromNode):
(WebCore::execStateFromPage):
(WebCore::execStateFromWorkerGlobalScope):
(WebCore::execStateFromWorkletGlobalScope):

  • bindings/js/ScriptState.h:
  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneBase::CloneBase):
(WebCore::CloneBase::shouldTerminate):
(WebCore::wrapCryptoKey):
(WebCore::unwrapCryptoKey):
(WebCore::CloneSerializer::serialize):
(WebCore::CloneSerializer::CloneSerializer):
(WebCore::CloneSerializer::fillTransferMap):
(WebCore::CloneSerializer::getProperty):
(WebCore::CloneSerializer::toJSArrayBuffer):
(WebCore::CloneSerializer::dumpArrayBufferView):
(WebCore::CloneSerializer::dumpDOMPoint):
(WebCore::CloneSerializer::dumpDOMRect):
(WebCore::CloneSerializer::dumpDOMMatrix):
(WebCore::CloneSerializer::dumpIfTerminal):
(WebCore::CloneSerializer::write):
(WebCore::CloneDeserializer::deserialize):
(WebCore::CloneDeserializer::CachedString::jsString):
(WebCore::CloneDeserializer::CloneDeserializer):
(WebCore::CloneDeserializer::putProperty):
(WebCore::CloneDeserializer::readArrayBufferView):
(WebCore::CloneDeserializer::getJSValue):
(WebCore::CloneDeserializer::readDOMPoint):
(WebCore::CloneDeserializer::readDOMMatrix):
(WebCore::CloneDeserializer::readDOMRect):
(WebCore::CloneDeserializer::readDOMQuad):
(WebCore::CloneDeserializer::readRTCCertificate):
(WebCore::CloneDeserializer::readTerminal):
(WebCore::maybeThrowExceptionIfSerializationFailed):
(WebCore::SerializedScriptValue::create):
(WebCore::SerializedScriptValue::deserialize):

  • bindings/js/SerializedScriptValue.h:
  • bindings/js/StructuredClone.cpp:

(WebCore::cloneArrayBufferImpl):
(WebCore::structuredCloneArrayBufferView):

  • bindings/js/StructuredClone.h:
  • bindings/js/WebCoreTypedArrayController.cpp:

(WebCore::WebCoreTypedArrayController::toJS):

  • bindings/js/WebCoreTypedArrayController.h:
  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::evaluate):
(WebCore::WorkerScriptController::setException):
(WebCore::WorkerScriptController::scheduleExecutionTermination):
(WebCore::WorkerScriptController::attachDebugger):
(WebCore::WorkerScriptController::detachDebugger):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlot):
(GenerateGetOwnPropertySlotByIndex):
(GenerateGetOwnPropertyNames):
(GenerateInvokeIndexedPropertySetter):
(GenerateInvokeNamedPropertySetter):
(GeneratePut):
(GeneratePutByIndex):
(GenerateDefineOwnProperty):
(GenerateDeletePropertyCommon):
(GenerateDeleteProperty):
(GenerateDeletePropertyByIndex):
(GetArgumentExceptionFunction):
(GetArgumentExceptionThrower):
(GetAttributeExceptionFunction):
(GetAttributeExceptionThrower):
(AddAdditionalArgumentsForImplementationCall):
(GenerateEnumerationImplementationContent):
(GenerateEnumerationHeaderContent):
(GenerateDefaultValue):
(GenerateDictionaryHeaderContent):
(GenerateDictionaryImplementationContent):
(GenerateHeader):
(GenerateOverloadDispatcher):
(addUnscopableProperties):
(GenerateImplementation):
(GenerateAttributeGetterBodyDefinition):
(GenerateAttributeGetterTrampolineDefinition):
(GenerateAttributeSetterBodyDefinition):
(GenerateAttributeSetterTrampolineDefinition):
(GenerateOperationTrampolineDefinition):
(GenerateOperationBodyDefinition):
(GenerateOperationDefinition):
(GenerateSerializerDefinition):
(GenerateLegacyCallerDefinitions):
(GenerateLegacyCallerDefinition):
(GenerateCallWithUsingReferences):
(GenerateCallWithUsingPointers):
(GenerateConstructorCallWithUsingPointers):
(GenerateCallWith):
(GenerateArgumentsCountCheck):
(GenerateParametersCheck):
(GenerateCallbackImplementationContent):
(GenerateImplementationFunctionCall):
(GenerateImplementationCustomFunctionCall):
(GenerateIterableDefinition):
(JSValueToNative):
(ToNativeForFunctionWithoutTypeCheck):
(NativeToJSValueDOMConvertNeedsState):
(NativeToJSValueDOMConvertNeedsGlobalObject):
(NativeToJSValueUsingReferences):
(NativeToJSValueUsingPointers):
(NativeToJSValue):
(GeneratePrototypeDeclaration):
(GenerateConstructorDefinitions):
(GenerateConstructorDefinition):
(GenerateConstructorHelperMethods):

  • bindings/scripts/test/JS/JSInterfaceName.cpp:

(WebCore::jsInterfaceNameConstructor):
(WebCore::setJSInterfaceNameConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSInterfaceName.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSMapLike.cpp:

(WebCore::JSMapLike::finishCreation):
(WebCore::IDLAttribute<JSMapLike>::cast):
(WebCore::IDLOperation<JSMapLike>::cast):
(WebCore::jsMapLikeConstructor):
(WebCore::setJSMapLikeConstructor):
(WebCore::jsMapLikeSizeGetter):
(WebCore::jsMapLikeSize):
(WebCore::jsMapLikePrototypeFunctionGetBody):
(WebCore::jsMapLikePrototypeFunctionGet):
(WebCore::jsMapLikePrototypeFunctionHasBody):
(WebCore::jsMapLikePrototypeFunctionHas):
(WebCore::jsMapLikePrototypeFunctionEntriesBody):
(WebCore::jsMapLikePrototypeFunctionEntries):
(WebCore::jsMapLikePrototypeFunctionKeysBody):
(WebCore::jsMapLikePrototypeFunctionKeys):
(WebCore::jsMapLikePrototypeFunctionValuesBody):
(WebCore::jsMapLikePrototypeFunctionValues):
(WebCore::jsMapLikePrototypeFunctionForEachBody):
(WebCore::jsMapLikePrototypeFunctionForEach):
(WebCore::jsMapLikePrototypeFunctionAddBody):
(WebCore::jsMapLikePrototypeFunctionAdd):
(WebCore::jsMapLikePrototypeFunctionClearBody):
(WebCore::jsMapLikePrototypeFunctionClear):
(WebCore::jsMapLikePrototypeFunctionDeleteBody):
(WebCore::jsMapLikePrototypeFunctionDelete):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSMapLike.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:

(WebCore::JSReadOnlyMapLike::finishCreation):
(WebCore::IDLAttribute<JSReadOnlyMapLike>::cast):
(WebCore::IDLOperation<JSReadOnlyMapLike>::cast):
(WebCore::jsReadOnlyMapLikeConstructor):
(WebCore::setJSReadOnlyMapLikeConstructor):
(WebCore::jsReadOnlyMapLikeSizeGetter):
(WebCore::jsReadOnlyMapLikeSize):
(WebCore::jsReadOnlyMapLikePrototypeFunctionGetBody):
(WebCore::jsReadOnlyMapLikePrototypeFunctionGet):
(WebCore::jsReadOnlyMapLikePrototypeFunctionHasBody):
(WebCore::jsReadOnlyMapLikePrototypeFunctionHas):
(WebCore::jsReadOnlyMapLikePrototypeFunctionEntriesBody):
(WebCore::jsReadOnlyMapLikePrototypeFunctionEntries):
(WebCore::jsReadOnlyMapLikePrototypeFunctionKeysBody):
(WebCore::jsReadOnlyMapLikePrototypeFunctionKeys):
(WebCore::jsReadOnlyMapLikePrototypeFunctionValuesBody):
(WebCore::jsReadOnlyMapLikePrototypeFunctionValues):
(WebCore::jsReadOnlyMapLikePrototypeFunctionForEachBody):
(WebCore::jsReadOnlyMapLikePrototypeFunctionForEach):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSReadOnlyMapLike.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::IDLAttribute<JSTestActiveDOMObject>::cast):
(WebCore::IDLOperation<JSTestActiveDOMObject>::cast):
(WebCore::jsTestActiveDOMObjectConstructor):
(WebCore::setJSTestActiveDOMObjectConstructor):
(WebCore::jsTestActiveDOMObjectExcitingAttrGetter):
(WebCore::jsTestActiveDOMObjectExcitingAttr):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunctionBody):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessageBody):
(WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestCEReactions.cpp:

(WebCore::IDLAttribute<JSTestCEReactions>::cast):
(WebCore::IDLOperation<JSTestCEReactions>::cast):
(WebCore::jsTestCEReactionsConstructor):
(WebCore::setJSTestCEReactionsConstructor):
(WebCore::jsTestCEReactionsAttributeWithCEReactionsGetter):
(WebCore::jsTestCEReactionsAttributeWithCEReactions):
(WebCore::setJSTestCEReactionsAttributeWithCEReactionsSetter):
(WebCore::setJSTestCEReactionsAttributeWithCEReactions):
(WebCore::jsTestCEReactionsReflectAttributeWithCEReactionsGetter):
(WebCore::jsTestCEReactionsReflectAttributeWithCEReactions):
(WebCore::setJSTestCEReactionsReflectAttributeWithCEReactionsSetter):
(WebCore::setJSTestCEReactionsReflectAttributeWithCEReactions):
(WebCore::jsTestCEReactionsStringifierAttributeGetter):
(WebCore::jsTestCEReactionsStringifierAttribute):
(WebCore::setJSTestCEReactionsStringifierAttributeSetter):
(WebCore::setJSTestCEReactionsStringifierAttribute):
(WebCore::jsTestCEReactionsAttributeWithCEReactionsNotNeededGetter):
(WebCore::jsTestCEReactionsAttributeWithCEReactionsNotNeeded):
(WebCore::setJSTestCEReactionsAttributeWithCEReactionsNotNeededSetter):
(WebCore::setJSTestCEReactionsAttributeWithCEReactionsNotNeeded):
(WebCore::jsTestCEReactionsReflectAttributeWithCEReactionsNotNeededGetter):
(WebCore::jsTestCEReactionsReflectAttributeWithCEReactionsNotNeeded):
(WebCore::setJSTestCEReactionsReflectAttributeWithCEReactionsNotNeededSetter):
(WebCore::setJSTestCEReactionsReflectAttributeWithCEReactionsNotNeeded):
(WebCore::jsTestCEReactionsStringifierAttributeNotNeededGetter):
(WebCore::jsTestCEReactionsStringifierAttributeNotNeeded):
(WebCore::setJSTestCEReactionsStringifierAttributeNotNeededSetter):
(WebCore::setJSTestCEReactionsStringifierAttributeNotNeeded):
(WebCore::jsTestCEReactionsPrototypeFunctionMethodWithCEReactionsBody):
(WebCore::jsTestCEReactionsPrototypeFunctionMethodWithCEReactions):
(WebCore::jsTestCEReactionsPrototypeFunctionMethodWithCEReactionsNotNeededBody):
(WebCore::jsTestCEReactionsPrototypeFunctionMethodWithCEReactionsNotNeeded):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestCEReactions.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:

(WebCore::IDLAttribute<JSTestCEReactionsStringifier>::cast):
(WebCore::IDLOperation<JSTestCEReactionsStringifier>::cast):
(WebCore::jsTestCEReactionsStringifierConstructor):
(WebCore::setJSTestCEReactionsStringifierConstructor):
(WebCore::jsTestCEReactionsStringifierValueGetter):
(WebCore::jsTestCEReactionsStringifierValue):
(WebCore::setJSTestCEReactionsStringifierValueSetter):
(WebCore::setJSTestCEReactionsStringifierValue):
(WebCore::jsTestCEReactionsStringifierValueWithoutReactionsGetter):
(WebCore::jsTestCEReactionsStringifierValueWithoutReactions):
(WebCore::setJSTestCEReactionsStringifierValueWithoutReactionsSetter):
(WebCore::setJSTestCEReactionsStringifierValueWithoutReactions):
(WebCore::jsTestCEReactionsStringifierPrototypeFunctionToStringBody):
(WebCore::jsTestCEReactionsStringifierPrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestCEReactionsStringifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestCallTracer.cpp:

(WebCore::IDLAttribute<JSTestCallTracer>::cast):
(WebCore::IDLOperation<JSTestCallTracer>::cast):
(WebCore::jsTestCallTracerConstructor):
(WebCore::setJSTestCallTracerConstructor):
(WebCore::jsTestCallTracerTestAttributeInterfaceGetter):
(WebCore::jsTestCallTracerTestAttributeInterface):
(WebCore::setJSTestCallTracerTestAttributeInterfaceSetter):
(WebCore::setJSTestCallTracerTestAttributeInterface):
(WebCore::jsTestCallTracerTestAttributeSpecifiedGetter):
(WebCore::jsTestCallTracerTestAttributeSpecified):
(WebCore::setJSTestCallTracerTestAttributeSpecifiedSetter):
(WebCore::setJSTestCallTracerTestAttributeSpecified):
(WebCore::jsTestCallTracerTestAttributeWithVariantGetter):
(WebCore::jsTestCallTracerTestAttributeWithVariant):
(WebCore::setJSTestCallTracerTestAttributeWithVariantSetter):
(WebCore::setJSTestCallTracerTestAttributeWithVariant):
(WebCore::jsTestCallTracerTestReadonlyAttributeGetter):
(WebCore::jsTestCallTracerTestReadonlyAttribute):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationInterfaceBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationInterface):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationSpecifiedBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationSpecified):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithArgumentsBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithArguments):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableArgumentBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableArgument):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithVariantArgumentBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithVariantArgument):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableVariantArgumentBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableVariantArgument):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithOptionalVariantArgumentBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithOptionalVariantArgument):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithDefaultVariantArgumentBody):
(WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithDefaultVariantArgument):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestCallTracer.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestCallbackFunction.cpp:

(WebCore::JSTestCallbackFunction::handleEvent):

  • bindings/scripts/test/JS/JSTestCallbackFunctionRethrow.cpp:

(WebCore::JSTestCallbackFunctionRethrow::handleEvent):

  • bindings/scripts/test/JS/JSTestCallbackFunctionWithThisObject.cpp:

(WebCore::JSTestCallbackFunctionWithThisObject::handleEvent):

  • bindings/scripts/test/JS/JSTestCallbackFunctionWithTypedefs.cpp:

(WebCore::JSTestCallbackFunctionWithTypedefs::handleEvent):

  • bindings/scripts/test/JS/JSTestCallbackInterface.cpp:

(WebCore::convertEnumerationToJS):
(WebCore::parseEnumeration<TestCallbackInterface::Enum>):
(WebCore::convertDictionary<TestCallbackInterface::Dictionary>):
(WebCore::JSTestCallbackInterface::callbackWithNoParam):
(WebCore::JSTestCallbackInterface::callbackWithArrayParam):
(WebCore::JSTestCallbackInterface::callbackWithSerializedScriptValueParam):
(WebCore::JSTestCallbackInterface::callbackWithStringList):
(WebCore::JSTestCallbackInterface::callbackWithBoolean):
(WebCore::JSTestCallbackInterface::callbackRequiresThisToPass):
(WebCore::JSTestCallbackInterface::callbackWithAReturnValue):
(WebCore::JSTestCallbackInterface::callbackThatRethrowsExceptions):
(WebCore::JSTestCallbackInterface::callbackThatSkipsInvokeCheck):
(WebCore::JSTestCallbackInterface::callbackWithThisObject):

  • bindings/scripts/test/JS/JSTestCallbackInterface.h:
  • bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:

(WebCore::jsTestClassWithJSBuiltinConstructorConstructor):
(WebCore::setJSTestClassWithJSBuiltinConstructorConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestDOMJIT.cpp:

(WebCore::IDLAttribute<JSTestDOMJIT>::cast):
(WebCore::IDLOperation<JSTestDOMJIT>::cast):
(WebCore::jsTestDOMJITConstructor):
(WebCore::setJSTestDOMJITConstructor):
(WebCore::jsTestDOMJITAnyAttrGetter):
(WebCore::jsTestDOMJITAnyAttr):
(WebCore::jsTestDOMJITBooleanAttrGetter):
(WebCore::jsTestDOMJITBooleanAttr):
(WebCore::jsTestDOMJITByteAttrGetter):
(WebCore::jsTestDOMJITByteAttr):
(WebCore::jsTestDOMJITOctetAttrGetter):
(WebCore::jsTestDOMJITOctetAttr):
(WebCore::jsTestDOMJITShortAttrGetter):
(WebCore::jsTestDOMJITShortAttr):
(WebCore::jsTestDOMJITUnsignedShortAttrGetter):
(WebCore::jsTestDOMJITUnsignedShortAttr):
(WebCore::jsTestDOMJITLongAttrGetter):
(WebCore::jsTestDOMJITLongAttr):
(WebCore::jsTestDOMJITUnsignedLongAttrGetter):
(WebCore::jsTestDOMJITUnsignedLongAttr):
(WebCore::jsTestDOMJITLongLongAttrGetter):
(WebCore::jsTestDOMJITLongLongAttr):
(WebCore::jsTestDOMJITUnsignedLongLongAttrGetter):
(WebCore::jsTestDOMJITUnsignedLongLongAttr):
(WebCore::jsTestDOMJITFloatAttrGetter):
(WebCore::jsTestDOMJITFloatAttr):
(WebCore::jsTestDOMJITUnrestrictedFloatAttrGetter):
(WebCore::jsTestDOMJITUnrestrictedFloatAttr):
(WebCore::jsTestDOMJITDoubleAttrGetter):
(WebCore::jsTestDOMJITDoubleAttr):
(WebCore::jsTestDOMJITUnrestrictedDoubleAttrGetter):
(WebCore::jsTestDOMJITUnrestrictedDoubleAttr):
(WebCore::jsTestDOMJITDomStringAttrGetter):
(WebCore::jsTestDOMJITDomStringAttr):
(WebCore::jsTestDOMJITByteStringAttrGetter):
(WebCore::jsTestDOMJITByteStringAttr):
(WebCore::jsTestDOMJITUsvStringAttrGetter):
(WebCore::jsTestDOMJITUsvStringAttr):
(WebCore::jsTestDOMJITNodeAttrGetter):
(WebCore::jsTestDOMJITNodeAttr):
(WebCore::jsTestDOMJITBooleanNullableAttrGetter):
(WebCore::jsTestDOMJITBooleanNullableAttr):
(WebCore::jsTestDOMJITByteNullableAttrGetter):
(WebCore::jsTestDOMJITByteNullableAttr):
(WebCore::jsTestDOMJITOctetNullableAttrGetter):
(WebCore::jsTestDOMJITOctetNullableAttr):
(WebCore::jsTestDOMJITShortNullableAttrGetter):
(WebCore::jsTestDOMJITShortNullableAttr):
(WebCore::jsTestDOMJITUnsignedShortNullableAttrGetter):
(WebCore::jsTestDOMJITUnsignedShortNullableAttr):
(WebCore::jsTestDOMJITLongNullableAttrGetter):
(WebCore::jsTestDOMJITLongNullableAttr):
(WebCore::jsTestDOMJITUnsignedLongNullableAttrGetter):
(WebCore::jsTestDOMJITUnsignedLongNullableAttr):
(WebCore::jsTestDOMJITLongLongNullableAttrGetter):
(WebCore::jsTestDOMJITLongLongNullableAttr):
(WebCore::jsTestDOMJITUnsignedLongLongNullableAttrGetter):
(WebCore::jsTestDOMJITUnsignedLongLongNullableAttr):
(WebCore::jsTestDOMJITFloatNullableAttrGetter):
(WebCore::jsTestDOMJITFloatNullableAttr):
(WebCore::jsTestDOMJITUnrestrictedFloatNullableAttrGetter):
(WebCore::jsTestDOMJITUnrestrictedFloatNullableAttr):
(WebCore::jsTestDOMJITDoubleNullableAttrGetter):
(WebCore::jsTestDOMJITDoubleNullableAttr):
(WebCore::jsTestDOMJITUnrestrictedDoubleNullableAttrGetter):
(WebCore::jsTestDOMJITUnrestrictedDoubleNullableAttr):
(WebCore::jsTestDOMJITDomStringNullableAttrGetter):
(WebCore::jsTestDOMJITDomStringNullableAttr):
(WebCore::jsTestDOMJITByteStringNullableAttrGetter):
(WebCore::jsTestDOMJITByteStringNullableAttr):
(WebCore::jsTestDOMJITUsvStringNullableAttrGetter):
(WebCore::jsTestDOMJITUsvStringNullableAttr):
(WebCore::jsTestDOMJITNodeNullableAttrGetter):
(WebCore::jsTestDOMJITNodeNullableAttr):
(WebCore::jsTestDOMJITPrototypeFunctionGetAttributeBody):
(WebCore::jsTestDOMJITPrototypeFunctionGetAttribute):
(WebCore::jsTestDOMJITPrototypeFunctionGetAttributeWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionItemBody):
(WebCore::jsTestDOMJITPrototypeFunctionItem):
(WebCore::jsTestDOMJITPrototypeFunctionItemWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionHasAttributeBody):
(WebCore::jsTestDOMJITPrototypeFunctionHasAttribute):
(WebCore::jsTestDOMJITPrototypeFunctionHasAttributeWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementByIdBody):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementById):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementByIdWithoutTypeCheck):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementsByNameBody):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementsByName):
(WebCore::jsTestDOMJITPrototypeFunctionGetElementsByNameWithoutTypeCheck):

  • bindings/scripts/test/JS/JSTestDerivedDictionary.cpp:

(WebCore::convertDictionary<TestDerivedDictionary>):
(WebCore::convertDictionaryToJS):

  • bindings/scripts/test/JS/JSTestDerivedDictionary.h:
  • bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:

(WebCore::JSTestEnabledBySettingPrototype::finishCreation):
(WebCore::IDLAttribute<JSTestEnabledBySetting>::cast):
(WebCore::IDLOperation<JSTestEnabledBySetting>::cast):
(WebCore::jsTestEnabledBySettingConstructor):
(WebCore::setJSTestEnabledBySettingConstructor):
(WebCore::jsTestEnabledBySettingTestSubObjEnabledBySettingConstructorGetter):
(WebCore::jsTestEnabledBySettingTestSubObjEnabledBySettingConstructor):
(WebCore::setJSTestEnabledBySettingTestSubObjEnabledBySettingConstructorSetter):
(WebCore::setJSTestEnabledBySettingTestSubObjEnabledBySettingConstructor):
(WebCore::jsTestEnabledBySettingEnabledBySettingAttributeGetter):
(WebCore::jsTestEnabledBySettingEnabledBySettingAttribute):
(WebCore::setJSTestEnabledBySettingEnabledBySettingAttributeSetter):
(WebCore::setJSTestEnabledBySettingEnabledBySettingAttribute):
(WebCore::jsTestEnabledBySettingPrototypeFunctionEnabledBySettingOperationBody):
(WebCore::jsTestEnabledBySettingPrototypeFunctionEnabledBySettingOperation):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestEnabledBySetting.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestEnabledForContext.cpp:

(WebCore::IDLAttribute<JSTestEnabledForContext>::cast):
(WebCore::jsTestEnabledForContextConstructor):
(WebCore::setJSTestEnabledForContextConstructor):
(WebCore::jsTestEnabledForContextTestSubObjEnabledForContextConstructorGetter):
(WebCore::jsTestEnabledForContextTestSubObjEnabledForContextConstructor):
(WebCore::setJSTestEnabledForContextTestSubObjEnabledForContextConstructorSetter):
(WebCore::setJSTestEnabledForContextTestSubObjEnabledForContextConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestEnabledForContext.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::convertDictionary<TestEventConstructor::Init>):
(WebCore::JSTestEventConstructorConstructor::construct):
(WebCore::IDLAttribute<JSTestEventConstructor>::cast):
(WebCore::jsTestEventConstructorConstructor):
(WebCore::setJSTestEventConstructorConstructor):
(WebCore::jsTestEventConstructorAttr1Getter):
(WebCore::jsTestEventConstructorAttr1):
(WebCore::jsTestEventConstructorAttr2Getter):
(WebCore::jsTestEventConstructorAttr2):
(WebCore::jsTestEventConstructorAttr3Getter):
(WebCore::jsTestEventConstructorAttr3):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestEventConstructor.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTarget::getOwnPropertySlot):
(WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
(WebCore::JSTestEventTarget::getOwnPropertyNames):
(WebCore::IDLOperation<JSTestEventTarget>::cast):
(WebCore::jsTestEventTargetConstructor):
(WebCore::setJSTestEventTargetConstructor):
(WebCore::jsTestEventTargetPrototypeFunctionItemBody):
(WebCore::jsTestEventTargetPrototypeFunctionItem):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestEventTarget.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::IDLAttribute<JSTestException>::cast):
(WebCore::jsTestExceptionConstructor):
(WebCore::setJSTestExceptionConstructor):
(WebCore::jsTestExceptionNameGetter):
(WebCore::jsTestExceptionName):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestException.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:

(WebCore::JSTestGenerateIsReachablePrototype::finishCreation):
(WebCore::IDLAttribute<JSTestGenerateIsReachable>::cast):
(WebCore::jsTestGenerateIsReachableConstructor):
(WebCore::setJSTestGenerateIsReachableConstructor):
(WebCore::jsTestGenerateIsReachableASecretAttributeGetter):
(WebCore::jsTestGenerateIsReachableASecretAttribute):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestGenerateIsReachable.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestGlobalObject.cpp:

(WebCore::IDLAttribute<JSTestGlobalObject>::cast):
(WebCore::IDLOperation<JSTestGlobalObject>::cast):
(WebCore::jsTestGlobalObjectConstructor):
(WebCore::setJSTestGlobalObjectConstructor):
(WebCore::jsTestGlobalObjectRegularAttributeGetter):
(WebCore::jsTestGlobalObjectRegularAttribute):
(WebCore::setJSTestGlobalObjectRegularAttributeSetter):
(WebCore::setJSTestGlobalObjectRegularAttribute):
(WebCore::jsTestGlobalObjectPublicAndPrivateAttributeGetter):
(WebCore::jsTestGlobalObjectPublicAndPrivateAttribute):
(WebCore::setJSTestGlobalObjectPublicAndPrivateAttributeSetter):
(WebCore::setJSTestGlobalObjectPublicAndPrivateAttribute):
(WebCore::jsTestGlobalObjectPublicAndPrivateConditionalAttributeGetter):
(WebCore::jsTestGlobalObjectPublicAndPrivateConditionalAttribute):
(WebCore::setJSTestGlobalObjectPublicAndPrivateConditionalAttributeSetter):
(WebCore::setJSTestGlobalObjectPublicAndPrivateConditionalAttribute):
(WebCore::jsTestGlobalObjectEnabledAtRuntimeAttributeGetter):
(WebCore::jsTestGlobalObjectEnabledAtRuntimeAttribute):
(WebCore::setJSTestGlobalObjectEnabledAtRuntimeAttributeSetter):
(WebCore::setJSTestGlobalObjectEnabledAtRuntimeAttribute):
(WebCore::jsTestGlobalObjectTestCEReactionsConstructorGetter):
(WebCore::jsTestGlobalObjectTestCEReactionsConstructor):
(WebCore::setJSTestGlobalObjectTestCEReactionsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCEReactionsConstructor):
(WebCore::jsTestGlobalObjectTestCEReactionsStringifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestCEReactionsStringifierConstructor):
(WebCore::setJSTestGlobalObjectTestCEReactionsStringifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCEReactionsStringifierConstructor):
(WebCore::jsTestGlobalObjectTestCallTracerConstructorGetter):
(WebCore::jsTestGlobalObjectTestCallTracerConstructor):
(WebCore::setJSTestGlobalObjectTestCallTracerConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCallTracerConstructor):
(WebCore::jsTestGlobalObjectTestCallbackInterfaceConstructorGetter):
(WebCore::jsTestGlobalObjectTestCallbackInterfaceConstructor):
(WebCore::setJSTestGlobalObjectTestCallbackInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestCallbackInterfaceConstructor):
(WebCore::jsTestGlobalObjectTestClassWithJSBuiltinConstructorConstructorGetter):
(WebCore::jsTestGlobalObjectTestClassWithJSBuiltinConstructorConstructor):
(WebCore::setJSTestGlobalObjectTestClassWithJSBuiltinConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestClassWithJSBuiltinConstructorConstructor):
(WebCore::jsTestGlobalObjectTestDOMJITConstructorGetter):
(WebCore::jsTestGlobalObjectTestDOMJITConstructor):
(WebCore::setJSTestGlobalObjectTestDOMJITConstructorSetter):
(WebCore::setJSTestGlobalObjectTestDOMJITConstructor):
(WebCore::jsTestGlobalObjectTestDomainSecurityConstructorGetter):
(WebCore::jsTestGlobalObjectTestDomainSecurityConstructor):
(WebCore::setJSTestGlobalObjectTestDomainSecurityConstructorSetter):
(WebCore::setJSTestGlobalObjectTestDomainSecurityConstructor):
(WebCore::jsTestGlobalObjectTestEnabledBySettingConstructorGetter):
(WebCore::jsTestGlobalObjectTestEnabledBySettingConstructor):
(WebCore::setJSTestGlobalObjectTestEnabledBySettingConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEnabledBySettingConstructor):
(WebCore::jsTestGlobalObjectTestEnabledForContextConstructorGetter):
(WebCore::jsTestGlobalObjectTestEnabledForContextConstructor):
(WebCore::setJSTestGlobalObjectTestEnabledForContextConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEnabledForContextConstructor):
(WebCore::jsTestGlobalObjectTestEventConstructorConstructorGetter):
(WebCore::jsTestGlobalObjectTestEventConstructorConstructor):
(WebCore::setJSTestGlobalObjectTestEventConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEventConstructorConstructor):
(WebCore::jsTestGlobalObjectTestEventTargetConstructorGetter):
(WebCore::jsTestGlobalObjectTestEventTargetConstructor):
(WebCore::setJSTestGlobalObjectTestEventTargetConstructorSetter):
(WebCore::setJSTestGlobalObjectTestEventTargetConstructor):
(WebCore::jsTestGlobalObjectTestExceptionConstructorGetter):
(WebCore::jsTestGlobalObjectTestExceptionConstructor):
(WebCore::setJSTestGlobalObjectTestExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestExceptionConstructor):
(WebCore::jsTestGlobalObjectTestGenerateIsReachableConstructorGetter):
(WebCore::jsTestGlobalObjectTestGenerateIsReachableConstructor):
(WebCore::setJSTestGlobalObjectTestGenerateIsReachableConstructorSetter):
(WebCore::setJSTestGlobalObjectTestGenerateIsReachableConstructor):
(WebCore::jsTestGlobalObjectTestGlobalObjectConstructorGetter):
(WebCore::jsTestGlobalObjectTestGlobalObjectConstructor):
(WebCore::setJSTestGlobalObjectTestGlobalObjectConstructorSetter):
(WebCore::setJSTestGlobalObjectTestGlobalObjectConstructor):
(WebCore::jsTestGlobalObjectTestIndexedSetterNoIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestIndexedSetterNoIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestIndexedSetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIndexedSetterNoIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestIndexedSetterThrowingExceptionConstructorGetter):
(WebCore::jsTestGlobalObjectTestIndexedSetterThrowingExceptionConstructor):
(WebCore::setJSTestGlobalObjectTestIndexedSetterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIndexedSetterThrowingExceptionConstructor):
(WebCore::jsTestGlobalObjectTestIndexedSetterWithIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestIndexedSetterWithIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestIndexedSetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIndexedSetterWithIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestInterfaceConstructorGetter):
(WebCore::jsTestGlobalObjectTestInterfaceConstructor):
(WebCore::setJSTestGlobalObjectTestInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestInterfaceConstructor):
(WebCore::jsTestGlobalObjectTestInterfaceLeadingUnderscoreConstructorGetter):
(WebCore::jsTestGlobalObjectTestInterfaceLeadingUnderscoreConstructor):
(WebCore::setJSTestGlobalObjectTestInterfaceLeadingUnderscoreConstructorSetter):
(WebCore::setJSTestGlobalObjectTestInterfaceLeadingUnderscoreConstructor):
(WebCore::jsTestGlobalObjectTestIterableConstructorGetter):
(WebCore::jsTestGlobalObjectTestIterableConstructor):
(WebCore::setJSTestGlobalObjectTestIterableConstructorSetter):
(WebCore::setJSTestGlobalObjectTestIterableConstructor):
(WebCore::jsTestGlobalObjectTestJSBuiltinConstructorConstructorGetter):
(WebCore::jsTestGlobalObjectTestJSBuiltinConstructorConstructor):
(WebCore::setJSTestGlobalObjectTestJSBuiltinConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestJSBuiltinConstructorConstructor):
(WebCore::jsTestGlobalObjectTestMapLikeConstructorGetter):
(WebCore::jsTestGlobalObjectTestMapLikeConstructor):
(WebCore::setJSTestGlobalObjectTestMapLikeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestMapLikeConstructor):
(WebCore::jsTestGlobalObjectTestMediaQueryListListenerConstructorGetter):
(WebCore::jsTestGlobalObjectTestMediaQueryListListenerConstructor):
(WebCore::setJSTestGlobalObjectTestMediaQueryListListenerConstructorSetter):
(WebCore::setJSTestGlobalObjectTestMediaQueryListListenerConstructor):
(WebCore::jsTestGlobalObjectTestNamedAndIndexedSetterNoIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedAndIndexedSetterNoIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterNoIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedAndIndexedSetterThrowingExceptionConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedAndIndexedSetterThrowingExceptionConstructor):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterThrowingExceptionConstructor):
(WebCore::jsTestGlobalObjectTestNamedAndIndexedSetterWithIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedAndIndexedSetterWithIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedAndIndexedSetterWithIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedConstructorConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedConstructorConstructor):
(WebCore::setJSTestGlobalObjectTestNamedConstructorConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedConstructorConstructor):
(WebCore::jsTestGlobalObjectAudioConstructorGetter):
(WebCore::jsTestGlobalObjectAudioConstructor):
(WebCore::setJSTestGlobalObjectAudioConstructorSetter):
(WebCore::setJSTestGlobalObjectAudioConstructor):
(WebCore::jsTestGlobalObjectTestNamedDeleterNoIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedDeleterNoIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedDeleterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterNoIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedDeleterThrowingExceptionConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedDeleterThrowingExceptionConstructor):
(WebCore::setJSTestGlobalObjectTestNamedDeleterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterThrowingExceptionConstructor):
(WebCore::jsTestGlobalObjectTestNamedDeleterWithIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedDeleterWithIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedDeleterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterWithIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedDeleterWithIndexedGetterConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedDeleterWithIndexedGetterConstructor):
(WebCore::setJSTestGlobalObjectTestNamedDeleterWithIndexedGetterConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedDeleterWithIndexedGetterConstructor):
(WebCore::jsTestGlobalObjectTestNamedGetterCallWithConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedGetterCallWithConstructor):
(WebCore::setJSTestGlobalObjectTestNamedGetterCallWithConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedGetterCallWithConstructor):
(WebCore::jsTestGlobalObjectTestNamedGetterNoIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedGetterNoIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedGetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedGetterNoIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedGetterWithIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedGetterWithIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedGetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedGetterWithIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterNoIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterNoIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterNoIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterNoIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterThrowingExceptionConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterThrowingExceptionConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterThrowingExceptionConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterThrowingExceptionConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterWithIdentifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterWithIdentifierConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIdentifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIdentifierConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterWithIndexedGetterConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterWithIndexedGetterConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIndexedGetterConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIndexedGetterConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterWithIndexedGetterAndSetterConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterWithIndexedGetterAndSetterConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIndexedGetterAndSetterConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithIndexedGetterAndSetterConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterWithOverrideBuiltinsConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterWithOverrideBuiltinsConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithOverrideBuiltinsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithOverrideBuiltinsConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterWithUnforgablePropertiesConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterWithUnforgablePropertiesConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithUnforgablePropertiesConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithUnforgablePropertiesConstructor):
(WebCore::jsTestGlobalObjectTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructorGetter):
(WebCore::jsTestGlobalObjectTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor):
(WebCore::jsTestGlobalObjectTestOverloadedConstructorsConstructorGetter):
(WebCore::jsTestGlobalObjectTestOverloadedConstructorsConstructor):
(WebCore::setJSTestGlobalObjectTestOverloadedConstructorsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestOverloadedConstructorsConstructor):
(WebCore::jsTestGlobalObjectTestOverloadedConstructorsWithSequenceConstructorGetter):
(WebCore::jsTestGlobalObjectTestOverloadedConstructorsWithSequenceConstructor):
(WebCore::setJSTestGlobalObjectTestOverloadedConstructorsWithSequenceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestOverloadedConstructorsWithSequenceConstructor):
(WebCore::jsTestGlobalObjectTestOverrideBuiltinsConstructorGetter):
(WebCore::jsTestGlobalObjectTestOverrideBuiltinsConstructor):
(WebCore::setJSTestGlobalObjectTestOverrideBuiltinsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestOverrideBuiltinsConstructor):
(WebCore::jsTestGlobalObjectTestPluginInterfaceConstructorGetter):
(WebCore::jsTestGlobalObjectTestPluginInterfaceConstructor):
(WebCore::setJSTestGlobalObjectTestPluginInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestPluginInterfaceConstructor):
(WebCore::jsTestGlobalObjectTestReadOnlyMapLikeConstructorGetter):
(WebCore::jsTestGlobalObjectTestReadOnlyMapLikeConstructor):
(WebCore::setJSTestGlobalObjectTestReadOnlyMapLikeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestReadOnlyMapLikeConstructor):
(WebCore::jsTestGlobalObjectTestReportExtraMemoryCostConstructorGetter):
(WebCore::jsTestGlobalObjectTestReportExtraMemoryCostConstructor):
(WebCore::setJSTestGlobalObjectTestReportExtraMemoryCostConstructorSetter):
(WebCore::setJSTestGlobalObjectTestReportExtraMemoryCostConstructor):
(WebCore::jsTestGlobalObjectTestSerializationConstructorGetter):
(WebCore::jsTestGlobalObjectTestSerializationConstructor):
(WebCore::setJSTestGlobalObjectTestSerializationConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationConstructor):
(WebCore::jsTestGlobalObjectTestSerializationIndirectInheritanceConstructorGetter):
(WebCore::jsTestGlobalObjectTestSerializationIndirectInheritanceConstructor):
(WebCore::setJSTestGlobalObjectTestSerializationIndirectInheritanceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationIndirectInheritanceConstructor):
(WebCore::jsTestGlobalObjectTestSerializationInheritConstructorGetter):
(WebCore::jsTestGlobalObjectTestSerializationInheritConstructor):
(WebCore::setJSTestGlobalObjectTestSerializationInheritConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationInheritConstructor):
(WebCore::jsTestGlobalObjectTestSerializationInheritFinalConstructorGetter):
(WebCore::jsTestGlobalObjectTestSerializationInheritFinalConstructor):
(WebCore::setJSTestGlobalObjectTestSerializationInheritFinalConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializationInheritFinalConstructor):
(WebCore::jsTestGlobalObjectTestSerializedScriptValueInterfaceConstructorGetter):
(WebCore::jsTestGlobalObjectTestSerializedScriptValueInterfaceConstructor):
(WebCore::setJSTestGlobalObjectTestSerializedScriptValueInterfaceConstructorSetter):
(WebCore::setJSTestGlobalObjectTestSerializedScriptValueInterfaceConstructor):
(WebCore::jsTestGlobalObjectTestStringifierConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierConstructor):
(WebCore::jsTestGlobalObjectTestStringifierAnonymousOperationConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierAnonymousOperationConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierAnonymousOperationConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierAnonymousOperationConstructor):
(WebCore::jsTestGlobalObjectTestStringifierNamedOperationConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierNamedOperationConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierNamedOperationConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierNamedOperationConstructor):
(WebCore::jsTestGlobalObjectTestStringifierOperationImplementedAsConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierOperationImplementedAsConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierOperationImplementedAsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierOperationImplementedAsConstructor):
(WebCore::jsTestGlobalObjectTestStringifierOperationNamedToStringConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierOperationNamedToStringConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierOperationNamedToStringConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierOperationNamedToStringConstructor):
(WebCore::jsTestGlobalObjectTestStringifierReadOnlyAttributeConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierReadOnlyAttributeConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierReadOnlyAttributeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierReadOnlyAttributeConstructor):
(WebCore::jsTestGlobalObjectTestStringifierReadWriteAttributeConstructorGetter):
(WebCore::jsTestGlobalObjectTestStringifierReadWriteAttributeConstructor):
(WebCore::setJSTestGlobalObjectTestStringifierReadWriteAttributeConstructorSetter):
(WebCore::setJSTestGlobalObjectTestStringifierReadWriteAttributeConstructor):
(WebCore::jsTestGlobalObjectTestTypedefsConstructorGetter):
(WebCore::jsTestGlobalObjectTestTypedefsConstructor):
(WebCore::setJSTestGlobalObjectTestTypedefsConstructorSetter):
(WebCore::setJSTestGlobalObjectTestTypedefsConstructor):
(WebCore::jsTestGlobalObjectInstanceFunctionRegularOperationBody):
(WebCore::jsTestGlobalObjectInstanceFunctionRegularOperation):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation1Body):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation2Body):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperationOverloadDispatcher):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledAtRuntimeOperation):
(WebCore::jsTestGlobalObjectConstructorFunctionEnabledAtRuntimeOperationStaticBody):
(WebCore::jsTestGlobalObjectConstructorFunctionEnabledAtRuntimeOperationStatic):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledInSpecificWorldBody):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledInSpecificWorld):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledInSpecificWorldWhenRuntimeFeatureEnabledBody):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledInSpecificWorldWhenRuntimeFeatureEnabled):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledInSpecificWorldWhenRuntimeFeaturesEnabledBody):
(WebCore::jsTestGlobalObjectInstanceFunctionEnabledInSpecificWorldWhenRuntimeFeaturesEnabled):
(WebCore::jsTestGlobalObjectInstanceFunctionTestPrivateFunctionBody):
(WebCore::jsTestGlobalObjectInstanceFunctionTestPrivateFunction):
(WebCore::jsTestGlobalObjectInstanceFunctionCalculateSecretResultBody):
(WebCore::jsTestGlobalObjectInstanceFunctionCalculateSecretResult):
(WebCore::jsTestGlobalObjectInstanceFunctionGetSecretBooleanBody):
(WebCore::jsTestGlobalObjectInstanceFunctionGetSecretBoolean):
(WebCore::jsTestGlobalObjectInstanceFunctionTestFeatureGetSecretBooleanBody):
(WebCore::jsTestGlobalObjectInstanceFunctionTestFeatureGetSecretBoolean):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestGlobalObject.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:

(WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestIndexedSetterNoIdentifier::put):
(WebCore::JSTestIndexedSetterNoIdentifier::putByIndex):
(WebCore::JSTestIndexedSetterNoIdentifier::defineOwnProperty):
(WebCore::jsTestIndexedSetterNoIdentifierConstructor):
(WebCore::setJSTestIndexedSetterNoIdentifierConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:

(WebCore::JSTestIndexedSetterThrowingException::getOwnPropertySlot):
(WebCore::JSTestIndexedSetterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestIndexedSetterThrowingException::getOwnPropertyNames):
(WebCore::JSTestIndexedSetterThrowingException::put):
(WebCore::JSTestIndexedSetterThrowingException::putByIndex):
(WebCore::JSTestIndexedSetterThrowingException::defineOwnProperty):
(WebCore::jsTestIndexedSetterThrowingExceptionConstructor):
(WebCore::setJSTestIndexedSetterThrowingExceptionConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:

(WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestIndexedSetterWithIdentifier::put):
(WebCore::JSTestIndexedSetterWithIdentifier::putByIndex):
(WebCore::JSTestIndexedSetterWithIdentifier::defineOwnProperty):
(WebCore::IDLOperation<JSTestIndexedSetterWithIdentifier>::cast):
(WebCore::jsTestIndexedSetterWithIdentifierConstructor):
(WebCore::setJSTestIndexedSetterWithIdentifierConstructor):
(WebCore::jsTestIndexedSetterWithIdentifierPrototypeFunctionIndexedSetterBody):
(WebCore::jsTestIndexedSetterWithIdentifierPrototypeFunctionIndexedSetter):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestInheritedDictionary.cpp:

(WebCore::convertDictionary<TestInheritedDictionary>):
(WebCore::convertDictionaryToJS):

  • bindings/scripts/test/JS/JSTestInheritedDictionary.h:
  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::construct):
(WebCore::IDLAttribute<JSTestInterface>::cast):
(WebCore::IDLOperation<JSTestInterface>::cast):
(WebCore::jsTestInterfaceConstructor):
(WebCore::setJSTestInterfaceConstructor):
(WebCore::jsTestInterfaceConstructorImplementsStaticReadOnlyAttrGetter):
(WebCore::jsTestInterfaceConstructorImplementsStaticReadOnlyAttr):
(WebCore::jsTestInterfaceConstructorImplementsStaticAttrGetter):
(WebCore::jsTestInterfaceConstructorImplementsStaticAttr):
(WebCore::setJSTestInterfaceConstructorImplementsStaticAttrSetter):
(WebCore::setJSTestInterfaceConstructorImplementsStaticAttr):
(WebCore::jsTestInterfaceImplementsStr1Getter):
(WebCore::jsTestInterfaceImplementsStr1):
(WebCore::jsTestInterfaceImplementsStr2Getter):
(WebCore::jsTestInterfaceImplementsStr2):
(WebCore::setJSTestInterfaceImplementsStr2Setter):
(WebCore::setJSTestInterfaceImplementsStr2):
(WebCore::jsTestInterfaceImplementsStr3Getter):
(WebCore::jsTestInterfaceImplementsStr3):
(WebCore::setJSTestInterfaceImplementsStr3Setter):
(WebCore::setJSTestInterfaceImplementsStr3):
(WebCore::jsTestInterfaceImplementsNodeGetter):
(WebCore::jsTestInterfaceImplementsNode):
(WebCore::setJSTestInterfaceImplementsNodeSetter):
(WebCore::setJSTestInterfaceImplementsNode):
(WebCore::jsTestInterfaceConstructorSupplementalStaticReadOnlyAttrGetter):
(WebCore::jsTestInterfaceConstructorSupplementalStaticReadOnlyAttr):
(WebCore::jsTestInterfaceConstructorSupplementalStaticAttrGetter):
(WebCore::jsTestInterfaceConstructorSupplementalStaticAttr):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttrSetter):
(WebCore::setJSTestInterfaceConstructorSupplementalStaticAttr):
(WebCore::jsTestInterfaceSupplementalStr1Getter):
(WebCore::jsTestInterfaceSupplementalStr1):
(WebCore::jsTestInterfaceSupplementalStr2Getter):
(WebCore::jsTestInterfaceSupplementalStr2):
(WebCore::setJSTestInterfaceSupplementalStr2Setter):
(WebCore::setJSTestInterfaceSupplementalStr2):
(WebCore::jsTestInterfaceSupplementalStr3Getter):
(WebCore::jsTestInterfaceSupplementalStr3):
(WebCore::setJSTestInterfaceSupplementalStr3Setter):
(WebCore::setJSTestInterfaceSupplementalStr3):
(WebCore::jsTestInterfaceSupplementalNodeGetter):
(WebCore::jsTestInterfaceSupplementalNode):
(WebCore::setJSTestInterfaceSupplementalNodeSetter):
(WebCore::setJSTestInterfaceSupplementalNode):
(WebCore::jsTestInterfaceReflectAttributeGetter):
(WebCore::jsTestInterfaceReflectAttribute):
(WebCore::setJSTestInterfaceReflectAttributeSetter):
(WebCore::setJSTestInterfaceReflectAttribute):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1Body):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2Body):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3Body):
(WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3):
(WebCore::jsTestInterfaceConstructorFunctionImplementsMethod4Body):
(WebCore::jsTestInterfaceConstructorFunctionImplementsMethod4):
(WebCore::jsTestInterfacePrototypeFunctionTakeNodesBody):
(WebCore::jsTestInterfacePrototypeFunctionTakeNodes):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1Body):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2Body):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3Body):
(WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
(WebCore::jsTestInterfaceConstructorFunctionSupplementalMethod4Body):
(WebCore::jsTestInterfaceConstructorFunctionSupplementalMethod4):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestInterface.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:

(WebCore::IDLAttribute<JSTestInterfaceLeadingUnderscore>::cast):
(WebCore::jsTestInterfaceLeadingUnderscoreConstructor):
(WebCore::setJSTestInterfaceLeadingUnderscoreConstructor):
(WebCore::jsTestInterfaceLeadingUnderscoreReadonlyGetter):
(WebCore::jsTestInterfaceLeadingUnderscoreReadonly):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestIterable.cpp:

(WebCore::IDLOperation<JSTestIterable>::cast):
(WebCore::jsTestIterableConstructor):
(WebCore::setJSTestIterableConstructor):
(WebCore::jsTestIterablePrototypeFunctionEntriesCaller):
(WebCore::jsTestIterablePrototypeFunctionEntries):
(WebCore::jsTestIterablePrototypeFunctionKeysCaller):
(WebCore::jsTestIterablePrototypeFunctionKeys):
(WebCore::jsTestIterablePrototypeFunctionValuesCaller):
(WebCore::jsTestIterablePrototypeFunctionValues):
(WebCore::jsTestIterablePrototypeFunctionForEachCaller):
(WebCore::jsTestIterablePrototypeFunctionForEach):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestIterable.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:

(WebCore::IDLAttribute<JSTestJSBuiltinConstructor>::cast):
(WebCore::IDLOperation<JSTestJSBuiltinConstructor>::cast):
(WebCore::jsTestJSBuiltinConstructorConstructor):
(WebCore::setJSTestJSBuiltinConstructorConstructor):
(WebCore::jsTestJSBuiltinConstructorTestAttributeCustomGetter):
(WebCore::jsTestJSBuiltinConstructorTestAttributeCustom):
(WebCore::jsTestJSBuiltinConstructorTestAttributeRWCustomGetter):
(WebCore::jsTestJSBuiltinConstructorTestAttributeRWCustom):
(WebCore::setJSTestJSBuiltinConstructorTestAttributeRWCustomSetter):
(WebCore::setJSTestJSBuiltinConstructorTestAttributeRWCustom):
(WebCore::jsTestJSBuiltinConstructorPrototypeFunctionTestCustomFunctionBody):
(WebCore::jsTestJSBuiltinConstructorPrototypeFunctionTestCustomFunction):

  • bindings/scripts/test/JS/JSTestJSBuiltinConstructor.h:
  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::IDLOperation<JSTestMediaQueryListListener>::cast):
(WebCore::jsTestMediaQueryListListenerConstructor):
(WebCore::setJSTestMediaQueryListListenerConstructor):
(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethodBody):
(WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:

(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::put):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::putByIndex):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::defineOwnProperty):
(WebCore::jsTestNamedAndIndexedSetterNoIdentifierConstructor):
(WebCore::setJSTestNamedAndIndexedSetterNoIdentifierConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:

(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlot):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertyNames):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::put):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::putByIndex):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::defineOwnProperty):
(WebCore::jsTestNamedAndIndexedSetterThrowingExceptionConstructor):
(WebCore::setJSTestNamedAndIndexedSetterThrowingExceptionConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:

(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::put):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::putByIndex):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::defineOwnProperty):
(WebCore::IDLOperation<JSTestNamedAndIndexedSetterWithIdentifier>::cast):
(WebCore::jsTestNamedAndIndexedSetterWithIdentifierConstructor):
(WebCore::setJSTestNamedAndIndexedSetterWithIdentifierConstructor):
(WebCore::jsTestNamedAndIndexedSetterWithIdentifierPrototypeFunctionNamedSetterBody):
(WebCore::jsTestNamedAndIndexedSetterWithIdentifierPrototypeFunctionNamedSetter):
(WebCore::jsTestNamedAndIndexedSetterWithIdentifierPrototypeFunctionIndexedSetterBody):
(WebCore::jsTestNamedAndIndexedSetterWithIdentifierPrototypeFunctionIndexedSetter):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorNamedConstructor::construct):
(WebCore::jsTestNamedConstructorConstructor):
(WebCore::setJSTestNamedConstructorConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedConstructor.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:

(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterNoIdentifier::deleteProperty):
(WebCore::JSTestNamedDeleterNoIdentifier::deletePropertyByIndex):
(WebCore::jsTestNamedDeleterNoIdentifierConstructor):
(WebCore::setJSTestNamedDeleterNoIdentifierConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:

(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterThrowingException::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterThrowingException::deleteProperty):
(WebCore::JSTestNamedDeleterThrowingException::deletePropertyByIndex):
(WebCore::jsTestNamedDeleterThrowingExceptionConstructor):
(WebCore::setJSTestNamedDeleterThrowingExceptionConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:

(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterWithIdentifier::deleteProperty):
(WebCore::JSTestNamedDeleterWithIdentifier::deletePropertyByIndex):
(WebCore::IDLOperation<JSTestNamedDeleterWithIdentifier>::cast):
(WebCore::jsTestNamedDeleterWithIdentifierConstructor):
(WebCore::setJSTestNamedDeleterWithIdentifierConstructor):
(WebCore::jsTestNamedDeleterWithIdentifierPrototypeFunctionNamedDeleterBody):
(WebCore::jsTestNamedDeleterWithIdentifierPrototypeFunctionNamedDeleter):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:

(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlot):
(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertyNames):
(WebCore::JSTestNamedDeleterWithIndexedGetter::deleteProperty):
(WebCore::JSTestNamedDeleterWithIndexedGetter::deletePropertyByIndex):
(WebCore::jsTestNamedDeleterWithIndexedGetterConstructor):
(WebCore::setJSTestNamedDeleterWithIndexedGetterConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:

(WebCore::JSTestNamedGetterCallWith::getOwnPropertySlot):
(WebCore::JSTestNamedGetterCallWith::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedGetterCallWith::getOwnPropertyNames):
(WebCore::jsTestNamedGetterCallWithConstructor):
(WebCore::setJSTestNamedGetterCallWithConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedGetterCallWith.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:

(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertyNames):
(WebCore::jsTestNamedGetterNoIdentifierConstructor):
(WebCore::setJSTestNamedGetterNoIdentifierConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:

(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertyNames):
(WebCore::IDLOperation<JSTestNamedGetterWithIdentifier>::cast):
(WebCore::jsTestNamedGetterWithIdentifierConstructor):
(WebCore::setJSTestNamedGetterWithIdentifierConstructor):
(WebCore::jsTestNamedGetterWithIdentifierPrototypeFunctionGetterNameBody):
(WebCore::jsTestNamedGetterWithIdentifierPrototypeFunctionGetterName):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:

(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedSetterNoIdentifier::put):
(WebCore::JSTestNamedSetterNoIdentifier::putByIndex):
(WebCore::JSTestNamedSetterNoIdentifier::defineOwnProperty):
(WebCore::jsTestNamedSetterNoIdentifierConstructor):
(WebCore::setJSTestNamedSetterNoIdentifierConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:

(WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlot):
(WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterThrowingException::getOwnPropertyNames):
(WebCore::JSTestNamedSetterThrowingException::put):
(WebCore::JSTestNamedSetterThrowingException::putByIndex):
(WebCore::JSTestNamedSetterThrowingException::defineOwnProperty):
(WebCore::jsTestNamedSetterThrowingExceptionConstructor):
(WebCore::setJSTestNamedSetterThrowingExceptionConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterThrowingException.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:

(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithIdentifier::put):
(WebCore::JSTestNamedSetterWithIdentifier::putByIndex):
(WebCore::JSTestNamedSetterWithIdentifier::defineOwnProperty):
(WebCore::IDLOperation<JSTestNamedSetterWithIdentifier>::cast):
(WebCore::jsTestNamedSetterWithIdentifierConstructor):
(WebCore::setJSTestNamedSetterWithIdentifierConstructor):
(WebCore::jsTestNamedSetterWithIdentifierPrototypeFunctionNamedSetterBody):
(WebCore::jsTestNamedSetterWithIdentifierPrototypeFunctionNamedSetter):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:

(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithIndexedGetter::put):
(WebCore::JSTestNamedSetterWithIndexedGetter::putByIndex):
(WebCore::JSTestNamedSetterWithIndexedGetter::defineOwnProperty):
(WebCore::IDLOperation<JSTestNamedSetterWithIndexedGetter>::cast):
(WebCore::jsTestNamedSetterWithIndexedGetterConstructor):
(WebCore::setJSTestNamedSetterWithIndexedGetterConstructor):
(WebCore::jsTestNamedSetterWithIndexedGetterPrototypeFunctionNamedSetterBody):
(WebCore::jsTestNamedSetterWithIndexedGetterPrototypeFunctionNamedSetter):
(WebCore::jsTestNamedSetterWithIndexedGetterPrototypeFunctionIndexedSetterBody):
(WebCore::jsTestNamedSetterWithIndexedGetterPrototypeFunctionIndexedSetter):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:

(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::put):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::putByIndex):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::defineOwnProperty):
(WebCore::IDLOperation<JSTestNamedSetterWithIndexedGetterAndSetter>::cast):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterConstructor):
(WebCore::setJSTestNamedSetterWithIndexedGetterAndSetterConstructor):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterPrototypeFunctionNamedSetterBody):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterPrototypeFunctionNamedSetter):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterPrototypeFunctionIndexedSetter1Body):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterPrototypeFunctionIndexedSetter2Body):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterPrototypeFunctionIndexedSetterOverloadDispatcher):
(WebCore::jsTestNamedSetterWithIndexedGetterAndSetterPrototypeFunctionIndexedSetter):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.cpp:

(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::put):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::putByIndex):
(WebCore::JSTestNamedSetterWithOverrideBuiltins::defineOwnProperty):
(WebCore::jsTestNamedSetterWithOverrideBuiltinsConstructor):
(WebCore::setJSTestNamedSetterWithOverrideBuiltinsConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:

(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithUnforgableProperties::put):
(WebCore::JSTestNamedSetterWithUnforgableProperties::putByIndex):
(WebCore::JSTestNamedSetterWithUnforgableProperties::defineOwnProperty):
(WebCore::IDLAttribute<JSTestNamedSetterWithUnforgableProperties>::cast):
(WebCore::IDLOperation<JSTestNamedSetterWithUnforgableProperties>::cast):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesConstructor):
(WebCore::setJSTestNamedSetterWithUnforgablePropertiesConstructor):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesUnforgeableAttributeGetter):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesUnforgeableAttribute):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesInstanceFunctionUnforgeableOperationBody):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesInstanceFunctionUnforgeableOperation):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:

(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertyNames):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::put):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::putByIndex):
(WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::defineOwnProperty):
(WebCore::IDLAttribute<JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins>::cast):
(WebCore::IDLOperation<JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins>::cast):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor):
(WebCore::setJSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsUnforgeableAttributeGetter):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsUnforgeableAttribute):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsInstanceFunctionUnforgeableOperationBody):
(WebCore::jsTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsInstanceFunctionUnforgeableOperation):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestNode.cpp:

(WebCore::JSTestNodeConstructor::construct):
(WebCore::JSTestNodePrototype::finishCreation):
(WebCore::IDLAttribute<JSTestNode>::cast):
(WebCore::IDLOperation<JSTestNode>::cast):
(WebCore::jsTestNodeConstructor):
(WebCore::setJSTestNodeConstructor):
(WebCore::jsTestNodeNameGetter):
(WebCore::jsTestNodeName):
(WebCore::setJSTestNodeNameSetter):
(WebCore::setJSTestNodeName):
(WebCore::jsTestNodePrototypeFunctionTestWorkerPromiseBody):
(WebCore::jsTestNodePrototypeFunctionTestWorkerPromise):
(WebCore::jsTestNodePrototypeFunctionCalculateSecretResultBody):
(WebCore::jsTestNodePrototypeFunctionCalculateSecretResult):
(WebCore::jsTestNodePrototypeFunctionGetSecretBooleanBody):
(WebCore::jsTestNodePrototypeFunctionGetSecretBoolean):
(WebCore::jsTestNodePrototypeFunctionTestFeatureGetSecretBooleanBody):
(WebCore::jsTestNodePrototypeFunctionTestFeatureGetSecretBoolean):
(WebCore::jsTestNodePrototypeFunctionEntriesCaller):
(WebCore::jsTestNodePrototypeFunctionEntries):
(WebCore::jsTestNodePrototypeFunctionKeysCaller):
(WebCore::jsTestNodePrototypeFunctionKeys):
(WebCore::jsTestNodePrototypeFunctionValuesCaller):
(WebCore::jsTestNodePrototypeFunctionValues):
(WebCore::jsTestNodePrototypeFunctionForEachCaller):
(WebCore::jsTestNodePrototypeFunctionForEach):
(WebCore::JSTestNode::serialize):
(WebCore::jsTestNodePrototypeFunctionToJSONBody):
(WebCore::jsTestNodePrototypeFunctionToJSON):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestNode.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::convertEnumerationToJS):
(WebCore::parseEnumeration<TestObj::EnumType>):
(WebCore::parseEnumeration<TestObj::Optional>):
(WebCore::parseEnumeration<AlternateEnumName>):
(WebCore::parseEnumeration<TestObj::EnumA>):
(WebCore::parseEnumeration<TestObj::EnumB>):
(WebCore::parseEnumeration<TestObj::EnumC>):
(WebCore::parseEnumeration<TestObj::Kind>):
(WebCore::parseEnumeration<TestObj::Size>):
(WebCore::parseEnumeration<TestObj::Confidence>):
(WebCore::convertDictionary<TestObj::Dictionary>):
(WebCore::convertDictionaryToJS):
(WebCore::convertDictionary<TestObj::DictionaryThatShouldNotTolerateNull>):
(WebCore::convertDictionary<TestObj::DictionaryThatShouldTolerateNull>):
(WebCore::convertDictionary<AlternateDictionaryName>):
(WebCore::convertDictionary<TestObj::ParentDictionary>):
(WebCore::convertDictionary<TestObj::ChildDictionary>):
(WebCore::convertDictionary<TestObj::ConditionalDictionaryA>):
(WebCore::convertDictionary<TestObj::ConditionalDictionaryB>):
(WebCore::convertDictionary<TestObj::ConditionalDictionaryC>):
(WebCore::JSTestObjConstructor::construct):
(WebCore::JSTestObjConstructor::initializeProperties):
(WebCore::JSTestObjPrototype::finishCreation):
(WebCore::JSTestObj::getOwnPropertySlot):
(WebCore::JSTestObj::getOwnPropertySlotByIndex):
(WebCore::JSTestObj::getOwnPropertyNames):
(WebCore::callJSTestObj1):
(WebCore::callJSTestObj2):
(WebCore::callJSTestObj3):
(WebCore::callJSTestObj):
(WebCore::IDLAttribute<JSTestObj>::cast):
(WebCore::IDLOperation<JSTestObj>::cast):
(WebCore::jsTestObjConstructor):
(WebCore::setJSTestObjConstructor):
(WebCore::jsTestObjReadOnlyLongAttrGetter):
(WebCore::jsTestObjReadOnlyLongAttr):
(WebCore::jsTestObjReadOnlyStringAttrGetter):
(WebCore::jsTestObjReadOnlyStringAttr):
(WebCore::jsTestObjReadOnlyTestObjAttrGetter):
(WebCore::jsTestObjReadOnlyTestObjAttr):
(WebCore::jsTestObjConstructorStaticReadOnlyLongAttrGetter):
(WebCore::jsTestObjConstructorStaticReadOnlyLongAttr):
(WebCore::jsTestObjConstructorStaticStringAttrGetter):
(WebCore::jsTestObjConstructorStaticStringAttr):
(WebCore::setJSTestObjConstructorStaticStringAttrSetter):
(WebCore::setJSTestObjConstructorStaticStringAttr):
(WebCore::jsTestObjConstructorTestSubObjGetter):
(WebCore::jsTestObjConstructorTestSubObj):
(WebCore::jsTestObjConstructorTestStaticReadonlyObjGetter):
(WebCore::jsTestObjConstructorTestStaticReadonlyObj):
(WebCore::jsTestObjEnumAttrGetter):
(WebCore::jsTestObjEnumAttr):
(WebCore::setJSTestObjEnumAttrSetter):
(WebCore::setJSTestObjEnumAttr):
(WebCore::jsTestObjByteAttrGetter):
(WebCore::jsTestObjByteAttr):
(WebCore::setJSTestObjByteAttrSetter):
(WebCore::setJSTestObjByteAttr):
(WebCore::jsTestObjOctetAttrGetter):
(WebCore::jsTestObjOctetAttr):
(WebCore::setJSTestObjOctetAttrSetter):
(WebCore::setJSTestObjOctetAttr):
(WebCore::jsTestObjShortAttrGetter):
(WebCore::jsTestObjShortAttr):
(WebCore::setJSTestObjShortAttrSetter):
(WebCore::setJSTestObjShortAttr):
(WebCore::jsTestObjClampedShortAttrGetter):
(WebCore::jsTestObjClampedShortAttr):
(WebCore::setJSTestObjClampedShortAttrSetter):
(WebCore::setJSTestObjClampedShortAttr):
(WebCore::jsTestObjEnforceRangeShortAttrGetter):
(WebCore::jsTestObjEnforceRangeShortAttr):
(WebCore::setJSTestObjEnforceRangeShortAttrSetter):
(WebCore::setJSTestObjEnforceRangeShortAttr):
(WebCore::jsTestObjUnsignedShortAttrGetter):
(WebCore::jsTestObjUnsignedShortAttr):
(WebCore::setJSTestObjUnsignedShortAttrSetter):
(WebCore::setJSTestObjUnsignedShortAttr):
(WebCore::jsTestObjLongAttrGetter):
(WebCore::jsTestObjLongAttr):
(WebCore::setJSTestObjLongAttrSetter):
(WebCore::setJSTestObjLongAttr):
(WebCore::jsTestObjLongLongAttrGetter):
(WebCore::jsTestObjLongLongAttr):
(WebCore::setJSTestObjLongLongAttrSetter):
(WebCore::setJSTestObjLongLongAttr):
(WebCore::jsTestObjUnsignedLongLongAttrGetter):
(WebCore::jsTestObjUnsignedLongLongAttr):
(WebCore::setJSTestObjUnsignedLongLongAttrSetter):
(WebCore::setJSTestObjUnsignedLongLongAttr):
(WebCore::jsTestObjStringAttrGetter):
(WebCore::jsTestObjStringAttr):
(WebCore::setJSTestObjStringAttrSetter):
(WebCore::setJSTestObjStringAttr):
(WebCore::jsTestObjUsvstringAttrGetter):
(WebCore::jsTestObjUsvstringAttr):
(WebCore::setJSTestObjUsvstringAttrSetter):
(WebCore::setJSTestObjUsvstringAttr):
(WebCore::jsTestObjTestObjAttrGetter):
(WebCore::jsTestObjTestObjAttr):
(WebCore::setJSTestObjTestObjAttrSetter):
(WebCore::setJSTestObjTestObjAttr):
(WebCore::jsTestObjTestNullableObjAttrGetter):
(WebCore::jsTestObjTestNullableObjAttr):
(WebCore::setJSTestObjTestNullableObjAttrSetter):
(WebCore::setJSTestObjTestNullableObjAttr):
(WebCore::jsTestObjLenientTestObjAttrGetter):
(WebCore::jsTestObjLenientTestObjAttr):
(WebCore::setJSTestObjLenientTestObjAttrSetter):
(WebCore::setJSTestObjLenientTestObjAttr):
(WebCore::jsTestObjUnforgeableAttrGetter):
(WebCore::jsTestObjUnforgeableAttr):
(WebCore::jsTestObjStringAttrTreatingNullAsEmptyStringGetter):
(WebCore::jsTestObjStringAttrTreatingNullAsEmptyString):
(WebCore::setJSTestObjStringAttrTreatingNullAsEmptyStringSetter):
(WebCore::setJSTestObjStringAttrTreatingNullAsEmptyString):
(WebCore::jsTestObjUsvstringAttrTreatingNullAsEmptyStringGetter):
(WebCore::jsTestObjUsvstringAttrTreatingNullAsEmptyString):
(WebCore::setJSTestObjUsvstringAttrTreatingNullAsEmptyStringSetter):
(WebCore::setJSTestObjUsvstringAttrTreatingNullAsEmptyString):
(WebCore::jsTestObjByteStringAttrTreatingNullAsEmptyStringGetter):
(WebCore::jsTestObjByteStringAttrTreatingNullAsEmptyString):
(WebCore::setJSTestObjByteStringAttrTreatingNullAsEmptyStringSetter):
(WebCore::setJSTestObjByteStringAttrTreatingNullAsEmptyString):
(WebCore::jsTestObjStringLongRecordAttrGetter):
(WebCore::jsTestObjStringLongRecordAttr):
(WebCore::setJSTestObjStringLongRecordAttrSetter):
(WebCore::setJSTestObjStringLongRecordAttr):
(WebCore::jsTestObjUsvstringLongRecordAttrGetter):
(WebCore::jsTestObjUsvstringLongRecordAttr):
(WebCore::setJSTestObjUsvstringLongRecordAttrSetter):
(WebCore::setJSTestObjUsvstringLongRecordAttr):
(WebCore::jsTestObjStringObjRecordAttrGetter):
(WebCore::jsTestObjStringObjRecordAttr):
(WebCore::setJSTestObjStringObjRecordAttrSetter):
(WebCore::setJSTestObjStringObjRecordAttr):
(WebCore::jsTestObjStringNullableObjRecordAttrGetter):
(WebCore::jsTestObjStringNullableObjRecordAttr):
(WebCore::setJSTestObjStringNullableObjRecordAttrSetter):
(WebCore::setJSTestObjStringNullableObjRecordAttr):
(WebCore::jsTestObjStringVoidCallbackRecordAttrGetter):
(WebCore::jsTestObjStringVoidCallbackRecordAttr):
(WebCore::setJSTestObjStringVoidCallbackRecordAttrSetter):
(WebCore::setJSTestObjStringVoidCallbackRecordAttr):
(WebCore::jsTestObjDictionaryAttrGetter):
(WebCore::jsTestObjDictionaryAttr):
(WebCore::setJSTestObjDictionaryAttrSetter):
(WebCore::setJSTestObjDictionaryAttr):
(WebCore::jsTestObjNullableDictionaryAttrGetter):
(WebCore::jsTestObjNullableDictionaryAttr):
(WebCore::setJSTestObjNullableDictionaryAttrSetter):
(WebCore::setJSTestObjNullableDictionaryAttr):
(WebCore::jsTestObjAnnotatedTypeInUnionAttrGetter):
(WebCore::jsTestObjAnnotatedTypeInUnionAttr):
(WebCore::setJSTestObjAnnotatedTypeInUnionAttrSetter):
(WebCore::setJSTestObjAnnotatedTypeInUnionAttr):
(WebCore::jsTestObjAnnotatedTypeInSequenceAttrGetter):
(WebCore::jsTestObjAnnotatedTypeInSequenceAttr):
(WebCore::setJSTestObjAnnotatedTypeInSequenceAttrSetter):
(WebCore::setJSTestObjAnnotatedTypeInSequenceAttr):
(WebCore::jsTestObjImplementationEnumAttrGetter):
(WebCore::jsTestObjImplementationEnumAttr):
(WebCore::setJSTestObjImplementationEnumAttrSetter):
(WebCore::setJSTestObjImplementationEnumAttr):
(WebCore::jsTestObjMediaDevicesGetter):
(WebCore::jsTestObjMediaDevices):
(WebCore::jsTestObjServiceWorkersGetter):
(WebCore::jsTestObjServiceWorkers):
(WebCore::jsTestObjXMLObjAttrGetter):
(WebCore::jsTestObjXMLObjAttr):
(WebCore::setJSTestObjXMLObjAttrSetter):
(WebCore::setJSTestObjXMLObjAttr):
(WebCore::jsTestObjCreateGetter):
(WebCore::jsTestObjCreate):
(WebCore::setJSTestObjCreateSetter):
(WebCore::setJSTestObjCreate):
(WebCore::jsTestObjReflectedStringAttrGetter):
(WebCore::jsTestObjReflectedStringAttr):
(WebCore::setJSTestObjReflectedStringAttrSetter):
(WebCore::setJSTestObjReflectedStringAttr):
(WebCore::jsTestObjReflectedUSVStringAttrGetter):
(WebCore::jsTestObjReflectedUSVStringAttr):
(WebCore::setJSTestObjReflectedUSVStringAttrSetter):
(WebCore::setJSTestObjReflectedUSVStringAttr):
(WebCore::jsTestObjReflectedIntegralAttrGetter):
(WebCore::jsTestObjReflectedIntegralAttr):
(WebCore::setJSTestObjReflectedIntegralAttrSetter):
(WebCore::setJSTestObjReflectedIntegralAttr):
(WebCore::jsTestObjReflectedUnsignedIntegralAttrGetter):
(WebCore::jsTestObjReflectedUnsignedIntegralAttr):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttrSetter):
(WebCore::setJSTestObjReflectedUnsignedIntegralAttr):
(WebCore::jsTestObjReflectedBooleanAttrGetter):
(WebCore::jsTestObjReflectedBooleanAttr):
(WebCore::setJSTestObjReflectedBooleanAttrSetter):
(WebCore::setJSTestObjReflectedBooleanAttr):
(WebCore::jsTestObjReflectedURLAttrGetter):
(WebCore::jsTestObjReflectedURLAttr):
(WebCore::setJSTestObjReflectedURLAttrSetter):
(WebCore::setJSTestObjReflectedURLAttr):
(WebCore::jsTestObjReflectedUSVURLAttrGetter):
(WebCore::jsTestObjReflectedUSVURLAttr):
(WebCore::setJSTestObjReflectedUSVURLAttrSetter):
(WebCore::setJSTestObjReflectedUSVURLAttr):
(WebCore::jsTestObjReflectedCustomIntegralAttrGetter):
(WebCore::jsTestObjReflectedCustomIntegralAttr):
(WebCore::setJSTestObjReflectedCustomIntegralAttrSetter):
(WebCore::setJSTestObjReflectedCustomIntegralAttr):
(WebCore::jsTestObjReflectedCustomBooleanAttrGetter):
(WebCore::jsTestObjReflectedCustomBooleanAttr):
(WebCore::setJSTestObjReflectedCustomBooleanAttrSetter):
(WebCore::setJSTestObjReflectedCustomBooleanAttr):
(WebCore::jsTestObjReflectedCustomURLAttrGetter):
(WebCore::jsTestObjReflectedCustomURLAttr):
(WebCore::setJSTestObjReflectedCustomURLAttrSetter):
(WebCore::setJSTestObjReflectedCustomURLAttr):
(WebCore::jsTestObjEnabledAtRuntimeAttributeGetter):
(WebCore::jsTestObjEnabledAtRuntimeAttribute):
(WebCore::setJSTestObjEnabledAtRuntimeAttributeSetter):
(WebCore::setJSTestObjEnabledAtRuntimeAttribute):
(WebCore::jsTestObjConstructorEnabledAtRuntimeAttributeStaticGetter):
(WebCore::jsTestObjConstructorEnabledAtRuntimeAttributeStatic):
(WebCore::setJSTestObjConstructorEnabledAtRuntimeAttributeStaticSetter):
(WebCore::setJSTestObjConstructorEnabledAtRuntimeAttributeStatic):
(WebCore::jsTestObjTypedArrayAttrGetter):
(WebCore::jsTestObjTypedArrayAttr):
(WebCore::setJSTestObjTypedArrayAttrSetter):
(WebCore::setJSTestObjTypedArrayAttr):
(WebCore::jsTestObjCustomAttrGetter):
(WebCore::jsTestObjCustomAttr):
(WebCore::setJSTestObjCustomAttrSetter):
(WebCore::setJSTestObjCustomAttr):
(WebCore::jsTestObjOnfooGetter):
(WebCore::jsTestObjOnfoo):
(WebCore::setJSTestObjOnfooSetter):
(WebCore::setJSTestObjOnfoo):
(WebCore::jsTestObjOnwebkitfooGetter):
(WebCore::jsTestObjOnwebkitfoo):
(WebCore::setJSTestObjOnwebkitfooSetter):
(WebCore::setJSTestObjOnwebkitfoo):
(WebCore::jsTestObjWithExecStateAttributeGetter):
(WebCore::jsTestObjWithExecStateAttribute):
(WebCore::setJSTestObjWithExecStateAttributeSetter):
(WebCore::setJSTestObjWithExecStateAttribute):
(WebCore::jsTestObjWithCallWithAndSetterCallWithAttributeGetter):
(WebCore::jsTestObjWithCallWithAndSetterCallWithAttribute):
(WebCore::setJSTestObjWithCallWithAndSetterCallWithAttributeSetter):
(WebCore::setJSTestObjWithCallWithAndSetterCallWithAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAttributeGetter):
(WebCore::jsTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeSetter):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAndExecStateAttributeGetter):
(WebCore::jsTestObjWithScriptExecutionContextAndExecStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAndExecStateAttributeSetter):
(WebCore::setJSTestObjWithScriptExecutionContextAndExecStateAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAndExecStateWithSpacesAttributeGetter):
(WebCore::jsTestObjWithScriptExecutionContextAndExecStateWithSpacesAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAndExecStateWithSpacesAttributeSetter):
(WebCore::setJSTestObjWithScriptExecutionContextAndExecStateWithSpacesAttribute):
(WebCore::jsTestObjConditionalAttr1Getter):
(WebCore::jsTestObjConditionalAttr1):
(WebCore::setJSTestObjConditionalAttr1Setter):
(WebCore::setJSTestObjConditionalAttr1):
(WebCore::jsTestObjConditionalAttr2Getter):
(WebCore::jsTestObjConditionalAttr2):
(WebCore::setJSTestObjConditionalAttr2Setter):
(WebCore::setJSTestObjConditionalAttr2):
(WebCore::jsTestObjConditionalAttr3Getter):
(WebCore::jsTestObjConditionalAttr3):
(WebCore::setJSTestObjConditionalAttr3Setter):
(WebCore::setJSTestObjConditionalAttr3):
(WebCore::jsTestObjConditionalAttr4ConstructorGetter):
(WebCore::jsTestObjConditionalAttr4Constructor):
(WebCore::setJSTestObjConditionalAttr4ConstructorSetter):
(WebCore::setJSTestObjConditionalAttr4Constructor):
(WebCore::jsTestObjConditionalAttr5ConstructorGetter):
(WebCore::jsTestObjConditionalAttr5Constructor):
(WebCore::setJSTestObjConditionalAttr5ConstructorSetter):
(WebCore::setJSTestObjConditionalAttr5Constructor):
(WebCore::jsTestObjConditionalAttr6ConstructorGetter):
(WebCore::jsTestObjConditionalAttr6Constructor):
(WebCore::setJSTestObjConditionalAttr6ConstructorSetter):
(WebCore::setJSTestObjConditionalAttr6Constructor):
(WebCore::jsTestObjCachedAttribute1Getter):
(WebCore::jsTestObjCachedAttribute1):
(WebCore::jsTestObjCachedAttribute2Getter):
(WebCore::jsTestObjCachedAttribute2):
(WebCore::jsTestObjCachedAttribute3Getter):
(WebCore::jsTestObjCachedAttribute3):
(WebCore::jsTestObjAnyAttributeGetter):
(WebCore::jsTestObjAnyAttribute):
(WebCore::setJSTestObjAnyAttributeSetter):
(WebCore::setJSTestObjAnyAttribute):
(WebCore::jsTestObjObjectAttributeGetter):
(WebCore::jsTestObjObjectAttribute):
(WebCore::setJSTestObjObjectAttributeSetter):
(WebCore::setJSTestObjObjectAttribute):
(WebCore::jsTestObjContentDocumentGetter):
(WebCore::jsTestObjContentDocument):
(WebCore::jsTestObjMutablePointGetter):
(WebCore::jsTestObjMutablePoint):
(WebCore::setJSTestObjMutablePointSetter):
(WebCore::setJSTestObjMutablePoint):
(WebCore::jsTestObjStrawberryGetter):
(WebCore::jsTestObjStrawberry):
(WebCore::setJSTestObjStrawberrySetter):
(WebCore::setJSTestObjStrawberry):
(WebCore::jsTestObjDescriptionGetter):
(WebCore::jsTestObjDescription):
(WebCore::jsTestObjIdGetter):
(WebCore::jsTestObjId):
(WebCore::setJSTestObjIdSetter):
(WebCore::setJSTestObjId):
(WebCore::jsTestObjHashGetter):
(WebCore::jsTestObjHash):
(WebCore::jsTestObjReplaceableAttributeGetter):
(WebCore::jsTestObjReplaceableAttribute):
(WebCore::setJSTestObjReplaceableAttributeSetter):
(WebCore::setJSTestObjReplaceableAttribute):
(WebCore::jsTestObjNullableDoubleAttributeGetter):
(WebCore::jsTestObjNullableDoubleAttribute):
(WebCore::jsTestObjNullableLongAttributeGetter):
(WebCore::jsTestObjNullableLongAttribute):
(WebCore::jsTestObjNullableBooleanAttributeGetter):
(WebCore::jsTestObjNullableBooleanAttribute):
(WebCore::jsTestObjNullableStringAttributeGetter):
(WebCore::jsTestObjNullableStringAttribute):
(WebCore::jsTestObjNullableLongSettableAttributeGetter):
(WebCore::jsTestObjNullableLongSettableAttribute):
(WebCore::setJSTestObjNullableLongSettableAttributeSetter):
(WebCore::setJSTestObjNullableLongSettableAttribute):
(WebCore::jsTestObjNullableStringSettableAttributeGetter):
(WebCore::jsTestObjNullableStringSettableAttribute):
(WebCore::setJSTestObjNullableStringSettableAttributeSetter):
(WebCore::setJSTestObjNullableStringSettableAttribute):
(WebCore::jsTestObjNullableUSVStringSettableAttributeGetter):
(WebCore::jsTestObjNullableUSVStringSettableAttribute):
(WebCore::setJSTestObjNullableUSVStringSettableAttributeSetter):
(WebCore::setJSTestObjNullableUSVStringSettableAttribute):
(WebCore::jsTestObjNullableByteStringSettableAttributeGetter):
(WebCore::jsTestObjNullableByteStringSettableAttribute):
(WebCore::setJSTestObjNullableByteStringSettableAttributeSetter):
(WebCore::setJSTestObjNullableByteStringSettableAttribute):
(WebCore::jsTestObjAttributeGetter):
(WebCore::jsTestObjAttribute):
(WebCore::jsTestObjAttributeWithReservedEnumTypeGetter):
(WebCore::jsTestObjAttributeWithReservedEnumType):
(WebCore::setJSTestObjAttributeWithReservedEnumTypeSetter):
(WebCore::setJSTestObjAttributeWithReservedEnumType):
(WebCore::jsTestObjTestReadOnlyVoidPromiseAttributeGetter):
(WebCore::jsTestObjTestReadOnlyVoidPromiseAttribute):
(WebCore::jsTestObjTestReadOnlyPromiseAttributeGetter):
(WebCore::jsTestObjTestReadOnlyPromiseAttribute):
(WebCore::jsTestObjPutForwardsAttributeGetter):
(WebCore::jsTestObjPutForwardsAttribute):
(WebCore::setJSTestObjPutForwardsAttributeSetter):
(WebCore::setJSTestObjPutForwardsAttribute):
(WebCore::jsTestObjPutForwardsNullableAttributeGetter):
(WebCore::jsTestObjPutForwardsNullableAttribute):
(WebCore::setJSTestObjPutForwardsNullableAttributeSetter):
(WebCore::setJSTestObjPutForwardsNullableAttribute):
(WebCore::jsTestObjStringifierAttributeGetter):
(WebCore::jsTestObjStringifierAttribute):
(WebCore::setJSTestObjStringifierAttributeSetter):
(WebCore::setJSTestObjStringifierAttribute):
(WebCore::jsTestObjConditionallyReadWriteAttributeGetter):
(WebCore::jsTestObjConditionallyReadWriteAttribute):
(WebCore::setJSTestObjConditionallyReadWriteAttributeSetter):
(WebCore::setJSTestObjConditionallyReadWriteAttribute):
(WebCore::jsTestObjConditionalAndConditionallyReadWriteAttributeGetter):
(WebCore::jsTestObjConditionalAndConditionallyReadWriteAttribute):
(WebCore::setJSTestObjConditionalAndConditionallyReadWriteAttributeSetter):
(WebCore::setJSTestObjConditionalAndConditionallyReadWriteAttribute):
(WebCore::jsTestObjConditionallyExposedToWindowAttributeGetter):
(WebCore::jsTestObjConditionallyExposedToWindowAttribute):
(WebCore::setJSTestObjConditionallyExposedToWindowAttributeSetter):
(WebCore::setJSTestObjConditionallyExposedToWindowAttribute):
(WebCore::jsTestObjConditionallyExposedToWorkerAttributeGetter):
(WebCore::jsTestObjConditionallyExposedToWorkerAttribute):
(WebCore::setJSTestObjConditionallyExposedToWorkerAttributeSetter):
(WebCore::setJSTestObjConditionallyExposedToWorkerAttribute):
(WebCore::jsTestObjConditionallyExposedToWindowAndWorkerAttributeGetter):
(WebCore::jsTestObjConditionallyExposedToWindowAndWorkerAttribute):
(WebCore::setJSTestObjConditionallyExposedToWindowAndWorkerAttributeSetter):
(WebCore::setJSTestObjConditionallyExposedToWindowAndWorkerAttribute):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation1Body):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation2Body):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperationOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionEnabledAtRuntimeOperation):
(WebCore::jsTestObjConstructorFunctionEnabledAtRuntimeOperationStaticBody):
(WebCore::jsTestObjConstructorFunctionEnabledAtRuntimeOperationStatic):
(WebCore::jsTestObjPrototypeFunctionEnabledInSpecificWorldWhenRuntimeFeatureEnabledBody):
(WebCore::jsTestObjPrototypeFunctionEnabledInSpecificWorldWhenRuntimeFeatureEnabled):
(WebCore::jsTestObjPrototypeFunctionWorldSpecificMethodBody):
(WebCore::jsTestObjPrototypeFunctionWorldSpecificMethod):
(WebCore::jsTestObjPrototypeFunctionCalculateSecretResultBody):
(WebCore::jsTestObjPrototypeFunctionCalculateSecretResult):
(WebCore::jsTestObjPrototypeFunctionGetSecretBooleanBody):
(WebCore::jsTestObjPrototypeFunctionGetSecretBoolean):
(WebCore::jsTestObjPrototypeFunctionTestFeatureGetSecretBooleanBody):
(WebCore::jsTestObjPrototypeFunctionTestFeatureGetSecretBoolean):
(WebCore::jsTestObjPrototypeFunctionVoidMethodBody):
(WebCore::jsTestObjPrototypeFunctionVoidMethod):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgsBody):
(WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionByteMethodBody):
(WebCore::jsTestObjPrototypeFunctionByteMethod):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgsBody):
(WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionOctetMethodBody):
(WebCore::jsTestObjPrototypeFunctionOctetMethod):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgsBody):
(WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionLongMethodBody):
(WebCore::jsTestObjPrototypeFunctionLongMethod):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgsBody):
(WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionObjMethodBody):
(WebCore::jsTestObjPrototypeFunctionObjMethod):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgsBody):
(WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
(WebCore::jsTestObjInstanceFunctionUnforgeableMethodBody):
(WebCore::jsTestObjInstanceFunctionUnforgeableMethod):
(WebCore::jsTestObjPrototypeFunctionMethodWithArgTreatingNullAsEmptyStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithArgTreatingNullAsEmptyString):
(WebCore::jsTestObjPrototypeFunctionMethodWithXPathNSResolverParameterBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithXPathNSResolverParameter):
(WebCore::jsTestObjPrototypeFunctionNullableStringMethodBody):
(WebCore::jsTestObjPrototypeFunctionNullableStringMethod):
(WebCore::jsTestObjConstructorFunctionNullableStringStaticMethodBody):
(WebCore::jsTestObjConstructorFunctionNullableStringStaticMethod):
(WebCore::jsTestObjPrototypeFunctionNullableStringSpecialMethodBody):
(WebCore::jsTestObjPrototypeFunctionNullableStringSpecialMethod):
(WebCore::jsTestObjPrototypeFunctionMethodWithEnumArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithStandaloneEnumArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithStandaloneEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalEnumArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalEnumArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalEnumArgAndDefaultValueBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalEnumArgAndDefaultValue):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrowsBody):
(WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
(WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNullableUSVStringArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithNullableUSVStringArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArgTreatingNullAsEmptyStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithUSVStringArgTreatingNullAsEmptyString):
(WebCore::jsTestObjPrototypeFunctionMethodWithByteStringArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithByteStringArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNullableByteStringArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithNullableByteStringArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithByteStringArgTreatingNullAsEmptyStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithByteStringArgTreatingNullAsEmptyString):
(WebCore::jsTestObjPrototypeFunctionSerializedValueBody):
(WebCore::jsTestObjPrototypeFunctionSerializedValue):
(WebCore::jsTestObjPrototypeFunctionMethodWithRecordBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithRecord):
(WebCore::jsTestObjPrototypeFunctionMethodWithExceptionBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithException):
(WebCore::jsTestObjPrototypeFunctionMethodWithExceptionReturningLongBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithExceptionReturningLong):
(WebCore::jsTestObjPrototypeFunctionMethodWithExceptionReturningObjectBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithExceptionReturningObject):
(WebCore::jsTestObjPrototypeFunctionCustomMethodBody):
(WebCore::jsTestObjPrototypeFunctionCustomMethod):
(WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgsBody):
(WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
(WebCore::jsTestObjPrototypeFunctionPrivateMethodBody):
(WebCore::jsTestObjPrototypeFunctionPrivateMethod):
(WebCore::jsTestObjPrototypeFunctionPublicAndPrivateMethodBody):
(WebCore::jsTestObjPrototypeFunctionPublicAndPrivateMethod):
(WebCore::jsTestObjPrototypeFunctionAddEventListenerBody):
(WebCore::jsTestObjPrototypeFunctionAddEventListener):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListenerBody):
(WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
(WebCore::jsTestObjPrototypeFunctionWithExecStateVoidBody):
(WebCore::jsTestObjPrototypeFunctionWithExecStateVoid):
(WebCore::jsTestObjPrototypeFunctionWithExecStateObjBody):
(WebCore::jsTestObjPrototypeFunctionWithExecStateObj):
(WebCore::jsTestObjPrototypeFunctionWithExecStateVoidExceptionBody):
(WebCore::jsTestObjPrototypeFunctionWithExecStateVoidException):
(WebCore::jsTestObjPrototypeFunctionWithExecStateObjExceptionBody):
(WebCore::jsTestObjPrototypeFunctionWithExecStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextBody):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndExecStateBody):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndExecState):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndExecStateObjExceptionBody):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndExecStateObjException):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndExecStateWithSpacesBody):
(WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndExecStateWithSpaces):
(WebCore::jsTestObjPrototypeFunctionWithDocumentArgumentBody):
(WebCore::jsTestObjPrototypeFunctionWithDocumentArgument):
(WebCore::jsTestObjPrototypeFunctionWithCallerDocumentArgumentBody):
(WebCore::jsTestObjPrototypeFunctionWithCallerDocumentArgument):
(WebCore::jsTestObjPrototypeFunctionWithCallerWindowArgumentBody):
(WebCore::jsTestObjPrototypeFunctionWithCallerWindowArgument):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArgAndDefaultValueBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArgAndDefaultValue):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgsBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUSVStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUSVString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringAndDefaultValueBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringAndDefaultValue):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringAndDefaultValueBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringAndDefaultValue):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNullBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNull):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefinedBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefined):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringIsNullBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringIsNull):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsEmptyStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsEmptyString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUSVStringIsEmptyStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUSVStringIsEmptyString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringIsEmptyStringBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAtomStringIsEmptyString):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalDoubleIsNaNBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalDoubleIsNaN):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalFloatIsNaNBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalFloatIsNaN):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalLongLongBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalLongLong):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalLongLongIsZeroBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalLongLongIsZero):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUnsignedLongLongBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUnsignedLongLong):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUnsignedLongLongIsZeroBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalUnsignedLongLongIsZero):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalSequenceBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalSequence):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalSequenceIsEmptyBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalSequenceIsEmpty):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalBooleanBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalBoolean):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalBooleanIsFalseBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalBooleanIsFalse):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAnyBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalAny):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalObjectBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalObject):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalNullableWrapperBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalNullableWrapper):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalNullableWrapperIsNullBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalNullableWrapperIsNull):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalXPathNSResolverBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalXPathNSResolver):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalRecordBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalRecord):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalPromiseBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalPromise):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackFunctionArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackFunctionArg):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionAndOptionalArgBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithCallbackFunctionAndOptionalArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackAndOptionalArgBody):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArgBody):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod1Body):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod2Body):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod3Body):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod3Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod4Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod7Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod8Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod9Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod10Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod11Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod12Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod13Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameterOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithDistinguishingUnion1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithDistinguishingUnion2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithDistinguishingUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithDistinguishingUnion):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWith2DistinguishingUnions1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWith2DistinguishingUnions2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWith2DistinguishingUnionsOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWith2DistinguishingUnions):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithNonDistinguishingUnion1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithNonDistinguishingUnion2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithNonDistinguishingUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithNonDistinguishingUnion):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableUnion1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableUnion2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableUnion):
(WebCore::jsTestObjPrototypeFunctionOverloadWithOptionalUnion1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadWithOptionalUnion2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadWithOptionalUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadWithOptionalUnion):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableNonDistinguishingParameter1Body):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableNonDistinguishingParameter2Body):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableNonDistinguishingParameterOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionOverloadWithNullableNonDistinguishingParameter):
(WebCore::jsTestObjConstructorFunctionClassMethodBody):
(WebCore::jsTestObjConstructorFunctionClassMethod):
(WebCore::jsTestObjConstructorFunctionClassMethodWithOptionalBody):
(WebCore::jsTestObjConstructorFunctionClassMethodWithOptional):
(WebCore::jsTestObjConstructorFunctionClassMethod2Body):
(WebCore::jsTestObjConstructorFunctionClassMethod2):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod11Body):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod12Body):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod1OverloadDispatcher):
(WebCore::jsTestObjConstructorFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClampBody):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClampOnOptionalBody):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithClampOnOptional):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRangeBody):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRange):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRangeOnOptionalBody):
(WebCore::jsTestObjPrototypeFunctionClassMethodWithEnforceRangeOnOptional):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequenceBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunctionBody):
(WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunctionBody):
(WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
(WebCore::jsTestObjPrototypeFunctionOperationWithOptionalUnionParameterBody):
(WebCore::jsTestObjPrototypeFunctionOperationWithOptionalUnionParameter):
(WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequenceBody):
(WebCore::jsTestObjPrototypeFunctionMethodWithAndWithoutNullableSequence):
(WebCore::jsTestObjPrototypeFunctionGetElementByIdBody):
(WebCore::jsTestObjPrototypeFunctionGetElementById):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocumentBody):
(WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
(WebCore::jsTestObjPrototypeFunctionConvert1Body):
(WebCore::jsTestObjPrototypeFunctionConvert1):
(WebCore::jsTestObjPrototypeFunctionConvert2Body):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionConvert3Body):
(WebCore::jsTestObjPrototypeFunctionConvert3):
(WebCore::jsTestObjPrototypeFunctionConvert4Body):
(WebCore::jsTestObjPrototypeFunctionConvert4):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunctionBody):
(WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
(WebCore::jsTestObjPrototypeFunctionOrangeBody):
(WebCore::jsTestObjPrototypeFunctionOrange):
(WebCore::jsTestObjPrototypeFunctionVariadicStringMethodBody):
(WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethodBody):
(WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicNodeMethodBody):
(WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
(WebCore::jsTestObjPrototypeFunctionVariadicUnionMethodBody):
(WebCore::jsTestObjPrototypeFunctionVariadicUnionMethod):
(WebCore::jsTestObjPrototypeFunctionAnyBody):
(WebCore::jsTestObjPrototypeFunctionAny):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionBody):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunction):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgumentBody):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithFloatArgument):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithExceptionBody):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithException):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgumentBody):
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunctionWithOptionalIntArgument):
(WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction1Body):
(WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction2Body):
(WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunctionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionTestPromiseOverloadedFunction):
(WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionBody):
(WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunction):
(WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithExceptionBody):
(WebCore::jsTestObjConstructorFunctionTestStaticPromiseFunctionWithException):
(WebCore::jsTestObjPrototypeFunctionTestCustomPromiseFunctionBody):
(WebCore::jsTestObjPrototypeFunctionTestCustomPromiseFunction):
(WebCore::jsTestObjConstructorFunctionTestStaticCustomPromiseFunctionBody):
(WebCore::jsTestObjConstructorFunctionTestStaticCustomPromiseFunction):
(WebCore::jsTestObjPrototypeFunctionTestCustomReturnsOwnPromiseFunctionBody):
(WebCore::jsTestObjPrototypeFunctionTestCustomReturnsOwnPromiseFunction):
(WebCore::jsTestObjPrototypeFunctionTestReturnsOwnPromiseAndPromiseProxyFunctionBody):
(WebCore::jsTestObjPrototypeFunctionTestReturnsOwnPromiseAndPromiseProxyFunction):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload1Body):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload2Body):
(WebCore::jsTestObjPrototypeFunctionConditionalOverloadOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionConditionalOverload):
(WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload1Body):
(WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload2Body):
(WebCore::jsTestObjPrototypeFunctionSingleConditionalOverloadOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunctionSingleConditionalOverload):
(WebCore::jsTestObjPrototypeFunctionAttachShadowRootBody):
(WebCore::jsTestObjPrototypeFunctionAttachShadowRoot):
(WebCore::jsTestObjPrototypeFunctionOperationWithExternalDictionaryParameterBody):
(WebCore::jsTestObjPrototypeFunctionOperationWithExternalDictionaryParameter):
(WebCore::jsTestObjPrototypeFunctionBufferSourceParameterBody):
(WebCore::jsTestObjPrototypeFunctionBufferSourceParameter):
(WebCore::jsTestObjPrototypeFunctionLegacyCallerNamedBody):
(WebCore::jsTestObjPrototypeFunctionLegacyCallerNamed):
(WebCore::jsTestObjPrototypeFunctionTestReturnValueOptimizationBody):
(WebCore::jsTestObjPrototypeFunctionTestReturnValueOptimization):
(WebCore::jsTestObjPrototypeFunctionTestReturnValueOptimizationWithExceptionBody):
(WebCore::jsTestObjPrototypeFunctionTestReturnValueOptimizationWithException):
(WebCore::jsTestObjPrototypeFunctionConditionallyExposedToWindowFunctionBody):
(WebCore::jsTestObjPrototypeFunctionConditionallyExposedToWindowFunction):
(WebCore::jsTestObjPrototypeFunctionConditionallyExposedToWorkerFunctionBody):
(WebCore::jsTestObjPrototypeFunctionConditionallyExposedToWorkerFunction):
(WebCore::jsTestObjPrototypeFunctionConditionallyExposedToWindowAndWorkerFunctionBody):
(WebCore::jsTestObjPrototypeFunctionConditionallyExposedToWindowAndWorkerFunction):
(WebCore::jsTestObjPrototypeFunctionToStringBody):
(WebCore::jsTestObjPrototypeFunctionToString):
(WebCore::JSTestObj::serialize):
(WebCore::jsTestObjPrototypeFunctionToJSONBody):
(WebCore::jsTestObjPrototypeFunctionToJSON):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestObj.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::constructJSTestOverloadedConstructors1):
(WebCore::constructJSTestOverloadedConstructors2):
(WebCore::constructJSTestOverloadedConstructors3):
(WebCore::constructJSTestOverloadedConstructors4):
(WebCore::constructJSTestOverloadedConstructors5):
(WebCore::JSTestOverloadedConstructorsConstructor::construct):
(WebCore::jsTestOverloadedConstructorsConstructor):
(WebCore::setJSTestOverloadedConstructorsConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:

(WebCore::constructJSTestOverloadedConstructorsWithSequence1):
(WebCore::constructJSTestOverloadedConstructorsWithSequence2):
(WebCore::JSTestOverloadedConstructorsWithSequenceConstructor::construct):
(WebCore::jsTestOverloadedConstructorsWithSequenceConstructor):
(WebCore::setJSTestOverloadedConstructorsWithSequenceConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:

(WebCore::JSTestOverrideBuiltins::getOwnPropertySlot):
(WebCore::JSTestOverrideBuiltins::getOwnPropertySlotByIndex):
(WebCore::JSTestOverrideBuiltins::getOwnPropertyNames):
(WebCore::IDLOperation<JSTestOverrideBuiltins>::cast):
(WebCore::jsTestOverrideBuiltinsConstructor):
(WebCore::setJSTestOverrideBuiltinsConstructor):
(WebCore::jsTestOverrideBuiltinsPrototypeFunctionNamedItemBody):
(WebCore::jsTestOverrideBuiltinsPrototypeFunctionNamedItem):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestOverrideBuiltins.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestPluginInterface.cpp:

(WebCore::JSTestPluginInterface::getOwnPropertySlot):
(WebCore::JSTestPluginInterface::getOwnPropertySlotByIndex):
(WebCore::JSTestPluginInterface::put):
(WebCore::JSTestPluginInterface::putByIndex):
(WebCore::jsTestPluginInterfaceConstructor):
(WebCore::setJSTestPluginInterfaceConstructor):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestPluginInterface.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:

(WebCore::convertDictionary<TestPromiseRejectionEvent::Init>):
(WebCore::JSTestPromiseRejectionEventConstructor::construct):
(WebCore::IDLAttribute<JSTestPromiseRejectionEvent>::cast):
(WebCore::jsTestPromiseRejectionEventConstructor):
(WebCore::setJSTestPromiseRejectionEventConstructor):
(WebCore::jsTestPromiseRejectionEventPromiseGetter):
(WebCore::jsTestPromiseRejectionEventPromise):
(WebCore::jsTestPromiseRejectionEventReasonGetter):
(WebCore::jsTestPromiseRejectionEventReason):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestPromiseRejectionEvent.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestSerialization.cpp:

(WebCore::IDLAttribute<JSTestSerialization>::cast):
(WebCore::IDLOperation<JSTestSerialization>::cast):
(WebCore::jsTestSerializationConstructor):
(WebCore::setJSTestSerializationConstructor):
(WebCore::jsTestSerializationFirstStringAttributeGetter):
(WebCore::jsTestSerializationFirstStringAttribute):
(WebCore::setJSTestSerializationFirstStringAttributeSetter):
(WebCore::setJSTestSerializationFirstStringAttribute):
(WebCore::jsTestSerializationSecondLongAttributeGetter):
(WebCore::jsTestSerializationSecondLongAttribute):
(WebCore::setJSTestSerializationSecondLongAttributeSetter):
(WebCore::setJSTestSerializationSecondLongAttribute):
(WebCore::jsTestSerializationThirdUnserializableAttributeGetter):
(WebCore::jsTestSerializationThirdUnserializableAttribute):
(WebCore::setJSTestSerializationThirdUnserializableAttributeSetter):
(WebCore::setJSTestSerializationThirdUnserializableAttribute):
(WebCore::jsTestSerializationFourthUnrestrictedDoubleAttributeGetter):
(WebCore::jsTestSerializationFourthUnrestrictedDoubleAttribute):
(WebCore::setJSTestSerializationFourthUnrestrictedDoubleAttributeSetter):
(WebCore::setJSTestSerializationFourthUnrestrictedDoubleAttribute):
(WebCore::jsTestSerializationFifthLongAttributeGetter):
(WebCore::jsTestSerializationFifthLongAttribute):
(WebCore::setJSTestSerializationFifthLongAttributeSetter):
(WebCore::setJSTestSerializationFifthLongAttribute):
(WebCore::jsTestSerializationSixthTypedefAttributeGetter):
(WebCore::jsTestSerializationSixthTypedefAttribute):
(WebCore::setJSTestSerializationSixthTypedefAttributeSetter):
(WebCore::setJSTestSerializationSixthTypedefAttribute):
(WebCore::jsTestSerializationSeventhDirectlySerializableAttributeGetter):
(WebCore::jsTestSerializationSeventhDirectlySerializableAttribute):
(WebCore::setJSTestSerializationSeventhDirectlySerializableAttributeSetter):
(WebCore::setJSTestSerializationSeventhDirectlySerializableAttribute):
(WebCore::jsTestSerializationEighthIndirectlyAttributeGetter):
(WebCore::jsTestSerializationEighthIndirectlyAttribute):
(WebCore::setJSTestSerializationEighthIndirectlyAttributeSetter):
(WebCore::setJSTestSerializationEighthIndirectlyAttribute):
(WebCore::jsTestSerializationNinthOptionalDirectlySerializableAttributeGetter):
(WebCore::jsTestSerializationNinthOptionalDirectlySerializableAttribute):
(WebCore::setJSTestSerializationNinthOptionalDirectlySerializableAttributeSetter):
(WebCore::setJSTestSerializationNinthOptionalDirectlySerializableAttribute):
(WebCore::jsTestSerializationTenthFrozenArrayAttributeGetter):
(WebCore::jsTestSerializationTenthFrozenArrayAttribute):
(WebCore::setJSTestSerializationTenthFrozenArrayAttributeSetter):
(WebCore::setJSTestSerializationTenthFrozenArrayAttribute):
(WebCore::jsTestSerializationEleventhSequenceAttributeGetter):
(WebCore::jsTestSerializationEleventhSequenceAttribute):
(WebCore::setJSTestSerializationEleventhSequenceAttributeSetter):
(WebCore::setJSTestSerializationEleventhSequenceAttribute):
(WebCore::jsTestSerializationTwelfthInterfaceSequenceAttributeGetter):
(WebCore::jsTestSerializationTwelfthInterfaceSequenceAttribute):
(WebCore::setJSTestSerializationTwelfthInterfaceSequenceAttributeSetter):
(WebCore::setJSTestSerializationTwelfthInterfaceSequenceAttribute):
(WebCore::JSTestSerialization::serialize):
(WebCore::jsTestSerializationPrototypeFunctionToJSONBody):
(WebCore::jsTestSerializationPrototypeFunctionToJSON):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestSerialization.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestSerializationIndirectInheritance.cpp:

(WebCore::jsTestSerializationIndirectInheritanceConstructor):
(WebCore::setJSTestSerializationIndirectInheritanceConstructor):

  • bindings/scripts/test/JS/JSTestSerializationInherit.cpp:

(WebCore::IDLAttribute<JSTestSerializationInherit>::cast):
(WebCore::IDLOperation<JSTestSerializationInherit>::cast):
(WebCore::jsTestSerializationInheritConstructor):
(WebCore::setJSTestSerializationInheritConstructor):
(WebCore::jsTestSerializationInheritInheritLongAttributeGetter):
(WebCore::jsTestSerializationInheritInheritLongAttribute):
(WebCore::setJSTestSerializationInheritInheritLongAttributeSetter):
(WebCore::setJSTestSerializationInheritInheritLongAttribute):
(WebCore::JSTestSerializationInherit::serialize):
(WebCore::jsTestSerializationInheritPrototypeFunctionToJSONBody):
(WebCore::jsTestSerializationInheritPrototypeFunctionToJSON):

  • bindings/scripts/test/JS/JSTestSerializationInherit.h:
  • bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:

(WebCore::IDLAttribute<JSTestSerializationInheritFinal>::cast):
(WebCore::IDLOperation<JSTestSerializationInheritFinal>::cast):
(WebCore::jsTestSerializationInheritFinalConstructor):
(WebCore::setJSTestSerializationInheritFinalConstructor):
(WebCore::jsTestSerializationInheritFinalFinalLongAttributeFooGetter):
(WebCore::jsTestSerializationInheritFinalFinalLongAttributeFoo):
(WebCore::setJSTestSerializationInheritFinalFinalLongAttributeFooSetter):
(WebCore::setJSTestSerializationInheritFinalFinalLongAttributeFoo):
(WebCore::jsTestSerializationInheritFinalFinalLongAttributeBarGetter):
(WebCore::jsTestSerializationInheritFinalFinalLongAttributeBar):
(WebCore::setJSTestSerializationInheritFinalFinalLongAttributeBarSetter):
(WebCore::setJSTestSerializationInheritFinalFinalLongAttributeBar):
(WebCore::JSTestSerializationInheritFinal::serialize):
(WebCore::jsTestSerializationInheritFinalPrototypeFunctionToJSONBody):
(WebCore::jsTestSerializationInheritFinalPrototypeFunctionToJSON):

  • bindings/scripts/test/JS/JSTestSerializationInheritFinal.h:
  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::IDLAttribute<JSTestSerializedScriptValueInterface>::cast):
(WebCore::IDLOperation<JSTestSerializedScriptValueInterface>::cast):
(WebCore::jsTestSerializedScriptValueInterfaceConstructor):
(WebCore::setJSTestSerializedScriptValueInterfaceConstructor):
(WebCore::jsTestSerializedScriptValueInterfaceValueGetter):
(WebCore::jsTestSerializedScriptValueInterfaceValue):
(WebCore::setJSTestSerializedScriptValueInterfaceValueSetter):
(WebCore::setJSTestSerializedScriptValueInterfaceValue):
(WebCore::jsTestSerializedScriptValueInterfaceReadonlyValueGetter):
(WebCore::jsTestSerializedScriptValueInterfaceReadonlyValue):
(WebCore::jsTestSerializedScriptValueInterfaceCachedValueGetter):
(WebCore::jsTestSerializedScriptValueInterfaceCachedValue):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValueSetter):
(WebCore::setJSTestSerializedScriptValueInterfaceCachedValue):
(WebCore::jsTestSerializedScriptValueInterfacePortsGetter):
(WebCore::jsTestSerializedScriptValueInterfacePorts):
(WebCore::jsTestSerializedScriptValueInterfaceCachedReadonlyValueGetter):
(WebCore::jsTestSerializedScriptValueInterfaceCachedReadonlyValue):
(WebCore::jsTestSerializedScriptValueInterfacePrototypeFunctionFunctionBody):
(WebCore::jsTestSerializedScriptValueInterfacePrototypeFunctionFunction):
(WebCore::jsTestSerializedScriptValueInterfacePrototypeFunctionFunctionReturningBody):
(WebCore::jsTestSerializedScriptValueInterfacePrototypeFunctionFunctionReturning):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStandaloneDictionary.cpp:

(WebCore::convertDictionary<DictionaryImplName>):
(WebCore::convertDictionaryToJS):
(WebCore::convertEnumerationToJS):
(WebCore::parseEnumeration<TestStandaloneDictionary::EnumInStandaloneDictionaryFile>):

  • bindings/scripts/test/JS/JSTestStandaloneDictionary.h:
  • bindings/scripts/test/JS/JSTestStandaloneEnumeration.cpp:

(WebCore::convertEnumerationToJS):
(WebCore::parseEnumeration<TestStandaloneEnumeration>):

  • bindings/scripts/test/JS/JSTestStandaloneEnumeration.h:
  • bindings/scripts/test/JS/JSTestStringifier.cpp:

(WebCore::IDLOperation<JSTestStringifier>::cast):
(WebCore::jsTestStringifierConstructor):
(WebCore::setJSTestStringifierConstructor):
(WebCore::jsTestStringifierPrototypeFunctionToStringBody):
(WebCore::jsTestStringifierPrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifier.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:

(WebCore::IDLOperation<JSTestStringifierAnonymousOperation>::cast):
(WebCore::jsTestStringifierAnonymousOperationConstructor):
(WebCore::setJSTestStringifierAnonymousOperationConstructor):
(WebCore::jsTestStringifierAnonymousOperationPrototypeFunctionToStringBody):
(WebCore::jsTestStringifierAnonymousOperationPrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:

(WebCore::IDLOperation<JSTestStringifierNamedOperation>::cast):
(WebCore::jsTestStringifierNamedOperationConstructor):
(WebCore::setJSTestStringifierNamedOperationConstructor):
(WebCore::jsTestStringifierNamedOperationPrototypeFunctionIdentifierBody):
(WebCore::jsTestStringifierNamedOperationPrototypeFunctionIdentifier):
(WebCore::jsTestStringifierNamedOperationPrototypeFunctionToStringBody):
(WebCore::jsTestStringifierNamedOperationPrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifierNamedOperation.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:

(WebCore::IDLOperation<JSTestStringifierOperationImplementedAs>::cast):
(WebCore::jsTestStringifierOperationImplementedAsConstructor):
(WebCore::setJSTestStringifierOperationImplementedAsConstructor):
(WebCore::jsTestStringifierOperationImplementedAsPrototypeFunctionIdentifierBody):
(WebCore::jsTestStringifierOperationImplementedAsPrototypeFunctionIdentifier):
(WebCore::jsTestStringifierOperationImplementedAsPrototypeFunctionToStringBody):
(WebCore::jsTestStringifierOperationImplementedAsPrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:

(WebCore::IDLOperation<JSTestStringifierOperationNamedToString>::cast):
(WebCore::jsTestStringifierOperationNamedToStringConstructor):
(WebCore::setJSTestStringifierOperationNamedToStringConstructor):
(WebCore::jsTestStringifierOperationNamedToStringPrototypeFunctionToStringBody):
(WebCore::jsTestStringifierOperationNamedToStringPrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:

(WebCore::IDLAttribute<JSTestStringifierReadOnlyAttribute>::cast):
(WebCore::IDLOperation<JSTestStringifierReadOnlyAttribute>::cast):
(WebCore::jsTestStringifierReadOnlyAttributeConstructor):
(WebCore::setJSTestStringifierReadOnlyAttributeConstructor):
(WebCore::jsTestStringifierReadOnlyAttributeIdentifierGetter):
(WebCore::jsTestStringifierReadOnlyAttributeIdentifier):
(WebCore::jsTestStringifierReadOnlyAttributePrototypeFunctionToStringBody):
(WebCore::jsTestStringifierReadOnlyAttributePrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:

(WebCore::IDLAttribute<JSTestStringifierReadWriteAttribute>::cast):
(WebCore::IDLOperation<JSTestStringifierReadWriteAttribute>::cast):
(WebCore::jsTestStringifierReadWriteAttributeConstructor):
(WebCore::setJSTestStringifierReadWriteAttributeConstructor):
(WebCore::jsTestStringifierReadWriteAttributeIdentifierGetter):
(WebCore::jsTestStringifierReadWriteAttributeIdentifier):
(WebCore::setJSTestStringifierReadWriteAttributeIdentifierSetter):
(WebCore::setJSTestStringifierReadWriteAttributeIdentifier):
(WebCore::jsTestStringifierReadWriteAttributePrototypeFunctionToStringBody):
(WebCore::jsTestStringifierReadWriteAttributePrototypeFunctionToString):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsConstructor::construct):
(WebCore::IDLAttribute<JSTestTypedefs>::cast):
(WebCore::IDLOperation<JSTestTypedefs>::cast):
(WebCore::jsTestTypedefsConstructor):
(WebCore::setJSTestTypedefsConstructor):
(WebCore::jsTestTypedefsUnsignedLongLongAttrGetter):
(WebCore::jsTestTypedefsUnsignedLongLongAttr):
(WebCore::setJSTestTypedefsUnsignedLongLongAttrSetter):
(WebCore::setJSTestTypedefsUnsignedLongLongAttr):
(WebCore::jsTestTypedefsSerializedScriptValueGetter):
(WebCore::jsTestTypedefsSerializedScriptValue):
(WebCore::setJSTestTypedefsSerializedScriptValueSetter):
(WebCore::setJSTestTypedefsSerializedScriptValue):
(WebCore::jsTestTypedefsConstructorTestSubObjGetter):
(WebCore::jsTestTypedefsConstructorTestSubObj):
(WebCore::jsTestTypedefsAttributeWithClampGetter):
(WebCore::jsTestTypedefsAttributeWithClamp):
(WebCore::setJSTestTypedefsAttributeWithClampSetter):
(WebCore::setJSTestTypedefsAttributeWithClamp):
(WebCore::jsTestTypedefsAttributeWithClampInTypedefGetter):
(WebCore::jsTestTypedefsAttributeWithClampInTypedef):
(WebCore::setJSTestTypedefsAttributeWithClampInTypedefSetter):
(WebCore::setJSTestTypedefsAttributeWithClampInTypedef):
(WebCore::jsTestTypedefsBufferSourceAttrGetter):
(WebCore::jsTestTypedefsBufferSourceAttr):
(WebCore::setJSTestTypedefsBufferSourceAttrSetter):
(WebCore::setJSTestTypedefsBufferSourceAttr):
(WebCore::jsTestTypedefsDomTimeStampAttrGetter):
(WebCore::jsTestTypedefsDomTimeStampAttr):
(WebCore::setJSTestTypedefsDomTimeStampAttrSetter):
(WebCore::setJSTestTypedefsDomTimeStampAttr):
(WebCore::jsTestTypedefsPrototypeFunctionFuncBody):
(WebCore::jsTestTypedefsPrototypeFunctionFunc):
(WebCore::jsTestTypedefsPrototypeFunctionSetShadowBody):
(WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArgBody):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceArgBody):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceArg):
(WebCore::jsTestTypedefsPrototypeFunctionSequenceOfNullablesArgBody):
(WebCore::jsTestTypedefsPrototypeFunctionSequenceOfNullablesArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceOfNullablesArgBody):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceOfNullablesArg):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceOfUnionsArgBody):
(WebCore::jsTestTypedefsPrototypeFunctionNullableSequenceOfUnionsArg):
(WebCore::jsTestTypedefsPrototypeFunctionUnionArgBody):
(WebCore::jsTestTypedefsPrototypeFunctionUnionArg):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClampBody):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClampInTypedefBody):
(WebCore::jsTestTypedefsPrototypeFunctionFuncWithClampInTypedef):
(WebCore::jsTestTypedefsPrototypeFunctionPointFunctionBody):
(WebCore::jsTestTypedefsPrototypeFunctionPointFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunctionBody):
(WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction):
(WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction2Body):
(WebCore::jsTestTypedefsPrototypeFunctionStringSequenceFunction2):
(WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresIncludeBody):
(WebCore::jsTestTypedefsPrototypeFunctionCallWithSequenceThatRequiresInclude):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithExceptionBody):
(WebCore::jsTestTypedefsPrototypeFunctionMethodWithException):
(WebCore::toJSNewlyCreated):
(WebCore::toJS):

  • bindings/scripts/test/JS/JSTestTypedefs.h:

(WebCore::toJS):
(WebCore::toJSNewlyCreated):

  • bindings/scripts/test/JS/JSTestVoidCallbackFunction.cpp:

(WebCore::JSTestVoidCallbackFunction::handleEvent):

  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/TestPromiseRejectionEvent.idl:
  • bridge/NP_jsobject.cpp:

(JSC::getListFromVariantArgs):

  • bridge/c/c_instance.cpp:

(JSC::Bindings::CInstance::moveGlobalExceptionToExecState):
(JSC::Bindings::CInstance::newRuntimeObject):
(JSC::Bindings::CRuntimeMethod::create):
(JSC::Bindings::CInstance::getMethod):
(JSC::Bindings::CInstance::invokeMethod):
(JSC::Bindings::CInstance::invokeDefaultMethod):
(JSC::Bindings::CInstance::invokeConstruct):
(JSC::Bindings::CInstance::defaultValue const):
(JSC::Bindings::CInstance::stringValue const):
(JSC::Bindings::CInstance::numberValue const):
(JSC::Bindings::CInstance::valueOf const):
(JSC::Bindings::CInstance::toJSPrimitive const):
(JSC::Bindings::CInstance::getPropertyNames):

  • bridge/c/c_instance.h:
  • bridge/c/c_runtime.cpp:

(JSC::Bindings::CField::valueFromInstance const):
(JSC::Bindings::CField::setValueToInstance const):

  • bridge/c/c_runtime.h:
  • bridge/c/c_utility.cpp:

(JSC::Bindings::convertValueToNPVariant):
(JSC::Bindings::convertNPVariantToValue):
(JSC::Bindings::identifierFromNPIdentifier):

  • bridge/c/c_utility.h:
  • bridge/jsc/BridgeJSC.cpp:

(JSC::Bindings::Instance::createRuntimeObject):
(JSC::Bindings::Instance::newRuntimeObject):

  • bridge/jsc/BridgeJSC.h:

(JSC::Bindings::Class::fallbackObject):
(JSC::Bindings::Instance::setValueOfUndefinedField):
(JSC::Bindings::Instance::invokeDefaultMethod):
(JSC::Bindings::Instance::invokeConstruct):
(JSC::Bindings::Instance::getPropertyNames):
(JSC::Bindings::Instance::getOwnPropertySlot):
(JSC::Bindings::Instance::put):

  • bridge/objc/WebScriptObject.mm:

(WebCore::addExceptionToConsole):
(-[WebScriptObject _isSafeScript]):
(-[WebScriptObject _globalContextRef]):
(getListFromNSArray):
(-[WebScriptObject callWebScriptMethod:withArguments:]):
(-[WebScriptObject evaluateWebScript:]):
(-[WebScriptObject setValue:forKey:]):
(-[WebScriptObject valueForKey:]):
(-[WebScriptObject removeWebScriptKey:]):
(-[WebScriptObject hasWebScriptKey:]):
(-[WebScriptObject stringRepresentation]):
(-[WebScriptObject webScriptValueAtIndex:]):
(-[WebScriptObject setWebScriptValueAtIndex:value:]):
(-[WebScriptObject JSObject]):
(+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):

  • bridge/objc/objc_class.h:
  • bridge/objc/objc_class.mm:

(JSC::Bindings::ObjcClass::fallbackObject):

  • bridge/objc/objc_instance.h:
  • bridge/objc/objc_instance.mm:

(ObjcInstance::newRuntimeObject):
(ObjcInstance::moveGlobalExceptionToExecState):
(ObjCRuntimeMethod::create):
(ObjcInstance::invokeMethod):
(ObjcInstance::invokeObjcMethod):
(ObjcInstance::invokeDefaultMethod):
(ObjcInstance::setValueOfUndefinedField):
(ObjcInstance::getValueOfUndefinedField const):
(ObjcInstance::defaultValue const):
(ObjcInstance::stringValue const):
(ObjcInstance::numberValue const):
(ObjcInstance::valueOf const):

  • bridge/objc/objc_runtime.h:

(JSC::Bindings::ObjcFallbackObjectImp::create):

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::ObjcField::valueFromInstance const):
(JSC::Bindings::convertValueToObjcObject):
(JSC::Bindings::ObjcField::setValueToInstance const):
(JSC::Bindings::ObjcArray::setValueAt const):
(JSC::Bindings::ObjcArray::valueAt const):
(JSC::Bindings::ObjcFallbackObjectImp::getOwnPropertySlot):
(JSC::Bindings::ObjcFallbackObjectImp::put):
(JSC::Bindings::callObjCFallbackObject):
(JSC::Bindings::ObjcFallbackObjectImp::deleteProperty):
(JSC::Bindings::ObjcFallbackObjectImp::defaultValue):
(JSC::Bindings::ObjcFallbackObjectImp::toBoolean const):

  • bridge/objc/objc_utility.h:
  • bridge/objc/objc_utility.mm:

(JSC::Bindings::convertValueToObjcValue):
(JSC::Bindings::convertNSStringToString):
(JSC::Bindings::convertObjcValueToValue):
(JSC::Bindings::throwError):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::RuntimeArray):
(JSC::RuntimeArray::lengthGetter):
(JSC::RuntimeArray::getOwnPropertyNames):
(JSC::RuntimeArray::getOwnPropertySlot):
(JSC::RuntimeArray::getOwnPropertySlotByIndex):
(JSC::RuntimeArray::put):
(JSC::RuntimeArray::putByIndex):
(JSC::RuntimeArray::deleteProperty):
(JSC::RuntimeArray::deletePropertyByIndex):

  • bridge/runtime_array.h:

(JSC::RuntimeArray::create):

  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::lengthGetter):
(JSC::RuntimeMethod::getOwnPropertySlot):
(JSC::callRuntimeMethod):

  • bridge/runtime_method.h:
  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::fallbackObjectGetter):
(JSC::Bindings::RuntimeObject::fieldGetter):
(JSC::Bindings::RuntimeObject::methodGetter):
(JSC::Bindings::RuntimeObject::getOwnPropertySlot):
(JSC::Bindings::RuntimeObject::put):
(JSC::Bindings::RuntimeObject::deleteProperty):
(JSC::Bindings::RuntimeObject::defaultValue):
(JSC::Bindings::callRuntimeObject):
(JSC::Bindings::callRuntimeConstructor):
(JSC::Bindings::RuntimeObject::getOwnPropertyNames):
(JSC::Bindings::RuntimeObject::throwInvalidAccessError):

  • bridge/runtime_object.h:
  • bridge/testbindings.cpp:

(main):

  • bridge/testbindings.mm:

(main):

  • contentextensions/ContentExtensionParser.cpp:

(WebCore::ContentExtensions::getStringList):
(WebCore::ContentExtensions::getDomainList):
(WebCore::ContentExtensions::getTypeFlags):
(WebCore::ContentExtensions::loadTrigger):
(WebCore::ContentExtensions::loadAction):
(WebCore::ContentExtensions::loadRule):
(WebCore::ContentExtensions::loadEncodedRules):
(WebCore::ContentExtensions::parseRuleList):

  • crypto/SubtleCrypto.cpp:

(WebCore::toHashIdentifier):
(WebCore::normalizeCryptoAlgorithmParameters):
(WebCore::SubtleCrypto::encrypt):
(WebCore::SubtleCrypto::decrypt):
(WebCore::SubtleCrypto::sign):
(WebCore::SubtleCrypto::verify):
(WebCore::SubtleCrypto::digest):
(WebCore::SubtleCrypto::generateKey):
(WebCore::SubtleCrypto::deriveKey):
(WebCore::SubtleCrypto::deriveBits):
(WebCore::SubtleCrypto::importKey):
(WebCore::SubtleCrypto::wrapKey):
(WebCore::SubtleCrypto::unwrapKey):

  • crypto/SubtleCrypto.h:
  • crypto/SubtleCrypto.idl:
  • css/CSSFontFace.h:
  • dom/CustomElementReactionQueue.cpp:

(WebCore::CustomElementReactionQueue::ElementQueue::processQueue):
(WebCore::CustomElementReactionStack::processQueue):

  • dom/CustomElementReactionQueue.h:

(WebCore::CustomElementReactionStack::CustomElementReactionStack):

  • dom/Document.cpp:

(WebCore::Document::shouldBypassMainWorldContentSecurityPolicy const):
(WebCore::Document::addMessage):

  • dom/Document.h:
  • dom/Element.cpp:

(WebCore::Element::shadowRootForBindings const):
(WebCore::Element::animate):

  • dom/Element.h:
  • dom/Element.idl:
  • dom/ErrorEvent.cpp:

(WebCore::ErrorEvent::error):
(WebCore::ErrorEvent::trySerializeError):

  • dom/ErrorEvent.h:
  • dom/ErrorEvent.idl:
  • dom/MessagePort.cpp:

(WebCore::MessagePort::postMessage):

  • dom/MessagePort.h:
  • dom/MessagePort.idl:
  • dom/MouseEvent.cpp:

(WebCore::MouseEvent::initMouseEventQuirk):

  • dom/MouseEvent.h:
  • dom/MouseEvent.idl:
  • dom/PopStateEvent.cpp:

(WebCore::PopStateEvent::trySerializeState):

  • dom/PopStateEvent.h:
  • dom/RejectedPromiseTracker.cpp:

(WebCore::createScriptCallStackFromReason):
(WebCore::RejectedPromiseTracker::promiseRejected):
(WebCore::RejectedPromiseTracker::promiseHandled):
(WebCore::RejectedPromiseTracker::reportUnhandledRejections):

  • dom/RejectedPromiseTracker.h:
  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::reportUnhandledPromiseRejection):
(WebCore::ScriptExecutionContext::addConsoleMessage):
(WebCore::ScriptExecutionContext::execState):

  • dom/ScriptExecutionContext.h:
  • dom/make_event_factory.pl:

(generateImplementation):

  • domjit/DOMJITHelpers.h:

(WebCore::DOMJIT::toWrapperSlow):

  • domjit/DOMJITIDLConvert.h:

(WebCore::DOMJIT::DirectConverter<IDLDOMString>::directConvert):
(WebCore::DOMJIT::DirectConverter<IDLAtomStringAdaptor<IDLDOMString>>::directConvert):
(WebCore::DOMJIT::DirectConverter<IDLRequiresExistingAtomStringAdaptor<IDLDOMString>>::directConvert):

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::getContext):

  • html/HTMLCanvasElement.h:
  • html/HTMLCanvasElement.idl:
  • html/HTMLFrameElement.idl:
  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::setLocation):

  • html/HTMLFrameElementBase.h:
  • html/HTMLMediaElement.cpp:

(WebCore::controllerJSValue):
(WebCore::HTMLMediaElement::setupAndCallJS):
(WebCore::HTMLMediaElement::updateCaptionContainer):
(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
(WebCore::HTMLMediaElement::setControllerJSProperty):
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):
(WebCore::HTMLMediaElement::updateMediaControlsAfterPresentationModeChange):
(WebCore::HTMLMediaElement::getCurrentMediaControlsStatus):

  • html/HTMLMediaElement.h:
  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):

  • html/OffscreenCanvas.cpp:

(WebCore::OffscreenCanvas::getContext):

  • html/OffscreenCanvas.h:
  • html/OffscreenCanvas.idl:
  • html/canvas/WebGLAny.h:
  • html/track/DataCue.cpp:

(WebCore::DataCue::value const):
(WebCore::DataCue::setValue):

  • html/track/DataCue.h:
  • html/track/DataCue.idl:
  • inspector/CommandLineAPIHost.cpp:

(WebCore::CommandLineAPIHost::inspect):
(WebCore::CommandLineAPIHost::getEventListeners):
(WebCore::CommandLineAPIHost::InspectableObject::get):
(WebCore::CommandLineAPIHost::inspectedObject):
(WebCore::CommandLineAPIHost::wrapper):

  • inspector/CommandLineAPIHost.h:
  • inspector/CommandLineAPIHost.idl:
  • inspector/CommandLineAPIModule.cpp:

(WebCore::CommandLineAPIModule::host const):

  • inspector/CommandLineAPIModule.h:
  • inspector/InspectorCanvas.cpp:

(WebCore::InspectorCanvas::resolveContext const):

  • inspector/InspectorCanvas.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::canAccessInspectedScriptState const):

  • inspector/InspectorController.h:
  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::addSelfToGlobalObjectInWorld):
(WebCore::InspectorFrontendHost::showContextMenu):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didPostMessageImpl):
(WebCore::InspectorInstrumentation::consoleCountImpl):
(WebCore::InspectorInstrumentation::consoleCountResetImpl):
(WebCore::InspectorInstrumentation::startConsoleTimingImpl):
(WebCore::InspectorInstrumentation::logConsoleTimingImpl):
(WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
(WebCore::InspectorInstrumentation::startProfilingImpl):
(WebCore::InspectorInstrumentation::stopProfilingImpl):
(WebCore::InspectorInstrumentation::consoleStartRecordingCanvasImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didPostMessage):
(WebCore::InspectorInstrumentation::consoleCount):
(WebCore::InspectorInstrumentation::consoleCountReset):
(WebCore::InspectorInstrumentation::startConsoleTiming):
(WebCore::InspectorInstrumentation::logConsoleTiming):
(WebCore::InspectorInstrumentation::stopConsoleTiming):
(WebCore::InspectorInstrumentation::startProfiling):
(WebCore::InspectorInstrumentation::stopProfiling):
(WebCore::InspectorInstrumentation::consoleStartRecordingCanvas):

  • inspector/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::isContentScript const):
(WebCore::PageScriptDebugServer::reportException const):

  • inspector/PageScriptDebugServer.h:
  • inspector/WebInjectedScriptHost.cpp:

(WebCore::WebInjectedScriptHost::subtype):
(WebCore::constructInternalProperty):
(WebCore::objectForPaymentOptions):
(WebCore::objectForPaymentCurrencyAmount):
(WebCore::objectForPaymentItem):
(WebCore::objectForPaymentShippingOption):
(WebCore::objectForPaymentDetailsModifier):
(WebCore::objectForPaymentDetails):
(WebCore::WebInjectedScriptHost::getInternalProperties):

  • inspector/WebInjectedScriptHost.h:
  • inspector/WebInjectedScriptManager.cpp:

(WebCore::WebInjectedScriptManager::discardInjectedScriptsFor):

  • inspector/WorkerInspectorController.h:
  • inspector/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::reportException const):

  • inspector/WorkerScriptDebugServer.h:
  • inspector/agents/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::consoleStartRecordingCanvas):

  • inspector/agents/InspectorCanvasAgent.h:
  • inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::focusNode):
(WebCore::InspectorDOMAgent::buildObjectForEventListener):
(WebCore::InspectorDOMAgent::nodeAsScriptValue):

  • inspector/agents/InspectorDOMAgent.h:
  • inspector/agents/InspectorIndexedDBAgent.cpp:
  • inspector/agents/InspectorNetworkAgent.cpp:

(WebCore::webSocketAsScriptValue):

  • inspector/agents/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::startFromConsole):
(WebCore::InspectorTimelineAgent::stopFromConsole):
(WebCore::InspectorTimelineAgent::breakpointActionProbe):

  • inspector/agents/InspectorTimelineAgent.h:
  • inspector/agents/WebConsoleAgent.cpp:

(WebCore::WebConsoleAgent::frameWindowDiscarded):

  • inspector/agents/WebDebuggerAgent.cpp:

(WebCore::WebDebuggerAgent::didAddEventListener):
(WebCore::WebDebuggerAgent::didPostMessage):

  • inspector/agents/WebDebuggerAgent.h:
  • inspector/agents/page/PageAuditAgent.cpp:

(WebCore::PageAuditAgent::injectedScriptForEval):
(WebCore::PageAuditAgent::populateAuditObject):

  • inspector/agents/page/PageAuditAgent.h:
  • inspector/agents/page/PageDebuggerAgent.cpp:

(WebCore::PageDebuggerAgent::breakpointActionLog):
(WebCore::PageDebuggerAgent::injectedScriptForEval):
(WebCore::PageDebuggerAgent::didRequestAnimationFrame):

  • inspector/agents/page/PageDebuggerAgent.h:
  • inspector/agents/page/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::injectedScriptForEval):
(WebCore::PageRuntimeAgent::reportExecutionContextCreation):
(WebCore::PageRuntimeAgent::notifyContextCreated):

  • inspector/agents/page/PageRuntimeAgent.h:
  • inspector/agents/worker/WorkerAuditAgent.cpp:

(WebCore::WorkerAuditAgent::injectedScriptForEval):

  • inspector/agents/worker/WorkerDebuggerAgent.cpp:

(WebCore::WorkerDebuggerAgent::breakpointActionLog):
(WebCore::WorkerDebuggerAgent::injectedScriptForEval):

  • inspector/agents/worker/WorkerDebuggerAgent.h:
  • inspector/agents/worker/WorkerRuntimeAgent.cpp:

(WebCore::WorkerRuntimeAgent::injectedScriptForEval):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::postMessage):
(WebCore::DOMWindow::setTimeout):
(WebCore::DOMWindow::setInterval):

  • page/DOMWindow.h:
  • page/DOMWindow.idl:
  • page/PageConsoleClient.cpp:

(WebCore::PageConsoleClient::addMessage):
(WebCore::PageConsoleClient::messageWithTypeAndLevel):
(WebCore::PageConsoleClient::count):
(WebCore::PageConsoleClient::countReset):
(WebCore::PageConsoleClient::profile):
(WebCore::PageConsoleClient::profileEnd):
(WebCore::PageConsoleClient::takeHeapSnapshot):
(WebCore::PageConsoleClient::time):
(WebCore::PageConsoleClient::timeLog):
(WebCore::PageConsoleClient::timeEnd):
(WebCore::PageConsoleClient::timeStamp):
(WebCore::PageConsoleClient::record):
(WebCore::PageConsoleClient::recordEnd):
(WebCore::PageConsoleClient::screenshot):

  • page/PageConsoleClient.h:
  • page/RemoteDOMWindow.cpp:

(WebCore::RemoteDOMWindow::postMessage):

  • page/RemoteDOMWindow.h:
  • page/RemoteDOMWindow.idl:
  • page/WindowOrWorkerGlobalScope.idl:
  • page/csp/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::allowEval const):
(WebCore::ContentSecurityPolicy::reportViolation const):
(WebCore::ContentSecurityPolicy::logToConsole const):

  • page/csp/ContentSecurityPolicy.h:
  • platform/SerializedPlatformRepresentation.h:
  • platform/ThreadGlobalData.h:

(WebCore::ThreadGlobalData::ThreadGlobalData::currentState const):
(WebCore::ThreadGlobalData::ThreadGlobalData::setCurrentState):

  • platform/graphics/CustomPaintImage.cpp:

(WebCore::CustomPaintImage::doCustomPaint):

  • platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
  • platform/mac/SerializedPlatformRepresentationMac.h:
  • platform/mac/SerializedPlatformRepresentationMac.mm:

(WebCore::SerializedPlatformRepresentationMac::deserialize const):
(WebCore::jsValueWithDataInContext):

  • platform/mock/mediasource/MockBox.cpp:
  • plugins/PluginViewBase.h:
  • testing/Internals.cpp:

(WebCore::Internals::parserMetaData):
(WebCore::Internals::isFromCurrentWorld const):
(WebCore::Internals::isReadableStreamDisturbed):
(WebCore::Internals::cloneArrayBuffer):

  • testing/Internals.h:
  • testing/Internals.idl:
  • testing/js/WebCoreTestSupport.cpp:

(WebCoreTestSupport::injectInternalsObject):
(WebCoreTestSupport::resetInternalsObject):

  • workers/DedicatedWorkerGlobalScope.cpp:

(WebCore::DedicatedWorkerGlobalScope::postMessage):

  • workers/DedicatedWorkerGlobalScope.h:
  • workers/DedicatedWorkerGlobalScope.idl:
  • workers/Worker.cpp:

(WebCore::Worker::postMessage):

  • workers/Worker.h:
  • workers/Worker.idl:
  • workers/WorkerConsoleClient.cpp:

(WebCore::WorkerConsoleClient::messageWithTypeAndLevel):
(WebCore::WorkerConsoleClient::count):
(WebCore::WorkerConsoleClient::countReset):
(WebCore::WorkerConsoleClient::time):
(WebCore::WorkerConsoleClient::timeLog):
(WebCore::WorkerConsoleClient::timeEnd):
(WebCore::WorkerConsoleClient::profile):
(WebCore::WorkerConsoleClient::profileEnd):
(WebCore::WorkerConsoleClient::takeHeapSnapshot):
(WebCore::WorkerConsoleClient::timeStamp):
(WebCore::WorkerConsoleClient::record):
(WebCore::WorkerConsoleClient::recordEnd):
(WebCore::WorkerConsoleClient::screenshot):

  • workers/WorkerConsoleClient.h:
  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::setTimeout):
(WebCore::WorkerGlobalScope::setInterval):
(WebCore::WorkerGlobalScope::addMessage):

  • workers/WorkerGlobalScope.h:
  • workers/service/ExtendableEvent.cpp:
  • workers/service/ExtendableMessageEvent.cpp:

(WebCore::ExtendableMessageEvent::ExtendableMessageEvent):

  • workers/service/ExtendableMessageEvent.h:
  • workers/service/FetchEvent.cpp:

(WebCore::FetchEvent::promiseIsSettled):

  • worklets/PaintWorkletGlobalScope.cpp:

(WebCore::PaintWorkletGlobalScope::registerPaint):

  • worklets/PaintWorkletGlobalScope.h:
  • worklets/PaintWorkletGlobalScope.idl:
  • worklets/WorkletConsoleClient.cpp:

(WebCore::WorkletConsoleClient::messageWithTypeAndLevel):
(WebCore::WorkletConsoleClient::count):
(WebCore::WorkletConsoleClient::countReset):
(WebCore::WorkletConsoleClient::time):
(WebCore::WorkletConsoleClient::timeLog):
(WebCore::WorkletConsoleClient::timeEnd):
(WebCore::WorkletConsoleClient::profile):
(WebCore::WorkletConsoleClient::profileEnd):
(WebCore::WorkletConsoleClient::takeHeapSnapshot):
(WebCore::WorkletConsoleClient::timeStamp):
(WebCore::WorkletConsoleClient::record):
(WebCore::WorkletConsoleClient::recordEnd):
(WebCore::WorkletConsoleClient::screenshot):

  • worklets/WorkletConsoleClient.h:
  • worklets/WorkletGlobalScope.cpp:

(WebCore::WorkletGlobalScope::addMessage):

  • worklets/WorkletGlobalScope.h:
  • worklets/WorkletScriptController.cpp:

(WebCore::WorkletScriptController::evaluate):
(WebCore::WorkletScriptController::setException):

Source/WebKit:

  • WebProcess/InjectedBundle/API/glib/WebKitFrame.cpp:

(webkit_frame_get_js_value_for_dom_object_in_script_world):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::reportException):
(WebKit::InjectedBundle::createWebDataFromUint8Array):

  • WebProcess/Plugins/Netscape/JSNPMethod.cpp:

(WebKit::callMethod):

  • WebProcess/Plugins/Netscape/JSNPMethod.h:
  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::JSNPObject::callMethod):
(WebKit::JSNPObject::callObject):
(WebKit::JSNPObject::callConstructor):
(WebKit::callNPJSObject):
(WebKit::constructWithConstructor):
(WebKit::JSNPObject::getOwnPropertySlot):
(WebKit::JSNPObject::put):
(WebKit::JSNPObject::deleteProperty):
(WebKit::JSNPObject::deletePropertyByIndex):
(WebKit::JSNPObject::getOwnPropertyNames):
(WebKit::JSNPObject::propertyGetter):
(WebKit::JSNPObject::methodGetter):
(WebKit::JSNPObject::throwInvalidAccessError):

  • WebProcess/Plugins/Netscape/JSNPObject.h:
  • WebProcess/Plugins/Netscape/NPJSObject.cpp:

(WebKit::identifierFromIdentifierRep):
(WebKit::NPJSObject::hasMethod):
(WebKit::NPJSObject::invoke):
(WebKit::NPJSObject::invokeDefault):
(WebKit::NPJSObject::hasProperty):
(WebKit::NPJSObject::getProperty):
(WebKit::NPJSObject::setProperty):
(WebKit::NPJSObject::removeProperty):
(WebKit::NPJSObject::enumerate):
(WebKit::NPJSObject::construct):

  • WebProcess/Plugins/Netscape/NPJSObject.h:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
(WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
(WebKit::NPRuntimeObjectMap::evaluate):
(WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
(WebKit::NPRuntimeObjectMap::globalExec const): Deleted.

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performJavaScriptURLRequest):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::jsContext):
(WebKit::WebFrame::jsContextForWorld):
(WebKit::WebFrame::frameForContext):
(WebKit::WebFrame::jsWrapperForWorld):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::freezeLayerTree):
(WebKit::WebPage::unfreezeLayerTree):
(WebKit::WebPage::runJavaScript):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::networkProcessConnectionClosed):

Source/WebKitLegacy/mac:

  • DOM/DOMInternal.mm:

(-[WebScriptObject _initializeScriptDOMNodeImp]):

  • DOM/WebDOMOperations.mm:
  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::evaluate):
(WebKit::NetscapePluginInstanceProxy::invoke):
(WebKit::NetscapePluginInstanceProxy::invokeDefault):
(WebKit::NetscapePluginInstanceProxy::construct):
(WebKit::NetscapePluginInstanceProxy::getProperty):
(WebKit::NetscapePluginInstanceProxy::setProperty):
(WebKit::NetscapePluginInstanceProxy::removeProperty):
(WebKit::NetscapePluginInstanceProxy::hasProperty):
(WebKit::NetscapePluginInstanceProxy::hasMethod):
(WebKit::NetscapePluginInstanceProxy::enumerate):
(WebKit::NetscapePluginInstanceProxy::addValueToArray):
(WebKit::NetscapePluginInstanceProxy::marshalValue):
(WebKit::NetscapePluginInstanceProxy::marshalValues):
(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
(WebKit::NetscapePluginInstanceProxy::demarshalValue):
(WebKit::NetscapePluginInstanceProxy::demarshalValues):
(WebKit::NetscapePluginInstanceProxy::moveGlobalExceptionToExecState):

  • Plugins/Hosted/ProxyInstance.h:
  • Plugins/Hosted/ProxyInstance.mm:

(WebKit::ProxyField::valueFromInstance const):
(WebKit::ProxyField::setValueToInstance const):
(WebKit::ProxyInstance::newRuntimeObject):
(WebKit::ProxyInstance::invoke):
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyInstance::getMethod):
(WebKit::ProxyInstance::invokeMethod):
(WebKit::ProxyInstance::invokeDefaultMethod):
(WebKit::ProxyInstance::invokeConstruct):
(WebKit::ProxyInstance::defaultValue const):
(WebKit::ProxyInstance::stringValue const):
(WebKit::ProxyInstance::numberValue const):
(WebKit::ProxyInstance::valueOf const):
(WebKit::ProxyInstance::getPropertyNames):
(WebKit::ProxyInstance::fieldValue const):
(WebKit::ProxyInstance::setFieldValue const):

  • WebView/WebFrame.mm:

(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
(-[WebFrame _globalContextForScriptWorld:]):
(-[WebFrame jsWrapperForNode:inScriptWorld:]):
(-[WebFrame globalContext]):

  • WebView/WebScriptDebugger.h:
  • WebView/WebScriptDebugger.mm:

(WebScriptDebugger::sourceParsed):

  • WebView/WebView.mm:

(+[WebView _reportException:inContext:]):
(aeDescFromJSValue):
(-[WebView aeDescByEvaluatingJavaScriptFromString:]):

Source/WebKitLegacy/win:

  • Plugins/PluginPackage.cpp:

(WebCore::getListFromVariantArgs):
(WebCore::NPN_Evaluate):
(WebCore::NPN_Invoke):

  • Plugins/PluginView.cpp:

(WebCore::PluginView::performRequest):

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):

  • WebFrame.cpp:

(WebFrame::globalContext):
(WebFrame::globalContextForScriptWorld):
(WebFrame::stringByEvaluatingJavaScriptInScriptWorld):

  • WebView.cpp:

(WebView::stringByEvaluatingJavaScriptFromString):
(WebView::reportException):
(WebView::elementFromJS):

Tools:

  • DumpRenderTree/TestRunner.cpp:
1:51 AM Changeset in webkit [251424] by clopez@igalia.com
  • 5 edits in trunk

[GTK][WPE] Enable service workers by default
https://bugs.webkit.org/show_bug.cgi?id=200815

Reviewed by Carlos Garcia Campos.

.:

Flip the build-time switch to be enabled by default and not only
when building with experimental features enabled.

  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsWPE.cmake:

Source/WebKit:

Flip the run-time switch to be enabled by default and not only
when building with experimental features enabled.

  • Shared/WebPreferencesDefaultValues.h:
1:48 AM Changeset in webkit [251423] by Carlos Garcia Campos
  • 11 edits in trunk/Source/WebKit

[GTK] C++ comments used in C header files
https://bugs.webkit.org/show_bug.cgi?id=203191

Reviewed by Žan Doberšek.

  • UIProcess/API/gtk/WebKitAutocleanups.h:
  • UIProcess/API/gtk/WebKitDefines.h:
  • UIProcess/API/gtk/WebKitForwardDeclarations.h:
  • UIProcess/API/gtk/WebKitWebViewBase.h:
  • UIProcess/API/wpe/WebKitAutocleanups.h:
  • UIProcess/API/wpe/WebKitDefines.h:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebEditor.h:
  • WebProcess/InjectedBundle/API/gtk/WebKitWebExtensionAutocleanups.h:
  • WebProcess/InjectedBundle/API/wpe/WebKitWebEditor.h:
  • WebProcess/InjectedBundle/API/wpe/WebKitWebExtensionAutocleanups.h:
1:20 AM Changeset in webkit [251422] by commit-queue@webkit.org
  • 4 edits in trunk

https://bugs.webkit.org/show_bug.cgi?id=169667
URL: protocol setter needs to be more restrictive around file

Patch by Rob Buis <rbuis@igalia.com> on 2019-10-22
Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

Update test result.

  • web-platform-tests/url/url-setters-expected.txt:

Source/WTF:

Restrict setting protocol to "file" as indictaed in the spec [1].

Test: imported/w3c/web-platform-tests/url/url-setters.html

[1] https://url.spec.whatwg.org/#scheme-state steps 2.1.3 and 2.1.4.

  • wtf/URL.cpp:

(WTF::URL::setProtocol):

12:22 AM Changeset in webkit [251421] by Wenson Hsieh
  • 27 edits in trunk/Source

imported/w3c/web-platform-tests/clipboard-apis/async-navigator-clipboard-basics.https.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=203181

Reviewed by Ryosuke Niwa.

Source/WebCore:

This test is flaky because its results currently vary depending on whether content already exists on the
platform pasteboard. In this test, the page is able to read items from the clipboard since DOM paste and
programmatic clipboard access are enabled when running layout tests. However, in the case where the pasteboard
is empty, we end up rejecting the promise due to an early return in Clipboard::read(). In contrast, when the
pasteboard has at least one item, we'll end up resolving the promise with a sequence of ClipboardItems, which
then causes the test to fail because it expects this result to be a DataTransfer instead (which, at time of
writing, is incorrect w.r.t. the async clipboard spec).

To fix this, we remove this early return that rejects the promise when there are no pasteboard items, and
instead allow the promise to resolve with no items. However, simply removing this check would mean that if the
pasteboard change count changes between the start of the call to Clipboard.read() and retrieval of item
information from the platform pasteboard, we'll no longer reject the promimse as expected. This is because we
currently iterate through each of the items and check that the item's change count matches, so if there are no
items, we simply avoid checking the change count.

We address this by instead sending the expected change count along with the request for allPasteboardItemInfo(),
and refactoring the implementation of allPasteboardItemInfo (and informationForItemAtIndex) to instead check
this expected change count against the current change count of the pasteboard.

  • Modules/async-clipboard/Clipboard.cpp:

(WebCore::Clipboard::read):

Remove the allInfo.isEmpty() early return, and also remove a FIXME that is addressed by this refactoring.

  • Modules/async-clipboard/Clipboard.h:
  • platform/Pasteboard.cpp:

(WebCore::Pasteboard::allPasteboardItemInfo const):
(WebCore::Pasteboard::pasteboardItemInfo const):

Make these methods require a changeCount; also, make these return optional results.

  • platform/Pasteboard.h:

(WebCore::Pasteboard::changeCount const):

  • platform/PasteboardItemInfo.h:

(WebCore::PasteboardItemInfo::encode const):
(WebCore::PasteboardItemInfo::decode):

Remove PasteboardItemInfo's changeCount, now that the check occurs in the client layer.

  • platform/PasteboardStrategy.h:
  • platform/PlatformPasteboard.h:
  • platform/cocoa/PasteboardCocoa.mm:

(WebCore::Pasteboard::fileContentState):
(WebCore::Pasteboard::changeCount const):

  • platform/cocoa/PlatformPasteboardCocoa.mm:

(WebCore::PlatformPasteboard::allPasteboardItemInfo):

  • platform/gtk/PlatformPasteboardGtk.cpp:

(WebCore::PlatformPasteboard::write):

  • platform/ios/PasteboardIOS.mm:

(WebCore::changeCountForPasteboard):
(WebCore::Pasteboard::Pasteboard):
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::readRespectingUTIFidelities):
(WebCore::Pasteboard::readPlatformValuesAsStrings):

Normalize changeCount to be a int64_t, which matches iOS and macOS platforms. Before this patch, the notion of
changeCount is very ill-defined, with some call sites expecting long types, other call sites expecting
int, and yet others expecting uint64_t. This changes all of these to expect int64_t.

(WebCore::Pasteboard::readFilePaths):

Refactor these methods to bail when the resulting item information has no value (i.e. WTF::nullopt).

  • platform/ios/PlatformPasteboardIOS.mm:

(WebCore::PlatformPasteboard::informationForItemAtIndex):
(WebCore::PlatformPasteboard::copy):
(WebCore::PlatformPasteboard::addTypes):
(WebCore::PlatformPasteboard::setTypes):
(WebCore::PlatformPasteboard::setBufferForType):
(WebCore::PlatformPasteboard::setURL):
(WebCore::PlatformPasteboard::setStringForType):
(WebCore::PlatformPasteboard::changeCount const):
(WebCore::PlatformPasteboard::setColor):
(WebCore::PlatformPasteboard::write):

  • platform/libwpe/PlatformPasteboardLibWPE.cpp:

(WebCore::PlatformPasteboard::write):

  • platform/mac/PasteboardMac.mm:

(WebCore::writeURLForTypes):
(WebCore::writeFileWrapperAsRTFDAttachment):
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::readPlatformValuesAsStrings):

  • platform/mac/PlatformPasteboardMac.mm:

(WebCore::PlatformPasteboard::write):
(WebCore::PlatformPasteboard::changeCount const):
(WebCore::PlatformPasteboard::copy):
(WebCore::PlatformPasteboard::addTypes):
(WebCore::PlatformPasteboard::setTypes):
(WebCore::PlatformPasteboard::setBufferForType):
(WebCore::PlatformPasteboard::setURL):
(WebCore::PlatformPasteboard::setColor):
(WebCore::PlatformPasteboard::setStringForType):
(WebCore::PlatformPasteboard::informationForItemAtIndex):

Source/WebKit:

Add a changeCount argument to informationForItemAtIndex and allPasteboardItemInfo, and also make then return
optional values; also, adjust changeCount to be an int64_t in a few places. See WebCore ChangeLog for more
details.

  • UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:

(WebKit::WebPasteboardProxy::pasteboardCopy):
(WebKit::WebPasteboardProxy::getPasteboardChangeCount):
(WebKit::WebPasteboardProxy::addPasteboardTypes):
(WebKit::WebPasteboardProxy::setPasteboardTypes):
(WebKit::WebPasteboardProxy::setPasteboardURL):
(WebKit::WebPasteboardProxy::setPasteboardColor):
(WebKit::WebPasteboardProxy::setPasteboardStringForType):
(WebKit::WebPasteboardProxy::setPasteboardBufferForType):
(WebKit::WebPasteboardProxy::writeCustomData):
(WebKit::WebPasteboardProxy::allPasteboardItemInfo):
(WebKit::WebPasteboardProxy::informationForItemAtIndex):

  • UIProcess/WebPasteboardProxy.cpp:

(WebKit::WebPasteboardProxy::allPasteboardItemInfo):
(WebKit::WebPasteboardProxy::informationForItemAtIndex):

  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::writeItemsToPasteboard):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::changeCount):
(WebKit::WebPlatformStrategies::addTypes):
(WebKit::WebPlatformStrategies::setTypes):
(WebKit::WebPlatformStrategies::setBufferForType):
(WebKit::WebPlatformStrategies::setURL):
(WebKit::WebPlatformStrategies::setColor):
(WebKit::WebPlatformStrategies::setStringForType):
(WebKit::WebPlatformStrategies::writeCustomData):
(WebKit::WebPlatformStrategies::allPasteboardItemInfo):
(WebKit::WebPlatformStrategies::informationForItemAtIndex):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

Source/WebKitLegacy/mac:

Add a changeCount argument to informationForItemAtIndex and allPasteboardItemInfo, and also make then return
optional values. See WebCore ChangeLog for more details.

  • WebCoreSupport/WebPlatformStrategies.h:
  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::changeCount):
(WebPlatformStrategies::addTypes):
(WebPlatformStrategies::setTypes):
(WebPlatformStrategies::setBufferForType):
(WebPlatformStrategies::setURL):
(WebPlatformStrategies::setColor):
(WebPlatformStrategies::setStringForType):
(WebPlatformStrategies::writeCustomData):
(WebPlatformStrategies::informationForItemAtIndex):
(WebPlatformStrategies::allPasteboardItemInfo):

12:11 AM Changeset in webkit [251420] by krit@webkit.org
  • 2 edits in trunk/Tools

Restore my committer status.

Uneviewed.

  • Scripts/webkitpy/common/config/contributors.json:

Oct 21, 2019:

11:05 PM Changeset in webkit [251419] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit

Add some PencilKit extension points
https://bugs.webkit.org/show_bug.cgi?id=202962
<rdar://problem/56269759>

Reviewed by Andy Estes.

This is the WebKit part corresponding to <rdar://problem/56261392>.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]): Call extension point.
(-[WKContentView cleanupInteraction]): Ditto.

10:44 PM Changeset in webkit [251418] by mark.lam@apple.com
  • 3 edits
    1 delete in trunk

Rolling out r251411: Fix is incorrect.
https://bugs.webkit.org/show_bug.cgi?id=203230

Not reviewed.

JSTests:

  • stress/incorrect-exception-assertion-in-operationRegExpExecNonGlobalOrSticky.js: Removed.

Source/JavaScriptCore:

  • dfg/DFGOperations.cpp:
9:58 PM Changeset in webkit [251417] by Simon Fraser
  • 10 edits in trunk/LayoutTests

Multiple fast/scrolling/ios tests failing with unexpected scrollbars appearing in result
https://bugs.webkit.org/show_bug.cgi?id=203223

Reviewed by Wenson Hsieh.

Hide scrollbars in iOS iframe scrolling ref tests.

  • fast/scrolling/ios/hit-testing-iframe-006.html:
  • fast/scrolling/ios/mixing-user-and-programmatic-scroll-002.html:
  • fast/scrolling/ios/mixing-user-and-programmatic-scroll-003.html:
  • fast/scrolling/ios/mixing-user-and-programmatic-scroll-006.html:
  • fast/scrolling/ios/scroll-iframe-001.html:
  • fast/scrolling/ios/scroll-iframe-002.html:
  • fast/scrolling/ios/scroll-iframe-003.html:
  • fast/scrolling/ios/scroll-iframe-004.html:
  • platform/ios-wk2/TestExpectations:
9:51 PM Changeset in webkit [251416] by Chris Dumez
  • 10 edits
    1 add in trunk

Suspend dedicated worker threads while in the back/forward cache
https://bugs.webkit.org/show_bug.cgi?id=203186
<rdar://problem/56447493>

Reviewed by Ryosuke Niwa.

Source/WebCore:

When a page with a (dedicated) Worker enters the back/forward cache, we now
pause the worker thread, and resume it only when taking the page out of the
back/forward cache. This avoids having the worker use CPU while the page is
in the cache.

  • workers/Worker.cpp:

(WebCore::Worker::suspend):
(WebCore::Worker::resume):

  • workers/Worker.h:
  • workers/WorkerGlobalScopeProxy.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::suspend):
(WebCore::WorkerMessagingProxy::resume):
(WebCore::WorkerMessagingProxy::workerThreadCreated):

  • workers/WorkerMessagingProxy.h:
  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::WorkerThread):
(WebCore::WorkerThread::suspend):
(WebCore::WorkerThread::resume):
(WebCore::WorkerThread::stop):

  • workers/WorkerThread.h:

LayoutTests:

Extend layout test coverage.

  • fast/workers/resources/worker-setInterval.js: Added.

(onmessage):
(setInterval):

  • fast/workers/worker-page-cache.html:
9:45 PM Changeset in webkit [251415] by Matt Lewis
  • 2 edits in trunk/Source/WebKit

Unreviewed, rolling out r251381.

This broke an internal build.

Reverted changeset:

"Add some PencilKit extension points"
https://bugs.webkit.org/show_bug.cgi?id=202962
https://trac.webkit.org/changeset/251381

9:32 PM Changeset in webkit [251414] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebCore

Fix the build

  • platform/mock/MockAudioDestinationCocoa.cpp:
  • platform/mock/MockAudioDestinationCocoa.h:
9:05 PM Changeset in webkit [251413] by mmaxfield@apple.com
  • 45 edits in trunk

[Cocoa] Move ui-serif, ui-monospaced, and ui-rounded out from behind SPI
https://bugs.webkit.org/show_bug.cgi?id=203129

Reviewed by Tim Horton.

Source/WebCore:

https://github.com/w3c/csswg-drafts/issues/4107 resolved to name these new fonts
ui-serif, ui-monospaced, and ui-rounded. This patch renames them, and removes the SPI
to access these fonts.

Tests: fast/text/design-system-ui*.html

  • css/CSSFontFace.cpp:

(WebCore::CSSFontFace::shouldAllowDesignSystemUIFonts const): Deleted.

  • css/CSSFontFace.h:
  • css/CSSFontFaceSource.cpp:

(WebCore::CSSFontFaceSource::load):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::initializeFontStyle):

  • page/Settings.yaml:
  • platform/graphics/FontCache.h:

(WebCore::FontDescriptionKey::makeFlagsKey):

  • platform/graphics/FontDescription.cpp:

(WebCore::m_shouldAllowUserInstalledFonts):
(WebCore::m_shouldAllowDesignSystemUIFonts): Deleted.

  • platform/graphics/FontDescription.h:

(WebCore::FontDescription::shouldAllowUserInstalledFonts const):
(WebCore::FontDescription::setShouldAllowUserInstalledFonts):
(WebCore::FontDescription::operator== const):
(WebCore::FontDescription::shouldAllowDesignSystemUIFonts const): Deleted.
(WebCore::FontDescription::setShouldAllowDesignSystemUIFonts): Deleted.

  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::platformFontLookupWithFamily):
(WebCore::fontWithFamilySpecialCase):

  • platform/graphics/cocoa/FontDescriptionCocoa.cpp:

(WebCore::matchSystemFontUse):
(WebCore::FontCascadeDescription::effectiveFamilyCount const):
(WebCore::FontCascadeDescription::effectiveFamilyAt const):

  • platform/graphics/cocoa/SystemFontDatabaseCoreText.cpp:

(WebCore::SystemFontDatabaseCoreText::systemFontParameters):

  • style/StyleResolveForDocument.cpp:

(WebCore::Style::resolveForDocument):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::dataChanged):

Source/WebKit:

  • Shared/WebPreferences.yaml:
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences _shouldAllowDesignSystemUIFonts]): Deleted.
(-[WKPreferences _setShouldAllowDesignSystemUIFonts:]): Deleted.

  • UIProcess/API/Cocoa/WKPreferencesPrivate.h:

LayoutTests:

Update the tests to use the new names, and to not set the setting.

  • fast/text/design-system-ui-10-expected-mismatch.html:
  • fast/text/design-system-ui-10.html:
  • fast/text/design-system-ui-11.html:
  • fast/text/design-system-ui-12.html:
  • fast/text/design-system-ui-13.html:
  • fast/text/design-system-ui-14.html:
  • fast/text/design-system-ui-15.html:
  • fast/text/design-system-ui-16.html:
  • fast/text/design-system-ui-2-expected.html:
  • fast/text/design-system-ui-2.html:
  • fast/text/design-system-ui-3-expected-mismatch.html:
  • fast/text/design-system-ui-3.html:
  • fast/text/design-system-ui-4-expected-mismatch.html:
  • fast/text/design-system-ui-4.html:
  • fast/text/design-system-ui-5-expected-mismatch.html:
  • fast/text/design-system-ui-5.html:
  • fast/text/design-system-ui-6-expected.html:
  • fast/text/design-system-ui-6.html:
  • fast/text/design-system-ui-7-expected.html:
  • fast/text/design-system-ui-7.html:
  • fast/text/design-system-ui-8-expected-mismatch.html:
  • fast/text/design-system-ui-8.html:
  • fast/text/design-system-ui-9-expected-mismatch.html:
  • fast/text/design-system-ui-9.html:
  • fast/text/design-system-ui-expected.html:
  • fast/text/design-system-ui.html:
8:56 PM Changeset in webkit [251412] by Simon Fraser
  • 4 edits in trunk/LayoutTests

[WK1] Layout Test legacy-animation-engine/compositing/backing/transform-transition-from-outside-view.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=184611

Reviewed by Zalan Bujtas.

In WebKit1, the transform on the layer is not consistent, so filter it out of the layer tree dump (it's not the important part).

  • legacy-animation-engine/compositing/backing/transform-transition-from-outside-view-expected.txt:
  • legacy-animation-engine/compositing/backing/transform-transition-from-outside-view.html:
  • platform/mac-wk1/TestExpectations:
6:55 PM Changeset in webkit [251411] by mark.lam@apple.com
  • 3 edits
    1 add in trunk

Fix incorrect assertion in operationRegExpExecNonGlobalOrSticky().
https://bugs.webkit.org/show_bug.cgi?id=203230
<rdar://problem/56460749>

Reviewed by Robin Morisset.

JSTests:

  • stress/incorrect-exception-assertion-in-operationRegExpExecNonGlobalOrSticky.js: Added.

Source/JavaScriptCore:

operationRegExpExecNonGlobalOrSticky() was asserting no exception when
createRegExpMatchesArray() returns null. createRegExpMatchesArray() only returns
null when RegExp::matchInline() returns -1. The only way RegExp::matchInline()
can return -1 is via a throwError() helper which throws an exception. The other
return path in RegExp::matchInline() explicitly ASSERT(result >= -1). Hence, the
assertion in operationRegExpExecNonGlobalOrSticky() is wrong.

  • dfg/DFGOperations.cpp:
6:48 PM Changeset in webkit [251410] by zhifei_fang@apple.com
  • 4 edits in trunk/Tools

[results.webkit.org] Change dot and lengend dot use same mechanism to center text and image
https://bugs.webkit.org/show_bug.cgi?id=203216

Reviewed by Jonathan Bedard.

  • resultsdbpy/resultsdbpy/view/static/library/css/docs.yaml:
  • resultsdbpy/resultsdbpy/view/static/library/css/index.html:
  • resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:

(.dot *):
(.dot img, .dot .text):
(.dot>img, .dot>.text):
(.dot.small img, .dot.small .text):
(.dot.small>img, .dot.small>.text):
(.dot.medium img, .dot.medium .text):
(.dot.medium>img, .dot.medium>.text):
(.dot.large img, .dot.large .text):
(.dot.large>img, .dot.large>.text):
(.lengend>.item .dot):
(.lengend>.item .dot img, .lengend>.item .dot .text):
(.lengend>.item .dot>img, .lengend>.item .dot>.text):
(.dot.small *): Deleted.
(.dot img, .dot.small img): Deleted.
(.dot.medium *): Deleted.
(.dot.medium img): Deleted.
(.dot.large *): Deleted.
(.dot.large img): Deleted.
(.lengend>.item .dot .text): Deleted.
(.lengend>.item .dot img): Deleted.

6:34 PM Changeset in webkit [251409] by achristensen@apple.com
  • 24 edits in trunk

Move service worker registration matching for navigation loads to network process
https://bugs.webkit.org/show_bug.cgi?id=203144

Patch by youenn fablet <youenn@apple.com> on 2019-10-21
Reviewed by Chris Dumez.

Source/WebCore:

For regular loads, we no longer match service worker registration explicitly.
This is now done by NetworkResourceLoader explicitly.
We still need to explicitely match registrations in those two cases:

  • There is an app cache resource that can be used. We will use it only if there is no registration.
  • There is a resource from the meory cache that can be used. We will match the registration to make sure

the document is controlled by the right service worker. The load will still be served from the memory cache.

Since DocumentLoader is no longer matching registration, we need a way from NetworkProcess to inform that there is
a matching registration and that the document is controlled.
For that purpose, DocumentLoader is adding itself in a global map with the temporary document identifier as the key.
Adding to the map happens when loading the main resource and removal from the map happens when destroying the DocumentLoader.
For this to happen properly, the temporary document identifier is kept the same for the lifetime of the DocumentLoader.

Registration matching was postponed until service worker registration is done.
Since we no longer do registration matching in WebProcess, we need to wait in NetworkProcess for that to happen.
We introduce a way for SWServer to notify when import is completed for that purpose.

Covered by existing tests.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::fromTemporaryDocumentIdentifier):
(WebCore::DocumentLoader::~DocumentLoader):
(WebCore::DocumentLoader::setControllingServiceWorkerRegistration):
(WebCore::DocumentLoader::redirectReceived):
(WebCore::DocumentLoader::responseReceived):
(WebCore::DocumentLoader::startLoadingMainResource):
(WebCore::DocumentLoader::unregisterTemporaryServiceWorkerClient):
(WebCore::DocumentLoader::loadMainResource):

  • loader/DocumentLoader.h:
  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::canLoadMainResource):

  • loader/appcache/ApplicationCacheHost.h:
  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::~SWServer):
(WebCore::SWServer::registrationStoreImportComplete):
(WebCore::SWServer::whenImportIsCompleted):
(WebCore::SWServer::doRegistrationMatching):

  • workers/service/server/SWServer.h:

(WebCore::SWServer::isImportCompleted const):

Source/WebKit:

Create a WebSWServerConnection whenever receiving a load request in NetworkProcess.
This connection is used to check for service worker registration in case of navigation loads.
Similarly, we create a WebSWClientConnection whenever WebProcess needs it, including when receiving WebSWClientConnection messages from NetworkProcess.
This for instance happens when service worker registration import is complete to fill the shared registration origin store.

Delay loads until SWServer has finished importing its registrations.
This is needed since we might otherwise not intercept loads that could be intercepted.
Waiting for importing registrations was previously ensured by WebProcess getting a matching registration in DocumentLoader.

NetworkResourceLoader is now checking for service worker interception in case of redirections for navigations.
This is needed as redirections could end up using a new registration.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::establishSWServerConnection):
(WebKit::NetworkConnectionToWebProcess::swConnection):

  • NetworkProcess/NetworkConnectionToWebProcess.h:
  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::continueWillSendRequest):
(WebKit::NetworkResourceLoader::startWithServiceWorker):
(WebKit::NetworkResourceLoader::serviceWorkerDidNotHandle):

  • NetworkProcess/NetworkResourceLoader.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:

(WebKit::ServiceWorkerFetchTask::ServiceWorkerFetchTask):
(WebKit::ServiceWorkerFetchTask::start):
(WebKit::ServiceWorkerFetchTask::startFetch):
(WebKit::ServiceWorkerFetchTask::continueFetchTaskWith):

  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:

(WebKit::ServiceWorkerFetchTask::takeRequest):

  • NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:

(WebKit::WebSWServerConnection::controlClient):
(WebKit::WebSWServerConnection::createFetchTask):

  • NetworkProcess/ServiceWorker/WebSWServerConnection.h:
  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):

  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::scheduleLoad):

  • WebProcess/Storage/WebSWClientConnection.cpp:

(WebKit::WebSWClientConnection::WebSWClientConnection):
(WebKit::WebSWClientConnection::registrationReady):
(WebKit::WebSWClientConnection::documentIsControlled):

  • WebProcess/Storage/WebSWClientConnection.h:
  • WebProcess/Storage/WebSWClientConnection.messages.in:

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:

We are now creating a WebSWClientConnection whenever receiving a WebSWClientConnection message
from NetworkProcess. It is free to do so given it no longer requires sending some IPC.
Update the tests accordingly.
A future patch will remove the service worker registration bit feature and corresponding test.

6:33 PM Changeset in webkit [251408] by sbarati@apple.com
  • 3 edits
    1 add in trunk

ValuePow's constant folding rule differs from what the runtime does
https://bugs.webkit.org/show_bug.cgi?id=203220
<rdar://problem/56181441>

Reviewed by Yusuke Suzuki.

JSTests:

  • value-pow-ai-rule-should-box-the-same-way-as-the-runtime.js: Added.

(foo):

Source/JavaScriptCore:

The constant folding rule for ValuePow was boxing the result using jsDoubleNumber,
where the runtime function was boxing the result using jsNumber. This patch makes
it so that constant folding agrees with what the runtime is doing.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

6:31 PM Changeset in webkit [251407] by Simon Fraser
  • 2 edits in trunk/Tools

TestWebKitAPI.ScrollViewScrollabilityTests.ScrollableWithOverflowHiddenAndInputView is failing on iPad simulator
https://bugs.webkit.org/show_bug.cgi?id=203053

Reviewed by Wenson Hsieh.

Make ScrollableWithOverflowHiddenAndInputView only test the results on iPhones. Test is not designed for ipad.

  • TestWebKitAPI/Tests/ios/ScrollViewScrollabilityTests.mm:

(TestWebKitAPI::TEST):

6:16 PM Changeset in webkit [251406] by clopez@igalia.com
  • 2 edits in trunk/PerformanceTests

[GTK] Perf test SVG/UnderTheSeeBenchmark.html timeouts.
https://bugs.webkit.org/show_bug.cgi?id=203229

Unreviewed gardening.

  • Skipped: Mark 2 new tests timing out in the GTK perf bot.
6:12 PM Changeset in webkit [251405] by mmaxfield@apple.com
  • 6 edits in trunk/LayoutTests

Update Web Platform Test css/css-lists/content-property/marker-text-matches-armenian.html
https://bugs.webkit.org/show_bug.cgi?id=203130
<rdar://problem/51525184>

Reviewed by Alex Christensen.

Apply https://github.com/web-platform-tests/wpt/commit/b2d4cb4a64ae072dfc6feb888dd77575927f5ae2

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-lists/content-property/marker-text-matches-armenian-expected.html:
  • web-platform-tests/css/css-lists/content-property/marker-text-matches-armenian.html:

LayoutTests:

  • platform/ios-simulator/TestExpectations:
  • platform/mac/TestExpectations:
5:53 PM Changeset in webkit [251404] by sihui_liu@apple.com
  • 12 edits in trunk/Source

Remove IDBBackingStoreTemporaryFileHandler
https://bugs.webkit.org/show_bug.cgi?id=203128

Reviewed by Alex Christensen.

Source/WebCore:

IDBBackingStoreTemporaryFileHandler has only one member function, and implementation of that is to delete
files. To keep the same behavior, we can remove this class and delete the temporary files at the places where
objects of this class were used.

By doing this, we no longer need to pass the NetworkProcess/InProcessIDBServer all the way down to
SQLiteIDBBackingStore that is used only on background thread.

  • Modules/indexeddb/server/IDBBackingStore.h:
  • Modules/indexeddb/server/IDBServer.cpp:

(WebCore::IDBServer::IDBServer::create):
(WebCore::IDBServer::IDBServer::IDBServer):
(WebCore::IDBServer::IDBServer::createBackingStore):

  • Modules/indexeddb/server/IDBServer.h:
  • Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:

(WebCore::IDBServer::SQLiteIDBBackingStore::SQLiteIDBBackingStore):

  • Modules/indexeddb/server/SQLiteIDBBackingStore.h:

(WebCore::IDBServer::SQLiteIDBBackingStore::temporaryFileHandler const): Deleted.

  • Modules/indexeddb/server/SQLiteIDBTransaction.cpp:

(WebCore::IDBServer::SQLiteIDBTransaction::moveBlobFilesIfNecessary):
(WebCore::IDBServer::SQLiteIDBTransaction::deleteBlobFilesIfNecessary):
(WebCore::IDBServer::SQLiteIDBTransaction::abort):

  • Modules/indexeddb/shared/InProcessIDBServer.cpp:

(WebCore::InProcessIDBServer::InProcessIDBServer):
(WebCore::InProcessIDBServer::accessToTemporaryFileComplete): Deleted.

  • Modules/indexeddb/shared/InProcessIDBServer.h:

Source/WebKit:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::createIDBServer):
(WebKit::NetworkProcess::accessToTemporaryFileComplete): Deleted.

  • NetworkProcess/NetworkProcess.h:
5:51 PM Changeset in webkit [251403] by mark.lam@apple.com
  • 3 edits
    1 add in trunk

Fix missing exception check in JSON Stringifier.
https://bugs.webkit.org/show_bug.cgi?id=203227
<rdar://problem/56459854>

Reviewed by Keith Miller.

JSTests:

  • stress/missing-exception-check-in-josn-stringifier.js: Added.

Source/JavaScriptCore:

  • runtime/JSONObject.cpp:

(JSC::Stringifier::Stringifier):

5:43 PM Changeset in webkit [251402] by commit-queue@webkit.org
  • 1 edit
    4 moves in trunk/LayoutTests

http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=202852
<rdar://problem/56195888>

Patch by Kate Cheney <Kate Cheney> on 2019-10-21
Reviewed by Alex Christensen.

Fixed test flakiness caused by the resource remaining in the cache
between tests, therefore not creating a new isolated session and
failing the text diff. This patch adds a php header to each file to
prevent the resource from being stored in the cache.

  • http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-database.php: Renamed from LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction-database.html.
  • http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.php: Renamed from LayoutTests/http/tests/resourceLoadStatistics/do-not-switch-session-on-navigation-to-prevalent-without-interaction.html.
  • http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.php: Renamed from LayoutTests/http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction-database.html.
  • http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.php: Renamed from LayoutTests/http/tests/resourceLoadStatistics/switch-session-on-navigation-to-prevalent-with-interaction.html.
5:22 PM Changeset in webkit [251401] by Jonathan Bedard
  • 3 edits in trunk/Tools

results.webkit.org: Add ability to display time on bubbles
https://bugs.webkit.org/show_bug.cgi?id=203202
<rdar://problem/56436621>

Rubber-stamped by Aakash Jain.

  • resultsdbpy/resultsdbpy/view/static/js/timeline.js: Add switch to show times under each bubble.
  • resultsdbpy/resultsdbpy/view/templates/search.html: Correctly update timeline on callback.
5:17 PM Changeset in webkit [251400] by mark.lam@apple.com
  • 9 edits
    1 copy in trunk/Source/JavaScriptCore

Rolling out r251226: Causes a build speed regression.
https://bugs.webkit.org/show_bug.cgi?id=203219

Not reviewed.

Apparently, compilers aren't very fast at compiling constexpr function invocations.
Rolling this out while I rework the patch to not have this build speed regression.

  • API/glib/JSCOptions.cpp:

(jscOptionsSetValue):
(jscOptionsGetValue):
(jsc_options_foreach):
(jsc_options_get_option_group):

  • CMakeLists.txt:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Sources.txt:
  • runtime/JSCConfig.h:
  • runtime/OptionEntry.h: Copied from Source/JavaScriptCore/runtime/OptionEntry.h.
  • runtime/Options.cpp:

(JSC::Options::isAvailable):
(JSC::overrideOptionWithHeuristic):
(JSC::scaleJITPolicy):
(JSC::recomputeDependentOptions):
(JSC::Options::initialize):
(JSC::Options::setOptionWithoutAlias):
(JSC::Options::dumpAllOptions):
(JSC::Options::dumpOption):
(JSC::Option::dump const):
(JSC::Option::operator== const):
(JSC::optionTypeSpecificIndex): Deleted.
(JSC::Option::Option): Deleted.
(JSC::Option::defaultOption const): Deleted.

  • runtime/Options.h:

(JSC::Option::Option):
(JSC::Option::id const):
(JSC::Option::name const):
(JSC::Option::description const):
(JSC::Option::type const):
(JSC::Option::availability const):
(JSC::Option::isOverridden const):
(JSC::Option::defaultOption const):
(JSC::Option::boolVal):
(JSC::Option::unsignedVal):
(JSC::Option::doubleVal):
(JSC::Option::int32Val):
(JSC::Option::optionRangeVal):
(JSC::Option::optionStringVal):
(JSC::Option::gcLogLevelVal):
(JSC::Option::idIndex const): Deleted.
(JSC::optionTypeSpecificIndex): Deleted.

  • runtime/OptionsList.h:

(JSC::OptionRange::operator= ): Deleted.
(JSC::OptionRange::rangeString const): Deleted.
(JSC::countNumberOfJSCOptionsOfType): Deleted.

5:04 PM Changeset in webkit [251399] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Fix issues when setting public length on ArrayWithContiguous type butterflies.
https://bugs.webkit.org/show_bug.cgi?id=203211
<rdar://problem/56476097>

Reviewed by Keith Miller and Saam Barati.

For ArrayWithContiguous type butterflies, SlotVisitor scans up to the public
length of the butterfly. When setting a new public length, if the new public
length is greater than the current, we should always writeBarrier after the
setting of the new public length. Otherwise, there can be a race where the GC
scans the butterfly after new values have been written to it but before the
public length as been updated. As a result, the new values never get scanned.

For the DFG and FTL, the StoreBarrierInsertionPhase is responsible for inserting
the writeBarriers after the node. Hence, the writeBarrier is guaranteed to be
after the publicLength has been updated.

  • runtime/JSArray.cpp:

(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::shiftCountWithAnyIndexingType):

  • runtime/JSArrayInlines.h:

(JSC::JSArray::pushInline):

  • runtime/JSObject.cpp:

(JSC::JSObject::putByIndex):
(JSC::JSObject::reallocateAndShrinkButterfly):

  • runtime/JSObject.h:

(JSC::JSObject::setIndexQuickly):

4:56 PM Changeset in webkit [251398] by Truitt Savell
  • 2 edits in trunk/LayoutTests

[ Mac ] Layout Test legacy-animation-engine/compositing/backing/transform-transition-from-outside-view.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=203225

Unreviewed test gardening

  • platform/mac-wk2/TestExpectations:
4:51 PM Changeset in webkit [251397] by Russell Epstein
  • 3 edits in trunk/LayoutTests

REGRESSION (~r251067): http/tests/workers/service/registration-clear-redundant-worker.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=203218

Unreviewed Test Gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
4:47 PM Changeset in webkit [251396] by jer.noble@apple.com
  • 12 edits
    2 adds in trunk

Add MediaCapabilities support for DolbyVision codecs.
https://bugs.webkit.org/show_bug.cgi?id=203170

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/dovi-codec-parameters.html

Add support for parsing DolbyVision (DoVi) style codec profile strings.

  • platform/cocoa/VideoToolboxSoftLink.cpp:
  • platform/cocoa/VideoToolboxSoftLink.h:
  • platform/graphics/HEVCUtilities.cpp:

(WebCore::codecStringForDoViCodecType):
(WebCore::profileIDForAlphabeticDoViProfile):
(WebCore::isValidDoViProfileID):
(WebCore::maximumLevelIDForDoViProfileID):
(WebCore::isValidProfileIDForCodecName):
(WebCore::parseDoViCodecParameters):

  • platform/graphics/HEVCUtilities.h:
  • platform/graphics/cocoa/HEVCUtilitiesCocoa.h:
  • platform/graphics/cocoa/HEVCUtilitiesCocoa.mm:

(WebCore::codecStringToCodecTypeMap):
(WebCore::CFStringArrayToNumberVector):
(WebCore::validateDoViParameters):

  • platform/graphics/cocoa/MediaEngineConfigurationFactoryCocoa.cpp:

(WebCore::createMediaPlayerDecodingConfigurationCocoa):

  • testing/Internals.cpp:

(WebCore::Internals::parseDoViCodecParameters):

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • media/dovi-codec-parameters-expected.txt: Added.
  • media/dovi-codec-parameters.html: Added.
4:30 PM Changeset in webkit [251395] by Devin Rousso
  • 16 edits in trunk/Source/JavaScriptCore

Web Inspector: make ObjC protocol dispatcher commands optional and add respondsToSelector checks to allow other inspector clients to choose what they implement
https://bugs.webkit.org/show_bug.cgi?id=203197

Reviewed by Joseph Pecoraro.

This will help eliminate internal build failures, and will also allow other clients to
remove all of their commands that previously just responded with an "unsupported" error.

  • inspector/scripts/codegen/objc_generator_templates.py:
  • inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py:

(ObjCBackendDispatcherImplementationGenerator._generate_handler_implementation_for_command):
(ObjCBackendDispatcherImplementationGenerator._generate_responds_to_selector_for_command): Added.
Add a respondsToSelector check before attempting to call the delegate function.

  • inspector/scripts/codegen/generate_objc_header.py:

(ObjCHeaderGenerator._generate_command_protocols):
Mark all commands as @optional.

  • inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result:
  • inspector/scripts/tests/generic/expected/command-targetType-matching-domain-debuggableType.json-result:
  • inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result:
  • inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result:
  • inspector/scripts/tests/generic/expected/domain-debuggableTypes.json-result:
  • inspector/scripts/tests/generic/expected/domain-targetType-matching-domain-debuggableType.json-result:
  • inspector/scripts/tests/generic/expected/domain-targetTypes.json-result:
  • inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result:
  • inspector/scripts/tests/generic/expected/enum-values.json-result:
  • inspector/scripts/tests/generic/expected/event-targetType-matching-domain-debuggableType.json-result:
  • inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result:
  • inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result:
4:23 PM Changeset in webkit [251394] by sbarati@apple.com
  • 3 edits
    1 add in trunk

JSON.parse has bad is array assert
https://bugs.webkit.org/show_bug.cgi?id=203207
<rdar://problem/56366913>

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/json-parse-array-prototype-is-array-assert.js: Added.

(assert):

Source/JavaScriptCore:

In r250860, we updated JSON.parse to be more spec compliant with how it
handles arrays. However, we also updated an assertion in an improper way,
where our assert was not accounting for the check we performed to take
that control flow path.

  • runtime/JSONObject.cpp:

(JSC::Walker::walk):

4:17 PM Changeset in webkit [251393] by Kocsen Chung
  • 1 copy in tags/Safari-608.4.2

Tag Safari-608.4.2.

3:47 PM Changeset in webkit [251392] by rmorisset@apple.com
  • 6 edits in trunk

Throw the right exception upon memory exhaustion in Array::slice
https://bugs.webkit.org/show_bug.cgi?id=202650

Reviewed by Saam Barati.

JSTests:

  • stress/array-slice-memory-exhaustion.js: Added.

(foo):

Source/JavaScriptCore:

Trivial change: just use tryCreate instead of create, and throw an exception if it fails.
No security implication: we were just crashing instead of throwing a catchable exception.

  • runtime/ArrayBuffer.cpp:

(JSC::ArrayBuffer::slice const):
(JSC::ArrayBuffer::sliceImpl const):

  • runtime/ArrayBuffer.h:
  • runtime/JSArrayBufferPrototype.cpp:

(JSC::arrayBufferProtoFuncSlice):

3:33 PM Changeset in webkit [251391] by wilander@apple.com
  • 10 edits in trunk

Resource Load Statistics: Update cookie blocking in NetworkStorageSession after first user interaction
https://bugs.webkit.org/show_bug.cgi?id=203195
<rdar://problem/56464567>

Reviewed by Alex Christensen and Chris Dumez.

Source/WebKit:

This change makes sure that the state of cookie blocking in
WebCore:: NetworkStorageSession is immediately updated if the logged
user interaction was new for this domain. It adds a completion
handler to WebResourceLoadStatisticsStore::logUserInteraction() so
that the call properly waits for everything to be updated.

  • NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:

(WebKit::CompletionHandler<void):

  • NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
  • NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:

(WebKit::ResourceLoadStatisticsMemoryStore::logUserInteraction):

  • NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.h:
  • NetworkProcess/Classifier/ResourceLoadStatisticsStore.h:
  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::logUserInteraction):

LayoutTests:

This patch removes the explicit calls to testRunner.statisticsUpdateCookieBlocking() since
they are no longer needed. This makes sure the changed code is tested.

  • http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction-database.html:
  • http/tests/resourceLoadStatistics/third-party-cookie-blocking-on-sites-without-user-interaction.html:
3:31 PM Changeset in webkit [251390] by dino@apple.com
  • 17 edits in trunk

Dispatch AR event on the originating anchor element
https://bugs.webkit.org/show_bug.cgi?id=203198
<rdar://55743929>

Reviewed by Simon Fraser.

Source/WebCore:

Expose an ElementContext on the SystemPreviewInfo, so that
when something happens in the AR QuickLook an event can be
fired on the originating <a> element.

  • dom/Document.cpp:

(WebCore::Document::dispatchSystemPreviewActionEvent): Make sure
we dispatch only to the HTMLAnchorElement.

  • dom/Document.h:
  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::handleClick):

  • loader/FrameLoaderTypes.h:

(WebCore::SystemPreviewInfo::encode const):
(WebCore::SystemPreviewInfo::decode):

  • testing/Internals.cpp:

(WebCore::Internals::elementIdentifier const):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit:

Use the ElementContext on SystemPreviewInfo.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _triggerSystemPreviewActionOnElement:frame:page:]):
(-[WKWebView _triggerSystemPreviewActionOnFrame:page:]): Deleted.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/Cocoa/SystemPreviewControllerCocoa.mm:
  • UIProcess/SystemPreviewController.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::systemPreviewActionTriggered):

Tools:

Improve this test, most importantly so that it
actually works :)

Retrieve the ElementIdentifier for the <a> element,
and trigger a system preview action on it.

  • TestWebKitAPI/Tests/WebKitCocoa/SystemPreview.mm:

(-[TestSystemPreviewTriggeredHandler userContentController:didReceiveScriptMessage:]):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/system-preview-trigger.html:
3:13 PM Changeset in webkit [251389] by Wenson Hsieh
  • 3 edits in trunk/LayoutTests

Unreviewed, re-enable a couple of passing layout tests

  • platform/ios/TestExpectations:
  • platform/ipad/TestExpectations:
3:12 PM Changeset in webkit [251388] by dino@apple.com
  • 21 edits
    1 move
    1 delete in trunk/Source

Move ElementContext from WebKit to WebCore
https://bugs.webkit.org/show_bug.cgi?id=203210
<rdar://problem/56475682>

Reviewed by Simon Fraser.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • dom/RadioButtonGroups.h:

Source/WebKit:

  • Scripts/webkit/messages.py:
  • Shared/DocumentEditingContext.h:
  • Shared/DocumentEditingContext.mm:

(IPC::ArgumentCoder<WebKit::DocumentEditingContextRequest>::decode):

  • Shared/ElementContext.cpp: Removed.
  • Shared/ElementContext.h: Removed.
  • Shared/WebPreferencesDefaultValues.cpp:

(WebKit::defaultCSSOMViewScrollingAPIEnabled):

  • Shared/WebsitePoliciesData.cpp:

(WebKit::WebsitePoliciesData::decode):

  • Shared/ios/InteractionInformationAtPosition.h:
  • Sources.txt:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _requestTextInputContextsInRect:completionHandler:]):

  • UIProcess/API/Cocoa/_WKTextInputContext.mm:

(-[_WKTextInputContext _initWithTextInputContext:]):
(-[_WKTextInputContext _textInputContext]):

  • UIProcess/API/Cocoa/_WKTextInputContextInternal.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::textInputContextsInRect):
(WebKit::WebPageProxy::focusTextInputContext):

  • UIProcess/WebPageProxy.h:
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::textInputContextsInRect):
(WebKit::WebPage::focusTextInputContext):
(WebKit::WebPage::elementForContext const):
(WebKit::WebPage::contextForElement const):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::startInteractionWithElementContextOrPosition):

3:07 PM Changeset in webkit [251387] by Wenson Hsieh
  • 2 edits in trunk/LayoutTests

editing/selection/ios/selection-handles-in-readonly-input.html times out
https://bugs.webkit.org/show_bug.cgi?id=203203
<rdar://problem/47710799>

Reviewed by Tim Horton.

This test began to fail in iOS 13, since we (intentionally) no longer show a keyboard when focusing readonly
inputs. The test is intended to verify that moving selection handles inside a readonly input field will not
cause the selection to disappear, but it currently waits forever for the keyboard to appear after initially
tapping a readonly input field.

We can fix this test by instead using a tap-and-half gesture to select the text ('aa').

  • editing/selection/ios/selection-handles-in-readonly-input.html:
3:05 PM Changeset in webkit [251386] by Devin Rousso
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION(r251227): Uncaught Exception: undefined is not an object (evaluating 'agent.enable')
https://bugs.webkit.org/show_bug.cgi?id=203208

Reviewed by Joseph Pecoraro.

  • UserInterface/Controllers/AppController.js:

(WI.AppController.prototype.activateExtraDomains):

2:36 PM Changeset in webkit [251385] by Simon Fraser
  • 5 edits
    2 adds in trunk

Setting border-radius on <video> element clips top and left sections of video
https://bugs.webkit.org/show_bug.cgi?id=202049
<rdar://problem/55570024>

Reviewed by Dean Jackson.

Source/WebCore:

updateClippingStrategy() is called both when we're setting a mask layer on m_layer,
and on m_contentsClippingLayer, and they disagreed on the coordinate space that
the rounded rect was in. r246845 fixed rounded-rect scrollers, but broke video.

Fix by declaring that the rounded rect is relative to the bounds of the layer
argument. We don't try to size the shape layer to the rounded rect, because in some
configurations (e.g. scroller with left scrollbar) the rounded rect hangs outside
the clipping layer.

Test: compositing/video/video-border-radius-clipping.html

  • platform/graphics/FloatRoundedRect.h:

(WebCore::FloatRoundedRect::setLocation):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateClippingStrategy):
(WebCore::GraphicsLayerCA::updateContentsRects): The rounded rect is relative to the contentsClippingLayer,
so set its location to zero.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateChildClippingStrategy): negate the offset, as we do in updateGeometry which
has similar code.

LayoutTests:

  • compositing/video/video-border-radius-clipping-expected.html: Added.
  • compositing/video/video-border-radius-clipping.html: Added.
2:28 PM Changeset in webkit [251384] by achristensen@apple.com
  • 18 edits
    1 add in trunk

ServiceWorker tests should use TCPServer instead of WKURLSchemeHandler
https://bugs.webkit.org/show_bug.cgi?id=203141

Reviewed by Youenn Fablet.

Source/WebCore:

This makes the tests more like what users will see,
and it allows us to not consult custom schemes when loading service workers,
which is preventing us from moving logic to the NetworkProcess. See bug 203055.
Also, I now remove test-only code that's not used anymore.

  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::SWServer):
(WebCore::SWServer::canHandleScheme const):

  • workers/service/server/SWServer.h:

Source/WebKit:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::addWebsiteDataStore):
(WebKit::NetworkProcess::swServerForSession):
(WebKit::NetworkProcess::addServiceWorkerSession):

  • NetworkProcess/NetworkProcess.h:
  • Shared/WebsiteDataStoreParameters.cpp:

(WebKit::WebsiteDataStoreParameters::encode const):
(WebKit::WebsiteDataStoreParameters::decode):

  • Shared/WebsiteDataStoreParameters.h:
  • UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h:
  • UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:

(-[_WKWebsiteDataStoreConfiguration registerURLSchemeServiceWorkersCanHandleForTesting:]): Deleted.

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::initializeNewWebProcess):

  • UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:

(WebKit::WebsiteDataStore::parameters):

  • UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:

(WebKit::WebsiteDataStoreConfiguration::copy):

  • UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:

(WebKit::WebsiteDataStoreConfiguration::serviceWorkerRegisteredSchemes const): Deleted.
(WebKit::WebsiteDataStoreConfiguration::registerServiceWorkerScheme): Deleted.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:

(-[SWMessageHandlerForRestoreFromDiskTest userContentController:didReceiveScriptMessage:]):
(-[SWSchemes handledRequests]): Deleted.
(-[SWSchemes webView:startURLSchemeTask:]): Deleted.
(-[SWSchemes webView:stopURLSchemeTask:]): Deleted.

  • TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerTCPServer.h: Added.

(ServiceWorkerTCPServer::ServiceWorkerTCPServer):
(ServiceWorkerTCPServer::request):
(ServiceWorkerTCPServer::requestWithLocalhost):
(ServiceWorkerTCPServer::requestWithFragment):
(ServiceWorkerTCPServer::userAgentsChecked):
(ServiceWorkerTCPServer::requestWithFormat):

  • TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm:

(-[StorageSchemes webView:startURLSchemeTask:]): Deleted.
(-[StorageSchemes webView:stopURLSchemeTask:]): Deleted.

2:17 PM Changeset in webkit [251383] by Jonathan Bedard
  • 10 edits in trunk/Tools

Python 3: Add support in webkitpy.common.config
https://bugs.webkit.org/show_bug.cgi?id=202463

Reviewed by Dewei Zhu.

  • Scripts/test-webkitpy-python3: Add webkitpy.common.config to the test list.
  • Scripts/webkitpy/common/config/committers.py:

(Contributor.init): Convert lists to maps.
(Contributor.str): str will always return the native string type.
(Contributor.unicode): Use .format() string.
(CommitterList._exclusive_contributors): Convert filter to list.
(CommitterList._exclusive_committers): Ditto.
(CommitterList.contributors_by_search_string): Ditto.

  • Scripts/webkitpy/common/config/committervalidator_unittest.py: Use full import paths.
  • Scripts/webkitpy/common/config/contributionareas_unittest.py: Use full import paths.
  • Scripts/webkitpy/common/config/ports.py:

(DeprecatedPort.makeArgs): Use 'in' instead of has_key.

  • Scripts/webkitpy/common/config/urls_unittest.py:
  • Scripts/webkitpy/common/unicode_compatibility.py:

(encode_for): Encode string for type.

  • Scripts/webkitpy/thirdparty/BeautifulSoup.py: Make html5lib import auto-install compatible.
  • Scripts/webkitpy/thirdparty/init.py:

(AutoinstallImportHook.find_module): Add html5lib.
(AutoinstallImportHook._install_html5lib): Make html5lib a stand-alone installed package.
(AutoinstallImportHook._install_mechanize): Install html5lib.
(AutoinstallImportHook._install_beautifulsoup): Ditto.

2:16 PM Changeset in webkit [251382] by timothy_horton@apple.com
  • 4 edits in trunk/Source

macCatalyst: Swipe navigation gestures do not work
https://bugs.webkit.org/show_bug.cgi?id=203205
<rdar://problem/54617473>

Reviewed by Wenson Hsieh.

Source/WebKit:

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(-[WKSwipeTransitionController gestureRecognizerForInteractiveTransition:WithTarget:action:]):
Use a different gesture recognizer for swipe in macCatalyst that behaves
more like the macOS implementation, based on scrolling instead of the
gesture coming from a screen edge.

Source/WTF:

  • wtf/Platform.h:

Add a new HAVE.

2:07 PM Changeset in webkit [251381] by dbates@webkit.org
  • 2 edits in trunk/Source/WebKit

Add some PencilKit extension points
https://bugs.webkit.org/show_bug.cgi?id=202962
<rdar://problem/56269759>

Reviewed by Andy Estes.

This is the WebKit part corresponding to <rdar://problem/56261392>.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]): Call extension point.
(-[WKContentView cleanupInteraction]): Ditto.

1:47 PM Changeset in webkit [251380] by dbates@webkit.org
  • 4 edits
    1 delete in trunk/LayoutTests

Update expected result for fast/repaint/placeholder-after-caps-lock-hidden.html
https://bugs.webkit.org/show_bug.cgi?id=203005
<rdar://problem/51826131>

Reviewed by Simon Fraser.

Rebase iOS result. The test fast/repaint/placeholder-after-caps-lock-hidden.html is only supported
in Modern WebKit and only on Mac and iOS, which implement uiController.toggleCapsLock(), at the time
of writing.

  • platform/ios-wk2/TestExpectations: Mark test as PASS.
  • platform/ios-wk2/fast/repaint/placeholder-after-caps-lock-hidden-expected.txt:
  • platform/ios/TestExpectations: Remove entry so that we fallback to platform-independent TestExpectations

and skip the test because the test is only supported on Modern WebKit.

  • platform/ios/fast/events/ios/placeholder-after-caps-lock-hidden-expected.txt: Removed; erroneously added

file for non-existent test.

1:43 PM Changeset in webkit [251379] by Joseph Pecoraro
  • 10 edits in trunk/Source

Web Inspector: Provide a flag for technology preview builds
https://bugs.webkit.org/show_bug.cgi?id=203164
<rdar://problem/56202164>

Reviewed by Devin Rousso.

Source/WebCore:

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::isExperimentalBuild):

  • inspector/InspectorFrontendHost.h:
  • inspector/InspectorFrontendHost.idl:

Source/WebInspectorUI:

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Test/Test.js:
  • UserInterface/Base/Main.js:
  • UserInterface/Base/Setting.js:

(WI.isTechnologyPreviewBuild):
(WI.arePreviewFeaturesEnabled):

  • UserInterface/Views/SettingsTabContentView.js:

(WI.SettingsTabContentView.prototype._createExperimentalSettingsView):
In non-TechnologyPreview builds, if there are Preview Features provide a
setting switch that can be used to match the TechnologyPreview features.

1:25 PM Changeset in webkit [251378] by commit-queue@webkit.org
  • 7 edits
    7 adds in trunk

[SVG2]: Add 'auto' behavior to the 'width' and 'height' properties of the SVG <image> element
https://bugs.webkit.org/show_bug.cgi?id=202013

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-10-21
Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

  • web-platform-tests/svg/geometry/svg-image-intrinsic-size-with-cssstyle-auto-dynamic-image-change-expected.txt:
  • web-platform-tests/svg/geometry/svg-image-intrinsic-size-with-cssstyle-auto-expected.txt:

Source/WebCore:

The spec page is: https://www.w3.org/TR/SVG/geometry.html#Sizing

Handle the case if the 'width' or the 'height' of an SVG <image> or both
are missing.

Tests: svg/custom/image-width-height-auto-dynamic.svg

svg/custom/image-width-height-auto-initial.svg
svg/custom/image-width-height-length-initial.svg

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::calculateObjectBoundingBox const):
(WebCore::RenderSVGImage::updateImageViewport):

  • rendering/svg/RenderSVGImage.h:

LayoutTests:

  • svg/custom/image-width-height-auto-dynamic-expected.svg: Added.
  • svg/custom/image-width-height-auto-dynamic.svg: Added.
  • svg/custom/image-width-height-auto-initial-expected.svg: Added.
  • svg/custom/image-width-height-auto-initial.svg: Added.
  • svg/custom/image-width-height-length-initial-expected.svg: Added.
  • svg/custom/image-width-height-length-initial.svg: Added.
  • svg/custom/resources/100x200-green.png: Added.
1:19 PM Changeset in webkit [251377] by Wenson Hsieh
  • 23 edits
    8 adds in trunk

[Clipboard API] Implement ClipboardItem.getType() for platform clipboard items
https://bugs.webkit.org/show_bug.cgi?id=203168

Reviewed by Tim Horton.

Source/WebCore:

This patch completes support for ClipboardItem.getType().

Tests: editing/async-clipboard/clipboard-change-data-while-getting-type.html

editing/async-clipboard/clipboard-get-type-with-old-items.html
editing/async-clipboard/clipboard-item-get-type-basic.html
ClipboardTests.ReadMultipleItems

  • Modules/async-clipboard/Clipboard.cpp:

(WebCore::Clipboard::getType):

Implement getType(). If the given clipboard item is being tracked as one of the active clipboard items, then
allow it to read data from the platform pasteboard. We use existing pasteboard reading methods and classes
(PasteboardPlainText and WebContentMarkupReader) to ask the platform pasteboard for text and markup data,
respectively, and go through readURL() for "text/uri-list".

Before exposing any data to the page, we additionally check that the change count of the pasteboard is still
what we started with when setting up the current session. If this is not the case, we reject the promise and
immediately clear out the session.

(WebCore::Clipboard::activePasteboard):

  • Modules/async-clipboard/Clipboard.h:
  • dom/DataTransfer.h:

Drive-by tweak: make the WebContentReadingPolicy enum class narrower.

  • platform/Pasteboard.h:

Add an enum flag for allowing or ignoring the platform URL type when reading plain text from the platform
pasteboard. We use this in Clipboard::getType() to ignore URLs on the platform pasteboard when plain text, since
the plain text reader would otherwise prefer URLs over plain text by default, and read the URL type instead of
the plain text type.

  • platform/StaticPasteboard.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::read):

  • platform/ios/PasteboardIOS.mm:

(WebCore::Pasteboard::read):

  • platform/libwpe/PasteboardLibWPE.cpp:

(WebCore::Pasteboard::read):

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::read):

  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::read):

Tools:

Add support for the new layout tests, as well as a new API test.

  • DumpRenderTree/ios/UIScriptControllerIOS.h:
  • DumpRenderTree/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::copyText):

Implement UIScriptController.copyText in WebKit1. This is used in one of the new layout tests, which passes in
WebKit1 on macOS and iOS.

  • DumpRenderTree/mac/DumpRenderTreePasteboard.mm:

(-[LocalPasteboard declareTypes:owner:]):
(-[LocalPasteboard addTypes:owner:]):
(-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):

Adjust logic when declaring types on the platform pasteboard, such that it behaves more like the platform; when
declaring types, even if the owner doesn't change, the change count should still get bumped up by 1.

  • DumpRenderTree/mac/UIScriptControllerMac.h:
  • DumpRenderTree/mac/UIScriptControllerMac.mm:

(WTR::UIScriptControllerMac::copyText):

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm: Added.

(-[TestWKWebView readClipboard]):
(createWebViewForClipboardTests):
(writeMultipleObjectsToPlatformPasteboard):

Add a new API test to verify that clipboard items contain the right data when writing multiple items (each with
different sets of types) to the platform pasteboard using native APIs.

  • TestWebKitAPI/Tests/WebKitCocoa/clipboard.html: Added.
  • WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:

(-[LocalPasteboard declareTypes:owner:]):
(-[LocalPasteboard addTypes:owner:]):
(-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):

LayoutTests:

Add 3 new layout tests.

  • editing/async-clipboard/clipboard-change-data-while-getting-type-expected.txt: Added.
  • editing/async-clipboard/clipboard-change-data-while-getting-type.html: Added.

Add a layout test to verify that if the pasteboard changes right after the page has obtained clipboard items,
the page should not be able to fetch the new contents of the pasteboard using these clipboard items.

  • editing/async-clipboard/clipboard-get-type-with-old-items.html: Added.
  • editing/async-clipboard/clipboard-get-type-with-old-items-expected.txt: Added.

Add a layout test to verify that after attempting to get data from invalid (stale) items, the page is still
capable of reading data from valid clipboard items.

  • editing/async-clipboard/clipboard-item-get-type-basic-expected.txt: Added.
  • editing/async-clipboard/clipboard-item-get-type-basic.html: Added.

Add a layout test to verify that after writing multiple types to the clipboard using the DataTransfer API, we
should be able to read them back using the async clipboard API, as a single ClipboardItem, and also get data out
of the clipboard item using ClipboardItem.getType.

  • editing/async-clipboard/resources/async-clipboard-helpers.js:
  • platform/win/TestExpectations:
  • resources/ui-helper.js:

(window.UIHelper.async.copyText):
(window.UIHelper):

1:09 PM Changeset in webkit [251376] by Devin Rousso
  • 3 edits in trunk/Source/WebInspectorUI

Web Inspector: replace all uses of window.*Agent with a target-specific call
https://bugs.webkit.org/show_bug.cgi?id=201149

Reviewed by Matt Baker.

Most of these were changed in r251227, but a few appear to have slipped through the cracks.

  • UserInterface/Controllers/DebuggerManager.js:

(WI.DebuggerManager.prototype.debuggerDidResume):

  • UserInterface/Views/SourceCodeTextEditor.js:

(WI.SourceCodeTextEditor.prototype._createTypeTokenAnnotator):
(WI.SourceCodeTextEditor.prototype._createBasicBlockAnnotator):

1:00 PM Changeset in webkit [251375] by Simon Fraser
  • 4 edits in trunk/LayoutTests

scrollingcoordinator/ios/ui-scrolling-tree.html is a Flaky Failure on iPad
https://bugs.webkit.org/show_bug.cgi?id=203119
rdar://problem/52970947

Reviewed by Wenson Hsieh.

iPad viewport heuristics (WebPage::immediatelyShrinkToFitContent()) run on a zero-delay
timer after page load, which races with this test getting the UI-side scrolling tree
and makes the test flakey.

Fix by turning off the heuristics with "contentMode=mobile". Also fix the test
to use UIHelper to get the scrolling tree.

  • platform/ipad/TestExpectations:
  • platform/ipad/scrollingcoordinator/ios/ui-scrolling-tree-expected.txt:
  • scrollingcoordinator/ios/ui-scrolling-tree.html:
12:34 PM Changeset in webkit [251374] by Jonathan Bedard
  • 8 edits in trunk/Tools

Python 3: Add support in webkitpy.common.net
https://bugs.webkit.org/show_bug.cgi?id=202464

Reviewed by Dewei Zhu.

  • Scripts/test-webkitpy-python3: Add webkitpy.common.net.
  • Scripts/webkitpy/common/net/credentials_unittest.py: Replace raw_input with input for Python3.
  • Scripts/webkitpy/common/net/ewsserver.py:
  • Scripts/webkitpy/common/net/resultsjsonparser.py:

(ParsedJSONResults.init): Sort results by test name.

  • Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:

(test_basic): Sort results by test name.

  • Scripts/webkitpy/common/net/statusserver.py:

(StatusServer._fetch_url):

  • Scripts/webkitpy/common/net/unittestresults_unittest.py:
12:25 PM Changeset in webkit [251373] by Basuke Suzuki
  • 3 edits in trunk/Source/JavaScriptCore

[WinCairo][PlayStation] Add automation support for RemoteInspector SocketServer implementation.
https://bugs.webkit.org/show_bug.cgi?id=199070

Reviewed by Ross Kirsling.

Added handler for StartAutomationSession event from WebDriver and preparing for automation session.

  • inspector/remote/RemoteInspector.h:
  • inspector/remote/socket/RemoteInspectorSocket.cpp:

(Inspector::RemoteInspector::listingForAutomationTarget const):
(Inspector::RemoteInspector::sendAutomaticInspectionCandidateMessage):
(Inspector::RemoteInspector::requestAutomationSession):
(Inspector::RemoteInspector::dispatchMap):
(Inspector::RemoteInspector::startAutomationSession):

12:15 PM Changeset in webkit [251372] by mark.lam@apple.com
  • 5 edits in trunk/Source

Remove all uses of untagCodePtr in debugging code.
https://bugs.webkit.org/show_bug.cgi?id=203188
<rdar://problem/56453043>

Reviewed by Yusuke Suzuki.

Source/JavaScriptCore:

  • runtime/JSCPtrTag.cpp:

(JSC::tagForPtr):

Source/WTF:

We want the ability to always assert on failure to authenticate in untagCodePtr
(though we don't currently do that yet).

  • wtf/PtrTag.cpp:

(WTF::tagForPtr):

  • wtf/PtrTag.h:

(WTF::retagCodePtrImpl):
(WTF::tagCFunctionPtrImpl):
(WTF::untagCFunctionPtrImpl):
(WTF::assertIsCFunctionPtr):
(WTF::isTaggedWith):

12:06 PM Changeset in webkit [251371] by rmorisset@apple.com
  • 3 edits
    1 add in trunk

Post increment/decrement should only call ToNumber once
https://bugs.webkit.org/show_bug.cgi?id=202711

Reviewed by Saam Barati.

JSTests:

  • stress/postinc-custom-valueOf.js: Added.

(postInc):
(postDec):

Source/JavaScriptCore:

The problem is that we first called ToNumber on the object being incremented (to have the result that we'll eventually return), but we then do emitIncOrDec on the original object, which can call ToNumber again.
Instead we must do the ToNumber once, then copy its result, emitIncOrDec on the copy, put the copy back in the original location, and finally return the old value.
Since the result of ToNumber is guaranteed not to be an object, emitIncOrDec won't call ToNumber a second time.

  • bytecompiler/NodesCodegen.cpp:

(JSC::emitPostIncOrDec):

11:59 AM Changeset in webkit [251370] by Chris Dumez
  • 3 edits in trunk/Source/WebKit

Add more release logging for "Unexpectedly resumed" assertion
https://bugs.webkit.org/show_bug.cgi?id=203196

Reviewed by Geoffrey Garen.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::processDidResume):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::processTaskStateDidChange):

11:59 AM Changeset in webkit [251369] by Simon Fraser
  • 11 edits
    2 adds in trunk

[iOS WK2] Support hiding iframe scrollbars via ::-webkit-scrollbar style
https://bugs.webkit.org/show_bug.cgi?id=203178

Reviewed by Dean Jackson.
Source/WebCore:

::-webkit-scrollbar {

display: none;

}
is supported for overflow:scroll, but not for iframes. To make the latter work,
two fixes were necessary.

First, FrameView had to implement horizontalScrollbarHiddenByStyle()/verticalScrollbarHiddenByStyle().
This is a little tricky on iOS because we never create RenderScrollbars, so we have to consult
pseudo-styles directly; a bit of refactoring makes that cleaner.

Second, ScrollableAreaParameters was failing to check horizontalScrollbarHiddenByStyle/verticalScrollbarHiddenByStyle
in operator==, meaning that these data often didn't make it to the UI process.

Test: fast/scrolling/ios/scrollbar-hiding-iframes.html

  • page/FrameView.cpp:

(WebCore::FrameView::rootElementForCustomScrollbarPartStyle const):
(WebCore::FrameView::createScrollbar):
(WebCore::FrameView::styleHidesScrollbarWithOrientation const):
(WebCore::FrameView::horizontalScrollbarHiddenByStyle const):
(WebCore::FrameView::verticalScrollbarHiddenByStyle const):
(WebCore::FrameView::updateScrollCorner):

  • page/FrameView.h:
  • page/scrolling/ScrollingCoordinatorTypes.h:

(WebCore::ScrollableAreaParameters::operator== const):

  • platform/Scrollbar.h:

(WebCore::Scrollbar::isHiddenByStyle const):

  • rendering/RenderLayer.cpp:

(WebCore::scrollbarHiddenByStyle):

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::getScrollbarPseudoStyle const):
(WebCore::RenderScrollbar::isHiddenByStyle const):
(WebCore::RenderScrollbar::getScrollbarPseudoStyle): Deleted.

  • rendering/RenderScrollbar.h:

LayoutTests:

Tests that dumps the scrolling tree.

  • fast/scrolling/ios/scrollbar-hiding-iframes-expected.txt: Added.
  • fast/scrolling/ios/scrollbar-hiding-iframes.html: Added.
11:34 AM Changeset in webkit [251368] by aakash_jain@apple.com
  • 5 edits
    1 add in trunk/Tools

EWS should have a way to retry a patch
https://bugs.webkit.org/show_bug.cgi?id=196599

Reviewed by Jonathan Bedard.

  • BuildSlaveSupport/ews-app/ews/models/build.py:

(Build): Add the retried field to keep track of whether a build is requested to be retried or not.
(Build.set_retried): Method to set the retried field.

  • BuildSlaveSupport/ews-app/ews/templates/statusbubble.html: Added the 'Retry failed builds' button.
  • BuildSlaveSupport/ews-app/ews/views/retrypatch.py:

(RetryPatch.post): Added a check if the build is already retried. Also, set the retried flag appropriately.

  • BuildSlaveSupport/ews-app/ews/views/statusbubble.py:

(StatusBubble._build_bubble): Updated the status-bubble to in-progress while waiting for build to be retried.
(StatusBubble._build_bubbles_for_patch): Display the retry button only if there are failed builds.

  • BuildSlaveSupport/ews-app/ews/migrations/0002_build_retried.py: Added database migration.
11:15 AM UsingGitWithWebKit edited by Kocsen Chung
Update to use HTTPS URL for svn repository. (diff)
9:29 AM Changeset in webkit [251367] by youenn@apple.com
  • 11 edits
    4 adds
    2 deletes in trunk

Share code between AudioDestinationIOS and AudioDestinationMac
https://bugs.webkit.org/show_bug.cgi?id=203047
<rdar://problem/56340866>

Reviewed by Eric Carlson.

Source/WebCore:

Introduce AudioDestinationCocoa to share code between iOS and Mac.
Most code is now shared, except for the configuration of the audio unit which is slightly different between Mac and iOS.

Introduce MockAudioDestinationCocoa to allow more code coverage of the shared code.
This could also allow us to validate dynamic changes in frame rate, number of frames to process...
Add Internals API to enable the mock destination.

Covered by added test.

  • SourcesCocoa.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/audio/cocoa/AudioDestinationCocoa.cpp: Added.

(WebCore::AudioDestination::create):
(WebCore::AudioDestination::hardwareSampleRate):
(WebCore::AudioDestination::maxChannelCount):
(WebCore::AudioDestinationCocoa::AudioDestinationCocoa):
(WebCore::AudioDestinationCocoa::~AudioDestinationCocoa):
(WebCore::AudioDestinationCocoa::start):
(WebCore::AudioDestinationCocoa::stop):
(WebCore::AudioDestinationCocoa::setIsPlaying):
(WebCore::AudioDestinationCocoa::setAudioStreamBasicDescription):
(WebCore::assignAudioBuffersToBus):
(WebCore::AudioDestinationCocoa::render):
(WebCore::AudioDestinationCocoa::inputProc):

  • platform/audio/cocoa/AudioDestinationCocoa.h: Added.

(WebCore::AudioDestinationCocoa::outputUnit):

  • platform/audio/ios/AudioDestinationIOS.cpp:

(WebCore::AudioDestinationCocoa::configure):
(WebCore::AudioDestinationCocoa::processBusAfterRender):

  • platform/audio/ios/AudioDestinationIOS.h: Removed.
  • platform/audio/mac/AudioDestinationMac.cpp:

(WebCore::AudioDestinationCocoa::configure):
(WebCore::AudioDestinationCocoa::processBusAfterRender):

  • platform/audio/mac/AudioDestinationMac.h: Removed.
  • platform/mock/MockAudioDestinationCocoa.cpp: Added.

(WebCore::MockAudioDestinationCocoa::MockAudioDestinationCocoa):
(WebCore::MockAudioDestinationCocoa::start):
(WebCore::MockAudioDestinationCocoa::stop):
(WebCore::MockAudioDestinationCocoa::tick):

  • platform/mock/MockAudioDestinationCocoa.h: Added.
  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore::Internals::useMockAudioDestinationCocoa):

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • fast/mediastream/getUserMedia-webaudio-expected.txt:
  • fast/mediastream/getUserMedia-webaudio.html:
8:17 AM Changeset in webkit [251366] by Chris Dumez
  • 13 edits
    3 adds in trunk

XMLHttpRequest should not prevent entering the back/forward cache
https://bugs.webkit.org/show_bug.cgi?id=203107
<rdar://problem/56438647>

Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

Rebaseline a new WPT tests that are passing now that we properly check that the
Document is fully active in open().

  • web-platform-tests/xhr/open-url-multi-window-2-expected.txt:
  • web-platform-tests/xhr/open-url-multi-window-5-expected.txt:
  • web-platform-tests/xhr/open-url-multi-window-6-expected.txt:

Source/WebCore:

Improve XMLHttpRequest for back/forward cache suspension:

  1. We no longer cancel pending loads in the suspend() method as this may fire events.
  2. Simplify XMLHttpRequestProgressEventThrottle to use SuspendableTimers to dispatch events that are deferred by suspension or throttling.

Test: http/tests/navigation/page-cache-xhr-in-loading-iframe.html

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::XMLHttpRequest):
(WebCore::XMLHttpRequest::open):
Add check to throw a InvalidStateError if the associated document is not fully active,
as per https://xhr.spec.whatwg.org/#dom-xmlhttprequest-open (Step 2). This avoids
dispatching events after ActiveDOMObject::stop() has been called and brings a few more
passes on WPT tests.

(WebCore::XMLHttpRequest::dispatchEvent):
(WebCore::XMLHttpRequest::suspend):
(WebCore::XMLHttpRequest::resume):
(WebCore::XMLHttpRequest::shouldPreventEnteringBackForwardCache_DEPRECATED const): Deleted.
(WebCore::XMLHttpRequest::resumeTimerFired): Deleted.

  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequestProgressEventThrottle.cpp:

(WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchThrottledProgressEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchReadyStateChangeEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventWhenPossible):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchDeferredEventsAfterResuming):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchThrottledProgressEventTimerFired):
(WebCore::XMLHttpRequestProgressEventThrottle::suspend):
(WebCore::XMLHttpRequestProgressEventThrottle::resume):
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchEvent): Deleted.
(WebCore::XMLHttpRequestProgressEventThrottle::dispatchDeferredEvents): Deleted.
(WebCore::XMLHttpRequestProgressEventThrottle::fired): Deleted.
(WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch const): Deleted.

  • xml/XMLHttpRequestProgressEventThrottle.h:

LayoutTests:

Add more test coverage.

  • TestExpectations:
  • fast/dom/xmlhttprequest-constructor-in-detached-document-expected.txt:
  • fast/xmlhttprequest/xmlhttprequest-open-after-iframe-onload-remove-self.html:
  • http/tests/navigation/page-cache-xhr-in-loading-iframe-expected.txt: Added.
  • http/tests/navigation/page-cache-xhr-in-loading-iframe.html: Added.
  • http/tests/navigation/resources/page-cache-xhr-in-loading-iframe.html: Added.
6:28 AM Changeset in webkit [251365] by aboya@igalia.com
  • 27 edits
    1 copy
    2 adds in trunk

[MSE][GStreamer] Revert WebKitMediaSrc rework temporarily
https://bugs.webkit.org/show_bug.cgi?id=203078

Reviewed by Carlos Garcia Campos.

.:

  • Source/cmake/GStreamerChecks.cmake:

Source/WebCore:

While the WebKitMediaSrc rework fixed a number of tests and introduced
design improvements in MSE, it also exposed a number of bugs related
to the playbin3 switch.

Fixing these has been turned tricky, so in order to not keep known
user-facing bugs, I'm reverting it for now until a workable solution
is available.

  • platform/GStreamer.cmake:
  • platform/graphics/gstreamer/GRefPtrGStreamer.cpp:

(WTF::refGPtr<GstMiniObject>): Deleted.
(WTF::derefGPtr<GstMiniObject>): Deleted.

  • platform/graphics/gstreamer/GRefPtrGStreamer.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::playbackPosition const):
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
(WebCore::MediaPlayerPrivateGStreamer::paused const):
(WebCore::MediaPlayerPrivateGStreamer::updateTracks):
(WebCore::MediaPlayerPrivateGStreamer::enableTrack):
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
(WebCore::MediaPlayerPrivateGStreamer::videoSinkCapsChangedCallback):
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideoCaps):
(WebCore::MediaPlayerPrivateGStreamer::sourceSetup):
(WebCore::MediaPlayerPrivateGStreamer::handleSyncMessage):
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(WebCore::MediaPlayerPrivateGStreamer::configurePlaySink):
(WebCore::MediaPlayerPrivateGStreamer::invalidateCachedPosition): Deleted.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::naturalSize const):
(WebCore::MediaPlayerPrivateGStreamerBase::sizeChanged):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::naturalSizeFromCaps const): Deleted.
(WebCore::MediaPlayerPrivateGStreamerBase::doSamplesHaveDifferentNaturalSizes const): Deleted.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
  • platform/graphics/gstreamer/MediaSampleGStreamer.cpp:

(WebCore::MediaSampleGStreamer::MediaSampleGStreamer):

  • platform/graphics/gstreamer/mse/AppendPipeline.cpp:

(WebCore::AppendPipeline::appsinkNewSample):
(WebCore::AppendPipeline::connectDemuxerSrcPadToAppsink):

  • platform/graphics/gstreamer/mse/AppendPipeline.h:

(WebCore::AppendPipeline::appsinkCaps):
(WebCore::AppendPipeline::track):
(WebCore::AppendPipeline::streamType):

  • platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:

(WebCore::MediaPlayerPrivateGStreamerMSE::~MediaPlayerPrivateGStreamerMSE):
(WebCore::MediaPlayerPrivateGStreamerMSE::load):
(WebCore::MediaPlayerPrivateGStreamerMSE::pause):
(WebCore::MediaPlayerPrivateGStreamerMSE::seek):
(WebCore::MediaPlayerPrivateGStreamerMSE::configurePlaySink):
(WebCore::MediaPlayerPrivateGStreamerMSE::changePipelineState):
(WebCore::MediaPlayerPrivateGStreamerMSE::notifySeekNeedsDataForTime):
(WebCore::MediaPlayerPrivateGStreamerMSE::doSeek):
(WebCore::MediaPlayerPrivateGStreamerMSE::maybeFinishSeek):
(WebCore::MediaPlayerPrivateGStreamerMSE::updatePlaybackRate):
(WebCore::MediaPlayerPrivateGStreamerMSE::seeking const):
(WebCore::MediaPlayerPrivateGStreamerMSE::setReadyState):
(WebCore::MediaPlayerPrivateGStreamerMSE::waitForSeekCompleted):
(WebCore::MediaPlayerPrivateGStreamerMSE::seekCompleted):
(WebCore::MediaPlayerPrivateGStreamerMSE::sourceSetup):
(WebCore::MediaPlayerPrivateGStreamerMSE::updateStates):
(WebCore::MediaPlayerPrivateGStreamerMSE::asyncStateChangeDone):
(WebCore::MediaPlayerPrivateGStreamerMSE::mediaSourceClient):
(WebCore::MediaPlayerPrivateGStreamerMSE::unblockDurationChanges):
(WebCore::MediaPlayerPrivateGStreamerMSE::durationChanged):
(WebCore::MediaPlayerPrivateGStreamerMSE::trackDetected):
(WebCore::MediaPlayerPrivateGStreamerMSE::markEndOfStream):
(WebCore::MediaPlayerPrivateGStreamerMSE::currentMediaTime const):
(WebCore::MediaPlayerPrivateGStreamerMSE::play): Deleted.
(WebCore::MediaPlayerPrivateGStreamerMSE::reportSeekCompleted): Deleted.
(WebCore::MediaPlayerPrivateGStreamerMSE::didEnd): Deleted.

  • platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
  • platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.cpp:

(WebCore::MediaSourceClientGStreamerMSE::addSourceBuffer):
(WebCore::MediaSourceClientGStreamerMSE::markEndOfStream):
(WebCore::MediaSourceClientGStreamerMSE::removedFromMediaSource):
(WebCore::MediaSourceClientGStreamerMSE::flush):
(WebCore::MediaSourceClientGStreamerMSE::enqueueSample):
(WebCore::MediaSourceClientGStreamerMSE::allSamplesInTrackEnqueued):
(WebCore::MediaSourceClientGStreamerMSE::isReadyForMoreSamples): Deleted.
(WebCore::MediaSourceClientGStreamerMSE::notifyClientWhenReadyForMoreSamples): Deleted.

  • platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.h:
  • platform/graphics/gstreamer/mse/MediaSourceGStreamer.cpp:

(WebCore::MediaSourceGStreamer::markEndOfStream):
(WebCore::MediaSourceGStreamer::unmarkEndOfStream):
(WebCore::MediaSourceGStreamer::waitForSeekCompleted):
(WebCore::MediaSourceGStreamer::seekCompleted):

  • platform/graphics/gstreamer/mse/MediaSourceGStreamer.h:
  • platform/graphics/gstreamer/mse/PlaybackPipeline.cpp: Added.

(getStreamByTrackId):
(getStreamBySourceBufferPrivate):
(pushSample):
(WebCore::PlaybackPipeline::setWebKitMediaSrc):
(WebCore::PlaybackPipeline::webKitMediaSrc):
(WebCore::PlaybackPipeline::addSourceBuffer):
(WebCore::PlaybackPipeline::removeSourceBuffer):
(WebCore::PlaybackPipeline::attachTrack):
(WebCore::PlaybackPipeline::reattachTrack):
(WebCore::PlaybackPipeline::notifyDurationChanged):
(WebCore::PlaybackPipeline::markEndOfStream):
(WebCore::PlaybackPipeline::flush):
(WebCore::PlaybackPipeline::enqueueSample):
(WebCore::PlaybackPipeline::allSamplesInTrackEnqueued):
(WebCore::PlaybackPipeline::pipeline):

  • platform/graphics/gstreamer/mse/PlaybackPipeline.h: Copied from Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceClientGStreamerMSE.h.
  • platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp:

(WebCore::SourceBufferPrivateGStreamer::enqueueSample):
(WebCore::SourceBufferPrivateGStreamer::isReadyForMoreSamples):
(WebCore::SourceBufferPrivateGStreamer::setReadyForMoreSamples):
(WebCore::SourceBufferPrivateGStreamer::notifyReadyForMoreSamples):
(WebCore::SourceBufferPrivateGStreamer::notifyClientWhenReadyForMoreSamples):

  • platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h:
  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:

(disabledAppsrcNeedData):
(disabledAppsrcEnoughData):
(disabledAppsrcSeekData):
(enabledAppsrcEnoughData):
(enabledAppsrcSeekData):
(getStreamByAppsrc):
(webkitMediaSrcChain):
(webkit_media_src_init):
(webKitMediaSrcFinalize):
(webKitMediaSrcSetProperty):
(webKitMediaSrcGetProperty):
(webKitMediaSrcDoAsyncStart):
(webKitMediaSrcDoAsyncDone):
(webKitMediaSrcChangeState):
(webKitMediaSrcGetSize):
(webKitMediaSrcQueryWithParent):
(webKitMediaSrcUpdatePresentationSize):
(webKitMediaSrcLinkStreamToSrcPad):
(webKitMediaSrcLinkSourcePad):
(webKitMediaSrcFreeStream):
(webKitMediaSrcCheckAllTracksConfigured):
(webKitMediaSrcUriGetType):
(webKitMediaSrcGetProtocols):
(webKitMediaSrcGetUri):
(webKitMediaSrcSetUri):
(webKitMediaSrcUriHandlerInit):
(seekNeedsDataMainThread):
(notifyReadyForMoreSamplesMainThread):
(webKitMediaSrcSetMediaPlayerPrivate):
(webKitMediaSrcSetReadyForSamples):
(webKitMediaSrcPrepareSeek):
(WebKitMediaSrcPrivate::streamByName): Deleted.
(): Deleted.
(WTF::refGPtr<WebKitMediaSrcPad>): Deleted.
(WTF::derefGPtr<WebKitMediaSrcPad>): Deleted.
(webkit_media_src_pad_class_init): Deleted.
(Stream::Stream): Deleted.
(Stream::StreamingMembers::StreamingMembers): Deleted.
(Stream::StreamingMembers::durationEnqueued const): Deleted.
(findPipeline): Deleted.
(webkit_media_src_class_init): Deleted.
(debugProbe): Deleted.
(copyCollectionAndAddStream): Deleted.
(copyCollectionWithoutStream): Deleted.
(gstStreamType): Deleted.
(webKitMediaSrcAddStream): Deleted.
(webKitMediaSrcRemoveStream): Deleted.
(webKitMediaSrcActivateMode): Deleted.
(webKitMediaSrcPadLinked): Deleted.
(webKitMediaSrcStreamNotifyLowWaterLevel): Deleted.
(webKitMediaSrcLoop): Deleted.
(webKitMediaSrcEnqueueObject): Deleted.
(webKitMediaSrcEnqueueSample): Deleted.
(webKitMediaSrcEnqueueEvent): Deleted.
(webKitMediaSrcEndOfStream): Deleted.
(webKitMediaSrcIsReadyForMoreSamples): Deleted.
(webKitMediaSrcNotifyWhenReadyForMoreSamples): Deleted.
(webKitMediaSrcStreamFlushStart): Deleted.
(webKitMediaSrcStreamFlushStop): Deleted.
(webKitMediaSrcFlush): Deleted.
(webKitMediaSrcSeek): Deleted.
(countStreamsOfType): Deleted.

  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h:
  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamerPrivate.h: Added.

Tools:

  • Scripts/webkitpy/style/checker.py:

LayoutTests:

  • platform/gtk/TestExpectations:
2:53 AM Changeset in webkit [251364] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Mark some more WTF unit tests as slow for GTK and WPE

  • TestWebKitAPI/glib/TestExpectations.json:
2:30 AM Changeset in webkit [251363] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit

[GTK] Objects category in emoji picker is empty
https://bugs.webkit.org/show_bug.cgi?id=203189

Reviewed by Adrian Perez de Castro.

There's a typo in the first emopi name of objects section.

  • UIProcess/API/gtk/WebKitEmojiChooser.cpp:

(webkitEmojiChooserSetupEmojiSections): uted speaker -> muted speaker

2:21 AM Changeset in webkit [251362] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit

[GTK][WPE] IconDatabase is not thread safe yet
https://bugs.webkit.org/show_bug.cgi?id=202980

Reviewed by Adrian Perez de Castro.

Current implementation is safer, but we still need to protect members used by both threads.

  • UIProcess/API/glib/IconDatabase.cpp:

(WebKit::IconDatabase::populatePageURLToIconURLMap):
(WebKit::IconDatabase::clearLoadedIconsTimerFired):
(WebKit::IconDatabase::checkIconURLAndSetPageURLIfNeeded):
(WebKit::IconDatabase::loadIconForPageURL):
(WebKit::IconDatabase::iconURLForPageURL):
(WebKit::IconDatabase::setIconForPageURL):
(WebKit::IconDatabase::clear):

  • UIProcess/API/glib/IconDatabase.h:
1:25 AM Changeset in webkit [251361] by timothy_horton@apple.com
  • 43 edits in trunk/Source

Clean up some includes to improve WebKit2 build speed
https://bugs.webkit.org/show_bug.cgi?id=203071

Reviewed by Wenson Hsieh.

Source/WebCore:

No new tests, just shuffling code around.

  • bindings/js/WindowProxy.cpp:

(WebCore::WindowProxy::WindowProxy):
(WebCore::WindowProxy::~WindowProxy):
(WebCore::WindowProxy::detachFromFrame):
(WebCore::WindowProxy::destroyJSWindowProxy):
(WebCore::WindowProxy::createJSWindowProxy):
(WebCore::WindowProxy::jsWindowProxiesAsVector const):
(WebCore::WindowProxy::clearJSWindowProxiesNotMatchingDOMWindow):
(WebCore::WindowProxy::setDOMWindow):
(WebCore::WindowProxy::attachDebugger):
(WebCore::WindowProxy::jsWindowProxies const):
(WebCore::WindowProxy::releaseJSWindowProxies):
(WebCore::WindowProxy::setJSWindowProxies):

  • bindings/js/WindowProxy.h:

(WebCore::WindowProxy::existingJSWindowProxy const):
(WebCore::WindowProxy::jsWindowProxies const): Deleted.
(WebCore::WindowProxy::releaseJSWindowProxies): Deleted.
(WebCore::WindowProxy::setJSWindowProxies): Deleted.

  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(WebCore::IOSurface::~IOSurface):

Source/WebKit:

This is worth about 6% on WebKit2, and unlocks another 8% improvement
down the line (but which is less mechanical).

  • NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
  • NetworkProcess/NetworkSocketChannel.h:
  • NetworkProcess/WebStorage/StorageArea.h:
  • NetworkProcess/WebStorage/StorageManager.cpp:
  • NetworkProcess/WebStorage/StorageManagerSet.cpp:
  • Platform/IPC/Connection.h:
  • Shared/API/APIURL.h:
  • Shared/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h:
  • Shared/WebCoreArgumentCoders.cpp:
  • Shared/WebCoreArgumentCoders.h:
  • UIProcess/API/APIAttachment.h:
  • UIProcess/API/Cocoa/_WKInspector.mm:
  • UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h:
  • UIProcess/TextCheckerCompletion.cpp:
  • UIProcess/TextCheckerCompletion.h:
  • UIProcess/UserContent/WebUserContentControllerProxy.cpp:

(WebKit::WebUserContentControllerProxy::addNetworkProcess):
(WebKit::WebUserContentControllerProxy::removeNetworkProcess):

  • UIProcess/UserContent/WebUserContentControllerProxy.h:

(WebKit::WebUserContentControllerProxy::addNetworkProcess): Deleted.
(WebKit::WebUserContentControllerProxy::removeNetworkProcess): Deleted.

  • WebProcess/Automation/WebAutomationSessionProxy.h:
  • WebProcess/Network/NetworkProcessConnection.cpp:
  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:
  • WebProcess/Plugins/Plugin.cpp:
  • WebProcess/Plugins/Plugin.h:
  • WebProcess/WebProcess.cpp:
12:16 AM Changeset in webkit [251360] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

[GTK][WPE] Check we don't leak the WebKitWebContext in all tests
https://bugs.webkit.org/show_bug.cgi?id=202981

Reviewed by Žan Doberšek.

Also include the number of references left in leaks report.

  • TestWebKitAPI/glib/WebKitGLib/TestMain.h:

(Test::Test):
(Test::~Test):

12:16 AM Changeset in webkit [251359] by jh718.park@samsung.com
  • 2 edits in trunk/Source/WebCore

[GTK] Unreviewed. Fix build warning: unused parameter ‘Foo’ [-Wunused-parameter] since r251320.

Patch by Joonghun Park <jh718.park@samsung.com> on 2019-10-21

  • dom/Element.cpp:

(WebCore::shouldIgnoreMouseEvent):

Oct 20, 2019:

6:55 PM Changeset in webkit [251358] by Brent Fulgham
  • 4 edits
    1 copy in trunk/Source/WebKit

Improve serialization logic
https://bugs.webkit.org/show_bug.cgi?id=203039
<rdar://problem/55631691>

Reviewed by Alex Christensen.

Check that the SecItemRequestData only contains relevant types for
CFNetwork uses.

  • Platform/spi/Cocoa/SecItemSPI.h: Added.
  • Shared/mac/SecItemRequestData.cpp:

(WebKit::arrayContainsInvalidType): Added.
(WebKit::dictionaryContainsInvalidType): Added.
(WebKit::validTypeIDs): Added.
(WebKit::isValidType): Added.
(WebKit::SecItemRequestData::decode): Check types during decode.

  • Shared/mac/SecItemRequestData.h:
  • WebKit.xcodeproj/project.pbxproj:
6:44 PM Changeset in webkit [251357] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed, drop debug logging that was inadvertently committed with r251327.

  • history/BackForwardCache.cpp:
5:44 PM Changeset in webkit [251356] by bshafiei@apple.com
  • 3 edits in branches/safari-608-branch/Source/WebCore

Cherry-pick r251188. rdar://problem/56340816

WebAudioSourceProviderAVFObjC::provideInput should set its WebAudioBufferList parameters correctly
https://bugs.webkit.org/show_bug.cgi?id=202930
<rdar://problem/56006776>

Reviewed by Eric Carlson.

Source/WebCore:

There is a time where the bus channel number and audio source channel numbers may be different.
In case the bus channel number is less than the audio source channel number, initialization of
the WebAudioBufferList might not be fully done.
In that case, output silence and return early.
Reduce the number of frames to process based on the number of frames the output audio bus plans to process.

Partially covered by new API test (this a race so we cannot reproduce the crash easily).

  • Modules/webaudio/MediaStreamAudioSourceNode.cpp: (WebCore::MediaStreamAudioSourceNode::process): Make sure to process the number of frames the output bus expect.
  • platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm: (WebCore::WebAudioSourceProviderAVFObjC::provideInput):

Tools:

Add a test that has an audio track that goes from 1 to 2 channels while being piped to a WebAudio pipeline.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit/GetUserMedia.mm: (-[GUMMessageHandler userContentController:didReceiveScriptMessage:]): (TestWebKitAPI::TEST):
  • TestWebKitAPI/Tests/WebKit/getUserMedia-webaudio.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@251188 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5:44 PM Changeset in webkit [251355] by bshafiei@apple.com
  • 2 edits in branches/safari-608-branch/Source/WebKit

Cherry-pick r250773. rdar://problem/56271900

WebPageProxy::updatePlayingMediaDidChange should protect from a null m_userMediaPermissionRequestManager
https://bugs.webkit.org/show_bug.cgi?id=202628
<rdar://problem/55935091>

Reviewed by Eric Carlson.

On process swap on navigation or process crash, m_userMediaPermissionRequestManager is made null.
At the same time, the media state is set back to not playing.
Future calls of updatePlayingMediaDidChange should not have any capture state change until getUserMedia/getDisplayMedia
is called, which would create m_userMediaPermissionRequestManager.
But this assumption is not always true given that the media state is computed as process-wide in MediaStreamTrack::captureState on iOS.
The above behavior is fixed as part of https://bugs.webkit.org/show_bug.cgi?id=202627.
Since the call to updatePlayingMediaDidChange is triggered straight from IPC, it should not be trusted and a null check should be added.

  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::updatePlayingMediaDidChange):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250773 268f45cc-cd09-0410-ab3c-d52691b4dbfc

5:44 PM Changeset in webkit [251354] by bshafiei@apple.com
  • 5 edits
    1 add in branches/safari-608-branch

Cherry-pick r249538. rdar://problem/56426429

LazyClassStructure::setConstructor should not store the constructor to the global object
https://bugs.webkit.org/show_bug.cgi?id=201484
<rdar://problem/50400451>

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/web-assembly-constructors-should-not-override-global-object-property.js: Added.

Source/JavaScriptCore:

LazyClassStructure::setConstructor sets the constructor as a property of the global object.
This became a problem when it started being used for WebAssembly constructors, such as Module
and Instance, since they are properties of the WebAssembly object, not the global object. That
resulted in properties of the global object replaced whenever a lazy WebAssembly constructor
was first accessed. e.g.

globalThis.Module = x;
WebAssembly.Module;
globalThis.Module === WebAssembly.Module;

  • runtime/LazyClassStructure.cpp: (JSC::LazyClassStructure::Initializer::setConstructor):
  • runtime/LazyClassStructure.h:
  • runtime/Lookup.h: (JSC::reifyStaticProperty):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249538 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4:40 PM Changeset in webkit [251353] by bshafiei@apple.com
  • 37 edits
    2 adds in branches/safari-608-branch

Apply patch. rdar://problem/56427498

4:24 PM Changeset in webkit [251352] by bshafiei@apple.com
  • 1 edit in branches/safari-608-branch/Source/WebKit/UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.h

Apply patch. rdar://problem/55954224

10:33 AM Changeset in webkit [251351] by bshafiei@apple.com
  • 1 edit in branches/safari-608-branch/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp

Unreviewed build fix. rdar://problem/55927251

10:33 AM Changeset in webkit [251350] by bshafiei@apple.com
  • 16 edits
    2 copies
    1 move
    3 adds in branches/safari-608-branch

Cherry-pick r250589. rdar://problem/55927251

Storage Access API: document.hasStorageAccess() should return true when the cookie policy allows access
https://bugs.webkit.org/show_bug.cgi?id=202435
<rdar://problem/55718526>

Reviewed by Brent Fulgham.

Source/WebCore:

WebKit's Storage Access API implementation has so far only looked at whether ITP is
blocking cookie access or not. However, the default cookie policy is still in
effect underneath ITP. document.hasStorageAccess() should return true if the
third-party:
a) is not classified by ITP, and
b) has cookies which implies it can use cookies as third-party according to the
default cookie policy.

Tests: http/tests/storageAccess/has-storage-access-false-by-default-ephemeral.html

http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral.html
http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies.html

  • platform/network/NetworkStorageSession.h:
  • platform/network/cocoa/NetworkStorageSessionCocoa.mm: (WebCore::NetworkStorageSession::hasCookies const):
  • platform/network/curl/NetworkStorageSessionCurl.cpp: (WebCore::NetworkStorageSession::hasCookies const):

Not yet implemented. Always says false.

  • platform/network/soup/NetworkStorageSessionSoup.cpp: (WebCore::NetworkStorageSession::hasCookies const):

Not yet implemented. Always says false.

Source/WebKit:

WebKit's Storage Access API implementation has so far only looked at whether ITP is
blocking cookie access or not. However, the default cookie policy is still in
effect underneath ITP. document.hasStorageAccess() should return true if the
third-party:
a) is not classified by ITP, and
b) has cookies which implies it can use cookies as third-party according to the
default cookie policy.

  • NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::hasStorageAccess):
  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp: (WebKit::WebResourceLoadStatisticsStore::hasCookies):
  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
  • NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::hasStorageAccess):
  • NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::registrableDomainsWithWebsiteData):

Tools:

This change makes sure topPrivatelyControlledDomain() correctly handles domains
with leading dots, as often used in cookie domains.

  • TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp: (TestWebKitAPI::TEST_F):

LayoutTests:

WebKit's Storage Access API implementation has so far only looked at whether ITP is
blocking cookie access or not. However, the default cookie policy is still in
effect underneath ITP. document.hasStorageAccess() should return true if the
third-party:
a) is not classified by ITP, and
b) has cookies which implies it can use cookies as third-party according to the
default cookie policy.

  • http/tests/storageAccess/has-storage-access-false-by-default-ephemeral-expected.txt: Added.
  • http/tests/storageAccess/has-storage-access-false-by-default-ephemeral.html: Copied from LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html.
  • http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral-expected.txt: Added.
  • http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-ephemeral.html: Copied from LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html.
  • http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies-expected.txt: Added.
  • http/tests/storageAccess/has-storage-access-true-if-third-party-has-cookies.html: Renamed from LayoutTests/http/tests/storageAccess/has-storage-access-true-if-feature-off.html.
  • platform/ios/TestExpectations:
  • platform/mac-wk2/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250589 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251349] by bshafiei@apple.com
  • 8 edits
    2 copies
    2 adds in branches/safari-608-branch

Cherry-pick r251086. rdar://problem/56237429

[Cocoa] REGRESSION (r245672): Contenteditable with optical sizing freezes Safari
https://bugs.webkit.org/show_bug.cgi?id=202262

Reviewed by Tim Horton.

Source/WebKit:

r250640 didn't go far enough. We need to apply the same fix everywhere [NSFontDescriptor fontDescriptorWithFontAttributes:] is called.

  • Shared/Cocoa/ArgumentCodersCocoa.mm: (IPC::decodeFontInternal):
  • Shared/Cocoa/CoreTextHelpers.h: Added.
  • Shared/Cocoa/CoreTextHelpers.mm: Added. (fontDescriptorWithFontAttributes):
  • SourcesCocoa.txt:
  • UIProcess/Cocoa/WebViewImpl.mm: (WebKit::WebViewImpl::updateFontManagerIfNeeded):
  • UIProcess/mac/WebPopupMenuProxyMac.mm: (WebKit::WebPopupMenuProxyMac::showPopupMenu):
  • WebKit.xcodeproj/project.pbxproj:

LayoutTests:

  • fast/forms/contenteditable-font-optical-size-expected.txt: Added.
  • fast/forms/contenteditable-font-optical-size.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@251086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251348] by bshafiei@apple.com
  • 12 edits in branches/safari-608-branch

Cherry-pick r250887. rdar://problem/56061121

Partially undo r250811
https://bugs.webkit.org/show_bug.cgi?id=202715
<rdar://problem/56084287>

Reviewed by Chris Dumez.

Source/WebCore:

This patch changes the SerializedScriptValue to always wrap CryptoKey objects again.
CryptoKey objects could belong to an array or another object. In those cases, IDBObjectStore
cannot set the flag for the embedded Cryptokey objects. Neither can postMessage to unset
the flag. Therefore, there is no way to separate the serialization process into two and
this patch restores the old behaviour. However, the hardening part of r250811 is kept
and therefore the crash should still be prevented.

No new test, updated existing test

  • Modules/indexeddb/IDBObjectStore.cpp: (WebCore::IDBObjectStore::putOrAdd): (WebCore::JSC::setIsWrappingRequiredForCryptoKey): Deleted.
  • bindings/js/SerializedScriptValue.cpp: (WebCore::CloneSerializer::dumpIfTerminal): (WebCore::CloneDeserializer::readTerminal):
  • crypto/CryptoKey.h: (WebCore::CryptoKey::allows const): (WebCore::CryptoKey::isWrappingRequired const): Deleted. (WebCore::CryptoKey::setIsWrappingRequired): Deleted. (): Deleted.
  • dom/ScriptExecutionContext.h:

Tools:

  • TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html: Modified to crash if SerializedScriptValue doesn't wrap CryptoKey objects.

LayoutTests:

Some rebaselines.

  • crypto/workers/subtle/ec-postMessage-worker-expected.txt:
  • crypto/workers/subtle/hrsa-postMessage-worker-expected.txt:
  • crypto/workers/subtle/rsa-postMessage-worker-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250887 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251347] by bshafiei@apple.com
  • 3 edits in branches/safari-608-branch/LayoutTests

Cherry-pick r250844. rdar://problem/56061121

Unreviewed, test gardening

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250844 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251346] by bshafiei@apple.com
  • 3 edits
    2 adds in branches/safari-608-branch

Cherry-pick r250929. rdar://problem/56280990

RunResolver::rangeForRendererWithOffsets should check for range end
https://bugs.webkit.org/show_bug.cgi?id=202761
<rdar://problem/55917924>

Reviewed by Antti Koivisto.

Source/WebCore:

This patch ensures that when rangeForRenderer comes back with a collapsed run (empty range), rangeForRendererWithOffsets returns an empty range as well.

Test: fast/text/simple-line-layout-range-check-end.html

  • rendering/SimpleLineLayoutResolver.cpp: (WebCore::SimpleLineLayout::RunResolver::rangeForRendererWithOffsets const):

LayoutTests:

  • fast/text/simple-line-layout-range-check-end-expected.txt: Added.
  • fast/text/simple-line-layout-range-check-end.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250929 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251345] by bshafiei@apple.com
  • 5 edits in branches/safari-608-branch

Cherry-pick r250833. rdar://problem/56280706

Apply patch. rdar://problem/55920073

git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-608.3.10.1-branch@250833 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251344] by bshafiei@apple.com
  • 23 edits
    3 adds in branches/safari-608-branch

Cherry-pick r250811. rdar://problem/56061121

Only wrapping CryptoKeys for IDB during serialization
https://bugs.webkit.org/show_bug.cgi?id=202500
<rdar://problem/52445927>

Reviewed by Chris Dumez.

Source/WebCore:

Wrapping CryptoKeys during IDB serialization is a legacy request from Netflix when WebKit was an
early adopter. It is not necessary for other kinds of serialization. However, given existing keys
stored in users' idb are wrapped, the wrapping/unwrapping mechanism cannot be easily discarded.
Therefore, this patch restricts the wrapping/unwrapping mechanism to idb only.

To do so, a isWrappingRequired flag is added to CryptoKey such that whenever idb sees a CryptoKey,
it can set it. SerializedScriptValue will then only wrap a CryptoKey when this flag is set. Otherwise,
a new tag UnwrappedCryptoKeyTag is used to store unwrapped CryptoKeys in order to keep the old CryptoKeyTag
binaries intact. For deserialization, each type will be deserialized differently.

Besides the above, this patch also hardens WorkerGlobalScope::wrapCryptoKey/unwrapCryptoKey for
any potential racy issues. CryptoBooleanContainer is introduced to capture boolean in the lambda.
workerGlobalScope is replaced with workerMessagingProxy. Now, every variables captured in the lambdas
should be either a copy or a thread safe ref of the original object.

Test: crypto/workers/subtle/aes-indexeddb.html

  • Modules/indexeddb/IDBObjectStore.cpp: (WebCore::JSC::setIsWrappingRequiredForCryptoKey): (WebCore::IDBObjectStore::putOrAdd):
  • bindings/js/SerializedScriptValue.cpp: (WebCore::CloneSerializer::dumpIfTerminal): (WebCore::CloneDeserializer::readTerminal):
  • crypto/CryptoKey.h: (WebCore::CryptoKey::isWrappingRequired const): (WebCore::CryptoKey::setIsWrappingRequired):
  • dom/ScriptExecutionContext.h:
  • workers/WorkerGlobalScope.cpp: (WebCore::CryptoBooleanContainer::create): (WebCore::CryptoBooleanContainer::boolean const): (WebCore::CryptoBooleanContainer::setBoolean): (WebCore::WorkerGlobalScope::wrapCryptoKey): (WebCore::WorkerGlobalScope::unwrapCryptoKey):
  • workers/WorkerGlobalScope.h:
  • workers/WorkerLoaderProxy.h: (WebCore::WorkerLoaderProxy::isWorkerMessagingProxy const):
  • workers/WorkerMessagingProxy.h: (isType):

Tools:

Modifies IndexedDB.StructuredCloneBackwardCompatibility test to include CryptoKeys.

  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.mm: (-[StructuredCloneBackwardCompatibilityNavigationDelegate _webCryptoMasterKeyForWebView:]): (TEST):
  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3:
  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm:
  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal:
  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibilityRead.html:
  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibilityWrite.html:

LayoutTests:

Adds a new test aes-indexeddb.html to do idb in workers and makes
other tests more deterministic.

  • crypto/workers/subtle/aes-indexeddb-expected.txt: Added.
  • crypto/workers/subtle/aes-indexeddb.html: Added.
  • crypto/workers/subtle/ec-postMessage-worker-expected.txt:
  • crypto/workers/subtle/ec-postMessage-worker.html:
  • crypto/workers/subtle/hrsa-postMessage-worker-expected.txt:
  • crypto/workers/subtle/hrsa-postMessage-worker.html:
  • crypto/workers/subtle/resources/aes-indexeddb.js: Added.
  • crypto/workers/subtle/rsa-postMessage-worker-expected.txt:
  • crypto/workers/subtle/rsa-postMessage-worker.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250811 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251343] by bshafiei@apple.com
  • 11 edits in branches/safari-608-branch/Source/WebKit

Cherry-pick r250780. rdar://problem/56061126

Provide options for DTTZ to happen in more situations
https://bugs.webkit.org/show_bug.cgi?id=202634
<rdar://problem/55732762>

Reviewed by Antoine Quint.

Add two options that can be enabled to trigger double tap zooming
in more places.

Firstly, an option to keep listening for a double-tap-to-zoom if the
first tap found a click handler on the body or document element. The
tap will still be dispatched. This is probably the most common case
for disabling a DTTZ.

Secondly, an option to always keep listening for a double-tap-to-zoom,
even if there was a clickable (non-root) element under the first tap.

  • Shared/WebPreferences.yaml: Add ZoomOnDoubleTapWhenRoot and AlwaysZoomOnDoubleTap.
  • UIProcess/PageClient.h: The message from the WebProcess now tells the UIProcess if the tapped element was a root-level (document or body).
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm: (WebKit::PageClientImpl::handleSmartMagnificationInformationForPotentialTap):
  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _endPotentialTapAndEnableDoubleTapGesturesIfNecessary]): (-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:nodeIsRootLevel:]): Handle the two new options.
  • UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::handleSmartMagnificationInformationForPotentialTap):
  • WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::potentialTapAtPosition): Check if the tap was on a root-level element.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250780 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251342] by bshafiei@apple.com
  • 6 edits in branches/safari-608-branch/Source/WebKit

Cherry-pick r250755. rdar://problem/56061126

Use a better name than allowFastClicksEverywhere
https://bugs.webkit.org/show_bug.cgi?id=202607
<rdar://problem/55997133>

Reviewed by Tim Horton.

This preference name is quite confusing. Change it to
PreferFasterClickOverDoubleTap.

  • Shared/WebPreferences.yaml:
  • Shared/WebPreferencesDefaultValues.h:
  • UIProcess/WebPageProxy.h: (WebKit::WebPageProxy::preferFasterClickOverDoubleTap const): (WebKit::WebPageProxy::allowsFastClicksEverywhere const): Deleted.
  • UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]):
  • UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250755 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251341] by bshafiei@apple.com
  • 3 edits in branches/safari-608-branch/Source/WebKit

Cherry-pick r250751. rdar://problem/56280731

Unreviewed, build fix after r250729

  • UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:
  • UIProcess/API/Cocoa/_WKWebAuthenticationPanelInternal.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250751 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:33 AM Changeset in webkit [251340] by bshafiei@apple.com
  • 24 edits
    6 copies
    2 adds in branches/safari-608-branch

Cherry-pick r250729. rdar://problem/56280731

[WebAuthn] Implement _WKWebAuthenticationPanel SPI
https://bugs.webkit.org/show_bug.cgi?id=202559
<rdar://problem/55932094>

Reviewed by Brent Fulgham.

Source/WebKit:

This patch implements _WKWebAuthenticationPanel SPI. Here is the structure:
1) API::WebAuthenticationPanel is the APIObject of _WKWebAuthenticationPanel. It is owned by AuthenticatorManager.
The lifetime of _WKWebAuthenticationPanel on the other hand is managed by clients. This binding is the surface
where clients could interact with WebKit's WebAuthentication implementation.
2) API::WebAuthenticationPanelClient is a base class representing _WKWebAuthenticationPanelDelegate. Its subclass
WebKit::WebAuthenticationPanelClient implements bridges to _WKWebAuthenticationPanelDelegate methods. It is owned by
API::WebAuthenticationPanel. A weak pointer of WebKit::WebAuthenticationPanelClient is kept in _WKWebAuthenticationPanel
to get the _WKWebAuthenticationPanelDelegate set by clients or nil otherwise. This binding is the surface where WebKit
interacts with clients.
3) WebAuthenticationPanelFlags is the mirror of enums within _WKWebAuthenticationPanel.

Implementation wise, this patch implements:
1) -[WKUIDelegatePrivate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:], this is bridged from
the regular UIDelegate route. Noted, WKFrameInfo is nil for now, a follow up on Bug 202563 will take care of it. This
will be called from AuthenticatorManager::runPanel() which gates the start of discovery on the callback. For clients
that don't implement the delegate, the callback will always be called with _WKWebAuthenticationPanelResultUnavailable
to allow WebKit run on non-UI mode. A specific C API hack is added to always return _WKWebAuthenticationPanelResultPresented
in WebKitTestRunner for layout tests.
2) -[_WKWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:] will be implemented in Bug 200932.
3) -[_WKWebAuthenticationPanelDelegate panel:dismissWebAuthenticationPanelWithResult:], this is bridged from
API::WebAuthenticationPanel/API::WebAuthenticationPanelClient. This will be called whenever AuthenticatorManager::m_pendingCompletionHandler
is invoked. Depending on the respond, _WKWebAuthenticationResult will be returned accordingly. To facilitate that,
invokePendingCompletionHandler is crafted to bundle those two operations.
4) -[_WKWebAuthenticationPanel cancel] will be implemented in Bug 191523.

Besides the above, this patch also silents the NFC action sheet.

  • Platform/spi/Cocoa/NearFieldSPI.h:
  • Shared/API/APIObject.h:
  • Shared/Cocoa/APIObject.mm: (API::Object::newObject):
  • Sources.txt:
  • SourcesCocoa.txt:
  • UIProcess/API/APIUIClient.h: (API::UIClient::runWebAuthenticationPanel):
  • UIProcess/API/APIWebAuthenticationPanel.cpp: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm. (API::WebAuthenticationPanel::create): (API::WebAuthenticationPanel::WebAuthenticationPanel): (API::WebAuthenticationPanel::setClient):
  • UIProcess/API/APIWebAuthenticationPanel.h: Copied from Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.h.
  • UIProcess/API/APIWebAuthenticationPanelClient.h: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanelInternal.h. (API::WebAuthenticationPanelClient::dismissPanel const):
  • UIProcess/API/C/WKPage.cpp: (WKPageSetPageUIClient):
  • UIProcess/API/C/WKPageUIClient.h:
  • UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm: (-[_WKWebAuthenticationPanel dealloc]): (-[_WKWebAuthenticationPanel relyingPartyID]): (-[_WKWebAuthenticationPanel delegate]): (-[_WKWebAuthenticationPanel setDelegate:]): (-[_WKWebAuthenticationPanel _apiObject]): (-[_WKWebAuthenticationPanel _initWithRelayingPartyID:]): Deleted.
  • UIProcess/API/Cocoa/_WKWebAuthenticationPanelInternal.h:
  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm: (WebKit::UIDelegate::setDelegate): (WebKit::webAuthenticationPanelResult): (WebKit::UIDelegate::UIClient::runWebAuthenticationPanel):
  • UIProcess/WebAuthentication/AuthenticatorManager.cpp: (WebKit::WebCore::isFeatureEnabled): (WebKit::WebCore::getRpId): (WebKit::AuthenticatorManager::handleRequest): (WebKit::AuthenticatorManager::respondReceived): (WebKit::AuthenticatorManager::startDiscovery): (WebKit::AuthenticatorManager::initTimeOutTimer): (WebKit::AuthenticatorManager::timeOutTimerFired): (WebKit::AuthenticatorManager::runPanel): (WebKit::AuthenticatorManager::startRequest): (WebKit::AuthenticatorManager::invokePendingCompletionHandler): (WebKit::AuthenticatorManagerInternal::collectTransports): Deleted. (WebKit::AuthenticatorManagerInternal::processGoogleLegacyAppIdSupportExtension): Deleted.
  • UIProcess/WebAuthentication/AuthenticatorManager.h: (WebKit::AuthenticatorManager::pendingCompletionHandler): Deleted.
  • UIProcess/WebAuthentication/Cocoa/NfcConnection.mm: (WebKit::NfcConnection::NfcConnection):
  • UIProcess/WebAuthentication/Cocoa/NfcService.mm: (WebKit::NfcService::platformStartDiscovery):
  • UIProcess/WebAuthentication/Cocoa/WebAuthenticationPanelClient.h: Copied from Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.h.
  • UIProcess/WebAuthentication/Cocoa/WebAuthenticationPanelClient.mm: Copied from Source/WebKit/UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp. (WebKit::WebAuthenticationPanelClient::WebAuthenticationPanelClient): (WebKit::wkWebAuthenticationResult): (WebKit::WebAuthenticationPanelClient::dismissPanel const):
  • UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp: (WebKit::MockAuthenticatorManager::respondReceivedInternal):
  • UIProcess/WebAuthentication/WebAuthenticationPanelFlags.h: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanelInternal.h.
  • UIProcess/WebAuthentication/WebAuthenticationRequestData.h:
  • UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp: (WebKit::WebAuthenticatorCoordinatorProxy::makeCredential): (WebKit::WebAuthenticatorCoordinatorProxy::getAssertion):
  • WebKit.xcodeproj/project.pbxproj:

Tools:

This patch adds a very limited test case to _WKWebAuthenticationPanel.
Bug 202560 and Bug 202565 will follow up to write more tests.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: Added. (-[TestWebAuthenticationPanelDelegate panel:dismissWebAuthenticationPanelWithResult:]): (-[TestWebAuthenticationPanelUIDelegate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]): (TestWebKitAPI::TEST):
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion.html: Added.
  • WebKitTestRunner/TestController.cpp: (WTR::runWebAuthenticationPanel): (WTR::TestController::createWebViewWithOptions):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250729 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251339] by bshafiei@apple.com
  • 2 edits in branches/safari-608-branch/Source/WebCore

Cherry-pick r250716. rdar://problem/56280993

AppleTV named as XSS-payloads trigger when AirPlay is used
https://bugs.webkit.org/show_bug.cgi?id=202534
<rdar://55931262>

Reviewed by Eric Carlson.

Ensure we escape an AirPlay's device name before inserting its name into the DOM.

  • Modules/modern-media-controls/media/placard-support.js: (PlacardSupport.prototype._updateAirPlayPlacard): (PlacardSupport): (escapeHTML):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250716 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251338] by bshafiei@apple.com
  • 5 edits in branches/safari-608-branch/Source/WebCore

Cherry-pick r250694. rdar://problem/56061131

[iOS] WebContent process can be interrupted during suspension; loses "Now Playing" status

https://bugs.webkit.org/show_bug.cgi?id=202537
<rdar://problem/55952707>

Reviewed by Eric Carlson.

Always deactivate the AVAudioSession when the last playing PlatformAudioSession ends playback and the application is in the background.

  • platform/audio/PlatformMediaSessionManager.cpp: (WebCore::PlatformMediaSessionManager::removeSession): (WebCore::PlatformMediaSessionManager::processWillSuspend): (WebCore::PlatformMediaSessionManager::maybeDeactivateAudioSession):
  • platform/audio/PlatformMediaSessionManager.h: (WebCore::PlatformMediaSessionManager::isApplicationInBackground const):
  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm: (WebCore::MediaSessionManageriOS::sessionWillEndPlayback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250694 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251337] by bshafiei@apple.com
  • 5 edits in branches/safari-608-branch/Source

Cherry-pick r250642. rdar://problem/56280704

[iOS] When hit testing for a context menu interaction, do not consider whether the element is contenteditable
https://bugs.webkit.org/show_bug.cgi?id=202498
<rdar://problem/54723131>

Reviewed by Tim Horton.

Source/WebCore:

When the user selects a context menu action, WebKit performs a hit test in order to find the
acted-on element on the page. This is separate from the hit test performed to generate the
context menu's targeted preview. Since an arbitrary amount of time can elapse between
preview generation and action selection, this second hit-tests might return a different
element.

One case where we know a different element can be returned is in apps that dynamically
enable and disable editing. If editing is disabled when the first hit test occurs but is
enabled when the second one occurs, different elements will be returned due to
Frame::qualifyingNodeAtViewportLocation preferring to return the root editable element when
the approximate node is contenteditable.

While the appropriate long-term fix is to only hit-test once and use that element for both
preview generation and action selection, this patch implements a short-term fix to address
the specific problem in rdar://problem/54723131 by disabling the contenteditable behavior
described above for context menu interaction hit testing.

The long-term fix is tracked by <https://webkit.org/b/202499>.

  • page/Frame.h:
  • page/ios/FrameIOS.mm: (WebCore::Frame::qualifyingNodeAtViewportLocation): (WebCore::Frame::approximateNodeAtViewportLocationLegacy): (WebCore::ancestorRespondingToClickEventsNodeQualifier): (WebCore::Frame::nodeRespondingToClickEvents): (WebCore::Frame::nodeRespondingToDoubleClickEvent): (WebCore::Frame::nodeRespondingToInteraction): (WebCore::Frame::nodeRespondingToScrollWheelEvents):

Source/WebKit:

  • WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::startInteractionWithElementAtPosition): Changed to call WebCore::Frame::nodeRespondingToInteraction.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251336] by bshafiei@apple.com
  • 2 edits in branches/safari-608-branch/Source/JavaScriptCore

Cherry-pick r250629. rdar://problem/56280996

FTL OSR exit shouldn't bother updating get_by_id array profiles that have changed modes
https://bugs.webkit.org/show_bug.cgi?id=202493

Reviewed by Saam Barati.

I added this optimization for DFG but forgot to do it for the FTL
at the same time. This patch rectifies that.

  • ftl/FTLOSRExitCompiler.cpp: (JSC::FTL::compileStub):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250629 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251335] by bshafiei@apple.com
  • 4 edits
    2 adds in branches/safari-608-branch

Cherry-pick r250585. rdar://problem/56280995

ObjectAllocationSinkingPhase shouldn't insert hints for allocations which are no longer valid
https://bugs.webkit.org/show_bug.cgi?id=199361
<rdar://problem/52454940>

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/allocation-sinking-hints-are-valid-ssa-2.js: Added. (main.fn): (main.executor): (main):
  • stress/allocation-sinking-hints-are-valid-ssa.js: Added. (main.fn): (main.executor): (main):

Source/JavaScriptCore:

In a prior fix to the object allocation sinking phase, I added code where we
made sure to insert PutHints over Phis for fields of an object at control flow
merge points. However, that code didn't consider that the base of the PutHint
may no longer be a valid heap location. This could cause us to emit invalid
SSA code by referring to a node which does not dominate the PutHint location.
This patch fixes the bug to only emit the PutHints when valid.

This patch also makes it so that DFGValidate actually validates that the graph
is in valid SSA form. E.g, any use of a node N must be dominated by N.

  • dfg/DFGObjectAllocationSinkingPhase.cpp:
  • dfg/DFGValidate.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250585 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251334] by bshafiei@apple.com
  • 6 edits
    2 adds in branches/safari-608-branch

Cherry-pick r250431. rdar://problem/55927251

Storage Access API: document.hasStorageAccess() should return false by default
https://bugs.webkit.org/show_bug.cgi?id=202281
<rdar://problem/55718526>

Reviewed by Alex Christensen.

document.hasStorageAccess() should return false by default so that it only
returns true if the context has asked for and been granted storage access.

Source/WebKit:

  • NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp: (WebKit::ResourceLoadStatisticsDatabaseStore::hasStorageAccess):
  • NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: (WebKit::ResourceLoadStatisticsMemoryStore::hasStorageAccess):

LayoutTests:

  • http/tests/storageAccess/has-storage-access-false-by-default-expected.txt: Added.
  • http/tests/storageAccess/has-storage-access-false-by-default.html: Added.
  • platform/ios/TestExpectations:

The new test is marked as [ Pass ].

  • platform/mac-wk2/TestExpectations:

The new test is marked as [ Pass ].

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250431 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251333] by bshafiei@apple.com
  • 8 edits in branches/safari-608-branch

Cherry-pick r250416. rdar://problem/55954224

SubFrameSOAuthorizationSession should ensure messages are posted in the right order to the parent frame
https://bugs.webkit.org/show_bug.cgi?id=202061
<rdar://problem/55485666>

Reviewed by Youenn Fablet.

Source/WebKit:

This patch ensures messages that signal the process of SOAuthorization interception are posted in
the right order to the parent frame. Before this patch, there are chances that SOAuthorizationDidCancel
could be posted to the parent before SOAuthorizationDidStart. There are few causes that lead to
this race condition:
1) SubFrameSOAuthorizationSession::beforeStart posts SOAuthorizationDidStart in the next runloop. So
extension could have the chance to invoke SubFrameSOAuthorizationSession::fallBackToWebPathInternal
before SOAuthorizationDidStart is posted.
2) Even if the order is right in the UI process, it is not guaranteed that Web process will strictly
follow the order as the loading process is async.

To fix the issue:
1) SubFrameSOAuthorizationSession::beforeStart now posts SOAuthorizationDidStart in the same runloop.
2) Observer is introduced in FrameLoadState such that SubFrameSOAuthorizationSession could know if
the loading is finished. With this new capacity, SubFrameSOAuthorizationSession can ensure it only
posts next message when the previous message has been posted.

Implementation wise, a deque to queue requests is provided to maintain order.
1) When new request is added to the deque, SubFrameSOAuthorizationSession will only load the request
if it is the only element in the deque. Otherwise, it does nothing.
2) When SubFrameSOAuthorizationSession receives didFinishLoad, it pops the head of the queue and loads
the next request in the queue if any.
The above design should guarantee all requests are loaded in sequence.

  • UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.h:
  • UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.mm: (WebKit::SubFrameSOAuthorizationSession::SubFrameSOAuthorizationSession): (WebKit::SubFrameSOAuthorizationSession::~SubFrameSOAuthorizationSession): (WebKit::SubFrameSOAuthorizationSession::fallBackToWebPathInternal): (WebKit::SubFrameSOAuthorizationSession::completeInternal): (WebKit::SubFrameSOAuthorizationSession::beforeStart): (WebKit::SubFrameSOAuthorizationSession::didFinishLoad): (WebKit::SubFrameSOAuthorizationSession::appendRequestToLoad): (WebKit::SubFrameSOAuthorizationSession::loadRequestToFrame): (WebKit::SubFrameSOAuthorizationSession::loadDataToFrame): Deleted. (WebKit::SubFrameSOAuthorizationSession::postDidCancelMessageToParent): Deleted.
  • UIProcess/FrameLoadState.cpp: (WebKit::FrameLoadState::addObserver): (WebKit::FrameLoadState::removeObserver): (WebKit::FrameLoadState::didFinishLoad):
  • UIProcess/FrameLoadState.h:

Tools:

Adds tests that check the order of messages posted by SubFrameSOAuthorizationSession.

  • TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm: (-[TestSOAuthorizationScriptMessageHandler userContentController:didReceiveScriptMessage:]): (resetState): (TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@250416 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251332] by bshafiei@apple.com
  • 3 edits
    1 add in branches/safari-608-branch

Cherry-pick r249959. rdar://problem/56280989

CheckArray on DirectArguments/ScopedArguments does not filter out slow put array storage
https://bugs.webkit.org/show_bug.cgi?id=201853
<rdar://problem/53805461>

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/direct-arguments-check-array-filter-type.js: Added. (foo):

Source/JavaScriptCore:

We were claiming CheckArray for ScopedArguments/DirectArguments was filtering
out SlowPutArrayStorage. It does no such thing. We just check that the object
is either ScopedArguments/DirectArguments.

  • dfg/DFGArrayMode.h: (JSC::DFG::ArrayMode::arrayModesThatPassFiltering const): (JSC::DFG::ArrayMode::arrayModesWithIndexingShapes const): (JSC::DFG::ArrayMode::arrayModesWithIndexingShape const): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249959 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:32 AM Changeset in webkit [251331] by bshafiei@apple.com
  • 15 edits
    3 adds in branches/safari-608-branch

Cherry-pick r249517. rdar://problem/56000099

Mail appears to be double inverting code copied from Notes, Xcode, or Terminal.
https://bugs.webkit.org/show_bug.cgi?id=201368
rdar://problem/40529867

Reviewed by Ryosuke Niwa.

Source/WebCore:

Dark mode content that is pasted should have the inline styles inverse color
transformed by the color filter to match the color filtered document contents.

Layout Test: editing/pasteboard/paste-dark-mode-color-filtered.html
API Tests: PasteHTML.TransformColorsOfDarkContent, PasteHTML.DoesNotTransformColorsOfLightContent,

PasteRTFD.TransformColorsOfDarkContent, PasteRTFD.DoesNotTransformColorsOfLightContent

  • editing/EditingStyle.cpp: (WebCore::EditingStyle::inverseTransformColorIfNeeded): Added caret-color to the transformed properties.
  • editing/ReplaceSelectionCommand.cpp: (WebCore::fragmentNeedsColorTransformed): Added. (WebCore::ReplaceSelectionCommand::inverseTransformColor): Added. (WebCore::ReplaceSelectionCommand::doApply): Call fragmentNeedsColorTransformed() and inverseTransformColor().
  • editing/ReplaceSelectionCommand.h:

Tools:

Added Tests: PasteHTML.TransformColorsOfDarkContent, PasteHTML.DoesNotTransformColorsOfLightContent,

PasteRTFD.TransformColorsOfDarkContent, PasteRTFD.DoesNotTransformColorsOfLightContent

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm: (createWebViewWithCustomPasteboardDataSetting): Added argument to enable color filter.
  • TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm: (createWebViewWithCustomPasteboardDataEnabled): Added argument to enable color filter.
  • TestWebKitAPI/Tests/WebKitCocoa/rich-color-filtered.html: Added.
  • TestWebKitAPI/cocoa/TestWKWebView.h:
  • TestWebKitAPI/cocoa/TestWKWebView.mm: (-[TestWKWebView forceDarkMode]):

LayoutTests:

  • TestExpectations:
  • editing/pasteboard/paste-dark-mode-color-filtered-expected.txt: Added.
  • editing/pasteboard/paste-dark-mode-color-filtered.html: Added.
  • platform/ios-12/TestExpectations:
  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@249517 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8:09 AM Changeset in webkit [251330] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[LFC][IFC] Make InlineTextItem reusable when 'segment break' behavior changes
https://bugs.webkit.org/show_bug.cgi?id=203184
<rdar://problem/56438945>

Reviewed by Antti Koivisto.

InlineTextItem::isWhitespace should dynamically check for 'preserve new line' behavior. This way we don't have to rebuild the inline item list
when the related style property value changes.

  • layout/inlineformatting/InlineTextItem.cpp:

(WebCore::Layout::isWhitespaceCharacter):
(WebCore::Layout::moveToNextNonWhitespacePosition):
(WebCore::Layout::InlineTextItem::createAndAppendTextItems):
(WebCore::Layout::InlineTextItem::createWhitespaceItem):
(WebCore::Layout::InlineTextItem::createNonWhitespaceItem):
(WebCore::Layout::InlineTextItem::createSegmentBreakItem):
(WebCore::Layout::InlineTextItem::createEmptyItem):
(WebCore::Layout::InlineTextItem::InlineTextItem):
(WebCore::Layout::InlineTextItem::split const):
(WebCore::Layout::InlineTextItem::isWhitespace const):
(WebCore::Layout::isSoftLineBreak): Deleted.

  • layout/inlineformatting/InlineTextItem.h:

(WebCore::Layout::InlineTextItem::isSegmentBreak const):
(WebCore::Layout::InlineTextItem::isWhitespace const): Deleted.

7:56 AM Changeset in webkit [251329] by Alan Bujtas
  • 8 edits in trunk/Source/WebCore

[LFC][IFC] Move the collapsed bit from InlineItems to runs
https://bugs.webkit.org/show_bug.cgi?id=203183

Reviewed by Antti Koivisto.
<rdar://problem/56437181>

Let's not store the collapsed bit on the InlineTextItem. All we need to know is whether the InlineTextItem content is collapsible or not.
Also when only the white-space property changes (going from preserve whitespace to not and vice versa) we don't actually need to rebuild the
InlinItem list since they don't carry any layout dependent information.
This patch also fixes leading/trailing content preservation.

  • layout/inlineformatting/InlineLine.cpp:

(WebCore::Layout::Line::Run::canBeExtended const):
(WebCore::Layout::shouldPreserveTrailingContent):
(WebCore::Layout::shouldPreserveLeadingContent):
(WebCore::Layout::Line::appendTextContent):

  • layout/inlineformatting/InlineLine.h:

(WebCore::Layout::Line::Run::isCollapsed const):
(WebCore::Layout::Line::Run::setIsCollapsed):

  • layout/inlineformatting/InlineLineLayout.cpp:

(WebCore::Layout::inlineItemWidth):

  • layout/inlineformatting/InlineTextItem.cpp:

(WebCore::Layout::InlineTextItem::createAndAppendTextItems):
(WebCore::Layout::InlineTextItem::InlineTextItem):
(WebCore::Layout::InlineTextItem::split const):

  • layout/inlineformatting/InlineTextItem.h:

(WebCore::Layout::InlineTextItem::isCollapsible const):
(WebCore::Layout::InlineTextItem::isCollapsed const): Deleted.

  • layout/inlineformatting/text/TextUtil.cpp:

(WebCore::Layout::TextUtil::isTrimmableContent): Deleted.

  • layout/inlineformatting/text/TextUtil.h:

Oct 19, 2019:

4:50 PM Changeset in webkit [251328] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Flaky Test: fast/events/resize-subframe-in-rendering-update.html
https://bugs.webkit.org/show_bug.cgi?id=203140
<rdar://problem/56415948>

Reviewed by Wenson Hsieh.

Removed the assertion in setTimeout to avoid flakiness. There isn't a way to deterministically order
callbacks of setTimeout and requestAnimationFrame for this test for now.

  • fast/events/resize-subframe-in-rendering-update-expected.txt:
  • fast/events/resize-subframe-in-rendering-update.html:
4:41 PM Changeset in webkit [251327] by Chris Dumez
  • 9 edits
    2 adds in trunk

FileReader should not prevent entering the back/forward cache
https://bugs.webkit.org/show_bug.cgi?id=203106

Reviewed by Geoffrey Garen.

Source/WebCore:

FileReader should not prevent entering the back/forward cache. To support this,
its implementation now uses a SuspendableTaskQueue to dispatch events.

Test: fast/files/file-reader-back-forward-cache.html

  • dom/ActiveDOMObject.cpp:

(WebCore::ActiveDOMObject::isAllowedToRunScript const):

  • dom/ActiveDOMObject.h:
  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::resumeActiveDOMObjects):

  • fileapi/FileReader.cpp:

(WebCore::FileReader::FileReader):
(WebCore::FileReader::stop):
(WebCore::FileReader::hasPendingActivity const):
(WebCore::FileReader::readInternal):
(WebCore::FileReader::abort):
(WebCore::FileReader::didStartLoading):
(WebCore::FileReader::didReceiveData):
(WebCore::FileReader::didFinishLoading):
(WebCore::FileReader::didFail):
(WebCore::FileReader::fireEvent):

  • fileapi/FileReader.h:

LayoutTests:

Add layout test coverage.

  • TestExpectations:
  • fast/files/file-reader-back-forward-cache-expected.txt: Added.
  • fast/files/file-reader-back-forward-cache.html: Added.
12:56 PM Changeset in webkit [251326] by Adrian Perez de Castro
  • 12 edits in trunk/Source

[GTK][WPE] Fix non-unified builds after r250857
https://bugs.webkit.org/show_bug.cgi?id=203145

Reviewed by Carlos Garcia Campos.

Source/WebCore:

No new tests needed.

  • Modules/async-clipboard/ClipboardItem.cpp: Add missing inclusion of the Clipboard.h header.
  • Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp: Add missing inclusion of the

ClipboardItem.h header.

  • Modules/async-clipboard/ClipboardItemPasteboardDataSource.cpp: Add missing inclusions of

the Clipboard.h, ClipboardItem.h, and JSDOMPromiseDeferred.h headers.

  • dom/AbstractEventLoop.h: Add missing inclusion of the wtf/RefCounted.h header.
  • dom/WindowEventLoop.h: Add missing inclusion of the DocumentIdentifier.h header.
  • dom/IdleCallbackController.h: Add missing forward-declaration for the Document class.
  • dom/RadioButtonGroups.h: Add needed inclusion of of the wtf/text/AtomStringHash.h header,

needed because AtomString is used as key for a HashMap; remove the (now unneeded) of the
wtf/Forward.h header.

  • page/WheelEventTestMonitor.cpp: Add missing inclusion of the wtf/OptionSet.h header.
  • rendering/style/ShadowData.cpp: Add missing inclusion of the wtf/text/TextStream.h header.

Source/WebKit:

  • UIProcess/WebProcessProxy.cpp: Add missing inclusion of the WebBackForwardCache.h header.
11:40 AM Changeset in webkit [251325] by Simon Fraser
  • 3 edits in trunk/Source/WTF

Add support to TextStream for dumping HashMap<> and HashSet<>
https://bugs.webkit.org/show_bug.cgi?id=202969

Reviewed by Dean Jackson.

Make it possible to output HashMap<> and HashSet<> to TextStream,
so long as key and value types are streamable. Also implement operator<<(char)
so that chars show as ASCII, rather than numbers.

  • wtf/text/TextStream.cpp:

(WTF::TextStream::operator<<):

  • wtf/text/TextStream.h:

(WTF::operator<<):

8:46 AM Changeset in webkit [251324] by mitz@apple.com
  • 9 copies
    1 add in releases/Apple/Safari Technology Preview/Safari Technology Preview 94

Added a tag for Safari Technology Preview release 94.

8:41 AM Changeset in webkit [251323] by mitz@apple.com
  • 8 copies
    1 add in releases/Apple/iOS 13.1.3

Added a tag for iOS 13.1.3.

1:31 AM Changeset in webkit [251322] by rniwa@webkit.org
  • 11 edits
    4 adds in trunk

Integrate media query evaluation into HTML5 event loop
https://bugs.webkit.org/show_bug.cgi?id=203134
<rdar://problem/56396316>

Reviewed by Antti Koivisto.

Source/WebCore:

Moved the code to call media query listeners to HTML5 event loop's step to update the rendering:
https://html.spec.whatwg.org/multipage/webappapis.html#update-the-rendering

Tests: fast/media/mq-inverted-colors-live-update-for-listener.html

fast/media/mq-prefers-reduced-motion-live-update-for-listener.html

  • css/MediaQueryMatcher.cpp:

(WebCore::MediaQueryMatcher::evaluateAll): Renamed from styleResolverChanged.

  • css/MediaQueryMatcher.h:
  • dom/Document.cpp:

(WebCore::Document::updateElementsAffectedByMediaQueries): Split from evaluateMediaQueryList.
This function is still called right after each layout update so that picture element may start
requesting newly selected image resources without having to wait for a rendering update.
But this function will no longer execute arbitrary scripts.
(WebCore::Document::evaluateMediaQueriesAndReportChanges): Split from evaluateMediaQueryList.
Evaluates media query listeners.

  • dom/Document.h:
  • inspector/agents/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setEmulatedMedia): Force the evaluation of media queries for now
but this code should really be scheduling a rendering update instead so added a FIXME.

  • page/Frame.cpp:

(WebCore::Frame::setPrinting): Evaluate media queries. We should consider invoking the full
algorithm to update the rendering here. e.g. intersection observer may add more contents.

  • page/Page.cpp:

(WebCore::Page::updateRendering): Call evaluateMediaQueriesAndReportChanges.

LayoutTests:

Added tests for listening to accessiblity related media queries without having any style rules
get affected by those media queries so that we can catch any future regressions. For now,
changing accessiblity settings seem to always schedule a rendering update so there is nothing to do
when these accessibility settings do change.

  • fast/media/media-query-list-07.html: Fixed the test to be compatible with new behavior.
  • fast/media/mq-inverted-colors-live-update-for-listener-expected.txt: Added.
  • fast/media/mq-inverted-colors-live-update-for-listener.html: Added.
  • fast/media/mq-prefers-reduced-motion-live-update-for-listener-expected.txt: Added.
  • fast/media/mq-prefers-reduced-motion-live-update-for-listener.html: Added.

Oct 18, 2019:

11:31 PM Changeset in webkit [251321] by ysuzuki@apple.com
  • 8 edits
    1 add in trunk

[JSC] DFG::CommonData modification by DFG reallyAdd should be guarded by CodeBlock's lock
https://bugs.webkit.org/show_bug.cgi?id=203177

Reviewed by Mark Lam.

JSTests:

  • stress/dfg-really-add-locking.js: Added.

Source/JavaScriptCore:

When doing DFG reallyAdd, DFG::JITCode is already set in CodeBlock and DFG::CommonData can be
reachable from CodeBlock. So concurrent collector can trace entries of DFG::CommonData while DFG reallyAdd
is modifying it. It would be possible that we install DFG::JITCode after performing DFG reallyAdd, but for now,
we just protect DFG reallyAdd's DFG::CommonData modification by CodeBlock's lock so that concurrent collector
does not trace them in a racy manner.

  • dfg/DFGDesiredGlobalProperties.cpp:

(JSC::DFG::DesiredGlobalProperties::reallyAdd):

  • dfg/DFGDesiredIdentifiers.cpp:

(JSC::DFG::DesiredIdentifiers::reallyAdd):

  • dfg/DFGDesiredTransitions.cpp:

(JSC::DFG::DesiredTransition::reallyAdd):

  • dfg/DFGDesiredWatchpoints.cpp:

(JSC::DFG::ArrayBufferViewWatchpointAdaptor::add):
(JSC::DFG::SymbolTableAdaptor::add):
(JSC::DFG::FunctionExecutableAdaptor::add):
(JSC::DFG::AdaptiveStructureWatchpointAdaptor::add):

  • dfg/DFGDesiredWatchpoints.h:

(JSC::DFG::SetPointerAdaptor::add):

  • dfg/DFGDesiredWeakReferences.cpp:

(JSC::DFG::DesiredWeakReferences::reallyAdd):

10:48 PM Changeset in webkit [251320] by timothy_horton@apple.com
  • 11 edits
    2 adds in trunk/Source

macCatalyst: Cursor should send mouse events, not touch events
https://bugs.webkit.org/show_bug.cgi?id=203175
<rdar://problem/56321134>

Reviewed by Simon Fraser.

Source/WebCore:

  • dom/Element.cpp:

(WebCore::shouldIgnoreMouseEvent):
(WebCore::Element::dispatchMouseEvent):

  • page/PointerCaptureController.cpp:

(WebCore::PointerCaptureController::reset):
Share more code between platforms that support touch events and platforms that don't;
we want to be able to dispatch pointer events that originate from mouse events
in macCatalyst despite touch events being enabled (by virtue of being iOS WebKit),
so un-ifdef that code.

Source/WebKit:

  • Platform/spi/ios/UIKitSPI.h:
  • Shared/NativeWebMouseEvent.h:
  • Shared/ios/NativeWebMouseEventIOS.mm:

(WebKit::NativeWebMouseEvent::NativeWebMouseEvent):
Add a NativeWebMouseEvent constructor that doesn't actually wrap a native event,
for creating totally-synthetic events.

  • UIProcess/ios/WKMouseGestureRecognizer.h: Added.
  • UIProcess/ios/WKMouseGestureRecognizer.mm: Added.

(webEventModifiersForUIKeyModifierFlags):
(-[WKMouseGestureRecognizer initWithTarget:action:]):
(-[WKMouseGestureRecognizer setView:]):
(-[WKMouseGestureRecognizer lastMouseEvent]):
(-[WKMouseGestureRecognizer lastMouseLocation]):
(-[WKMouseGestureRecognizer mouseTouch]):
(-[WKMouseGestureRecognizer _wantsHoverEvents]):
(-[WKMouseGestureRecognizer reset]):
(-[WKMouseGestureRecognizer _shouldReceiveTouch:forEvent:recognizerView:]):
(-[WKMouseGestureRecognizer _shouldReceivePress:]):
(-[WKMouseGestureRecognizer createMouseEventWithType:]):
(-[WKMouseGestureRecognizer touchesBegan:withEvent:]):
(-[WKMouseGestureRecognizer touchesMoved:withEvent:]):
(-[WKMouseGestureRecognizer touchesEnded:withEvent:]):
(-[WKMouseGestureRecognizer touchesCancelled:withEvent:]):
(-[WKMouseGestureRecognizer _hoverEntered:withEvent:]):
(-[WKMouseGestureRecognizer _hoverMoved:withEvent:]):
(-[WKMouseGestureRecognizer _hoverExited:withEvent:]):
(-[WKMouseGestureRecognizer _hoverCancelled:withEvent:]):
(-[WKMouseGestureRecognizer locationInView:]):
(-[WKMouseGestureRecognizer canPreventGestureRecognizer:]):
(-[WKMouseGestureRecognizer canBePreventedByGestureRecognizer:]):
Instead of just using UIHoverGestureRecognizer, introduce a new gesture
recognizer that does what it did, but also supports cases where the button
is pressed (so, mousedown and mouseup instead of just mousemove),
and synthesizes mouse events for all state transitions. These events
should look roughly identical to what a non-macCatalyst app would get
in AppKit's mouseUp/mouseDown/mouseMoved NSResponder methods.

  • SourcesCocoa.txt:
  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView setupInteraction]):
(-[WKContentView cleanupInteraction]):
(-[WKContentView _removeDefaultGestureRecognizers]):
(-[WKContentView _addDefaultGestureRecognizers]):
(-[WKContentView gestureRecognizer:shouldReceiveTouch:]):
(-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
(-[WKContentView _showShareSheet:inRect:completionHandler:]):
(-[WKContentView _mouseGestureRecognizerChanged:]):
(webEventFlagsForUIKeyModifierFlags): Deleted.
(-[WKContentView _hoverGestureRecognizerChanged:]): Deleted.

  • WebKit.xcodeproj/project.pbxproj:

Make use of WKMouseGestureRecognizer to plumb the synthesized events directly
to the macOS-style "handleMouseEvent" codepath, instead of going through
the touch events path (and then subsequently generating synthetic clicks).
Also, ensure that other gesture recognizers ignore the mouse "touch" entirely
by returning NO in shouldReceiveTouch.

7:28 PM Changeset in webkit [251319] by Simon Fraser
  • 6 edits in trunk/Source/WebCore

Make it possible to query scrollbar pseudo-style without having a scrollbar
https://bugs.webkit.org/show_bug.cgi?id=203174

Reviewed by Tim Horton.

A future patch needs the ability to query scrollbar pseudo-style without having
a scrollbar, and it was ugly to pass a live RenderScrollbar into CSS style resolution
functions. Instead, pass in a pure-data object that has information about the scrollbar.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::ruleMatches):

  • css/SelectorChecker.h:
  • css/SelectorCheckerTestFunctions.h:

(WebCore::scrollbarMatchesEnabledPseudoClass):
(WebCore::scrollbarMatchesDisabledPseudoClass):
(WebCore::scrollbarMatchesHoverPseudoClass):
(WebCore::scrollbarMatchesActivePseudoClass):
(WebCore::scrollbarMatchesHorizontalPseudoClass):
(WebCore::scrollbarMatchesVerticalPseudoClass):
(WebCore::scrollbarMatchesDecrementPseudoClass):
(WebCore::scrollbarMatchesIncrementPseudoClass):
(WebCore::scrollbarMatchesStartPseudoClass):
(WebCore::scrollbarMatchesEndPseudoClass):
(WebCore::scrollbarMatchesDoubleButtonPseudoClass):
(WebCore::scrollbarMatchesSingleButtonPseudoClass):
(WebCore::scrollbarMatchesNoButtonPseudoClass):
(WebCore::scrollbarMatchesCornerPresentPseudoClass):

  • css/StyleResolver.h:

(WebCore::PseudoStyleRequest::PseudoStyleRequest):

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::getScrollbarPseudoStyle):

6:18 PM Changeset in webkit [251318] by commit-queue@webkit.org
  • 118 edits
    7 deletes in trunk

[SVG2]: Remove the SVGExternalResourcesRequired interface
https://bugs.webkit.org/show_bug.cgi?id=191293

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-10-18
Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

  • web-platform-tests/svg/import/types-dom-04-b-manual.svg:

Use the preserveAlpha property of <feConvolveMatrix> element to test
SVGAnimatedBoolean.

Source/WebCore:

The spec page is: https://www.w3.org/TR/SVG/changes.html.

r251290 made externalResourcesRequired have no effect on firing the load
event. All the control was moved to SVGURIReference. This patch will remove
this interface entirely to conform with SVG2 specs and other browsers.

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources-output.xcfilelist:
  • DerivedSources.make:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::SVGAElement):
(WebCore::SVGAElement::parseAttribute):
(WebCore::SVGAElement::svgAttributeChanged):

  • svg/SVGAElement.h:
  • svg/SVGAElement.idl:
  • svg/SVGAnimationElement.cpp:

(WebCore::SVGAnimationElement::SVGAnimationElement):
(WebCore::SVGAnimationElement::isSupportedAttribute):
(WebCore::SVGAnimationElement::parseAttribute):

  • svg/SVGAnimationElement.h:
  • svg/SVGAnimationElement.idl:
  • svg/SVGCircleElement.cpp:

(WebCore::SVGCircleElement::SVGCircleElement):
(WebCore::SVGCircleElement::parseAttribute):
(WebCore::SVGCircleElement::svgAttributeChanged):

  • svg/SVGCircleElement.h:
  • svg/SVGCircleElement.idl:
  • svg/SVGClipPathElement.cpp:

(WebCore::SVGClipPathElement::SVGClipPathElement):
(WebCore::SVGClipPathElement::parseAttribute):
(WebCore::SVGClipPathElement::svgAttributeChanged):

  • svg/SVGClipPathElement.h:
  • svg/SVGClipPathElement.idl:
  • svg/SVGCursorElement.cpp:

(WebCore::SVGCursorElement::SVGCursorElement):
(WebCore::SVGCursorElement::parseAttribute):

  • svg/SVGCursorElement.h:
  • svg/SVGCursorElement.idl:
  • svg/SVGDefsElement.cpp:

(WebCore::SVGDefsElement::SVGDefsElement):

  • svg/SVGDefsElement.h:
  • svg/SVGDefsElement.idl:
  • svg/SVGEllipseElement.cpp:

(WebCore::SVGEllipseElement::SVGEllipseElement):
(WebCore::SVGEllipseElement::parseAttribute):
(WebCore::SVGEllipseElement::svgAttributeChanged):

  • svg/SVGEllipseElement.h:
  • svg/SVGEllipseElement.idl:
  • svg/SVGExternalResourcesRequired.cpp: Removed.
  • svg/SVGExternalResourcesRequired.h: Removed.
  • svg/SVGExternalResourcesRequired.idl: Removed.
  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::SVGFEImageElement):
(WebCore::SVGFEImageElement::parseAttribute):

  • svg/SVGFEImageElement.h:
  • svg/SVGFEImageElement.idl:
  • svg/SVGFilterElement.cpp:

(WebCore::SVGFilterElement::SVGFilterElement):
(WebCore::SVGFilterElement::parseAttribute):
(WebCore::SVGFilterElement::svgAttributeChanged):

  • svg/SVGFilterElement.h:
  • svg/SVGFilterElement.idl:
  • svg/SVGFontElement.cpp:

(WebCore::SVGFontElement::SVGFontElement):

  • svg/SVGFontElement.h:
  • svg/SVGForeignObjectElement.cpp:

(WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
(WebCore::SVGForeignObjectElement::parseAttribute):
(WebCore::SVGForeignObjectElement::svgAttributeChanged):

  • svg/SVGForeignObjectElement.h:
  • svg/SVGForeignObjectElement.idl:
  • svg/SVGGElement.cpp:

(WebCore::SVGGElement::SVGGElement):
(WebCore::SVGGElement::parseAttribute): Deleted.
(WebCore::SVGGElement::svgAttributeChanged): Deleted.

  • svg/SVGGElement.h:
  • svg/SVGGElement.idl:
  • svg/SVGGradientElement.cpp:

(WebCore::SVGGradientElement::SVGGradientElement):
(WebCore::SVGGradientElement::parseAttribute):

  • svg/SVGGradientElement.h:
  • svg/SVGGradientElement.idl:
  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::SVGImageElement):
(WebCore::SVGImageElement::parseAttribute):
(WebCore::SVGImageElement::svgAttributeChanged):

  • svg/SVGImageElement.h:
  • svg/SVGImageElement.idl:
  • svg/SVGLineElement.cpp:

(WebCore::SVGLineElement::SVGLineElement):
(WebCore::SVGLineElement::parseAttribute):
(WebCore::SVGLineElement::svgAttributeChanged):

  • svg/SVGLineElement.h:
  • svg/SVGLineElement.idl:
  • svg/SVGMPathElement.cpp:

(WebCore::SVGMPathElement::SVGMPathElement):
(WebCore::SVGMPathElement::parseAttribute):
(WebCore::SVGMPathElement::svgAttributeChanged):

  • svg/SVGMPathElement.h:
  • svg/SVGMPathElement.idl:
  • svg/SVGMarkerElement.cpp:

(WebCore::SVGMarkerElement::SVGMarkerElement):
(WebCore::SVGMarkerElement::parseAttribute):
(WebCore::SVGMarkerElement::svgAttributeChanged):

  • svg/SVGMarkerElement.h:
  • svg/SVGMarkerElement.idl:
  • svg/SVGMaskElement.cpp:

(WebCore::SVGMaskElement::SVGMaskElement):
(WebCore::SVGMaskElement::parseAttribute):
(WebCore::SVGMaskElement::svgAttributeChanged):

  • svg/SVGMaskElement.h:
  • svg/SVGMaskElement.idl:
  • svg/SVGPathElement.cpp:

(WebCore::SVGPathElement::SVGPathElement):
(WebCore::SVGPathElement::parseAttribute):
(WebCore::SVGPathElement::svgAttributeChanged):

  • svg/SVGPathElement.h:
  • svg/SVGPathElement.idl:
  • svg/SVGPatternElement.cpp:

(WebCore::SVGPatternElement::SVGPatternElement):
(WebCore::SVGPatternElement::parseAttribute):
(WebCore::SVGPatternElement::svgAttributeChanged):

  • svg/SVGPatternElement.h:
  • svg/SVGPatternElement.idl:
  • svg/SVGPolyElement.cpp:

(WebCore::SVGPolyElement::SVGPolyElement):
(WebCore::SVGPolyElement::parseAttribute):
(WebCore::SVGPolyElement::svgAttributeChanged):

  • svg/SVGPolyElement.h:
  • svg/SVGPolygonElement.idl:
  • svg/SVGPolylineElement.idl:
  • svg/SVGRectElement.cpp:

(WebCore::SVGRectElement::SVGRectElement):
(WebCore::SVGRectElement::parseAttribute):
(WebCore::SVGRectElement::svgAttributeChanged):

  • svg/SVGRectElement.h:
  • svg/SVGRectElement.idl:
  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::SVGSVGElement):
(WebCore::SVGSVGElement::parseAttribute):
(WebCore::SVGSVGElement::svgAttributeChanged):

  • svg/SVGSVGElement.h:
  • svg/SVGSVGElement.idl:
  • svg/SVGScriptElement.cpp:

(WebCore::SVGScriptElement::SVGScriptElement):
(WebCore::SVGScriptElement::parseAttribute):
(WebCore::SVGScriptElement::svgAttributeChanged):

  • svg/SVGScriptElement.h:
  • svg/SVGScriptElement.idl:
  • svg/SVGSwitchElement.cpp:

(WebCore::SVGSwitchElement::SVGSwitchElement):

  • svg/SVGSwitchElement.h:
  • svg/SVGSwitchElement.idl:
  • svg/SVGSymbolElement.cpp:

(WebCore::SVGSymbolElement::SVGSymbolElement):
(WebCore::SVGSymbolElement::parseAttribute):
(WebCore::SVGSymbolElement::svgAttributeChanged): Deleted.

  • svg/SVGSymbolElement.h:
  • svg/SVGSymbolElement.idl:
  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::SVGTextContentElement):
(WebCore::SVGTextContentElement::parseAttribute):
(WebCore::SVGTextContentElement::svgAttributeChanged):

  • svg/SVGTextContentElement.h:
  • svg/SVGTextContentElement.idl:
  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::SVGUseElement):
(WebCore::SVGUseElement::parseAttribute):
(WebCore::SVGUseElement::svgAttributeChanged):

  • svg/SVGUseElement.h:
  • svg/SVGUseElement.idl:
  • svg/SVGViewElement.cpp:

(WebCore::SVGViewElement::SVGViewElement):
(WebCore::SVGViewElement::parseAttribute):
(WebCore::SVGViewElement::svgAttributeChanged):

  • svg/SVGViewElement.h:
  • svg/SVGViewElement.idl:

LayoutTests:

  • platform/gtk/TestExpectations:

The script-change-externalResourcesRequired-while-loading.svg has to be
removed and it was flaky on all platforms.

  • platform/gtk/imported/w3c/web-platform-tests/svg/import/types-dom-04-b-manual-expected.txt:
  • platform/gtk/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
  • platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/types-dom-04-b-manual-expected.txt:
  • platform/ios/TestExpectations:
  • platform/ios/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/imported/w3c/web-platform-tests/svg/import/types-dom-04-b-manual-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
  • platform/win/TestExpectations:
  • platform/win/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/svg/import/types-dom-04-b-manual-expected.txt:
  • platform/wpe/svg/W3C-SVG-1.1-SE/types-dom-04-b-expected.txt:
  • svg/W3C-SVG-1.1-SE/types-dom-04-b.svg:

Use the preserveAlpha property of <feConvolveMatrix> element to test
SVGAnimatedBoolean.

  • svg/animations/animate-externalResourcesRequired-no-load-event-expected.txt: Removed.
  • svg/animations/animate-externalResourcesRequired-no-load-event.html: Removed.
  • svg/custom/path-domsubtreemodified-crash.html:
  • svg/dom/SVGAnimatedBoolean-expected.txt:
  • svg/dom/SVGAnimatedBoolean.html:

Use the preserveAlpha property of <feConvolveMatrix> element to test
SVGAnimatedBoolean.

  • svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading-expected.txt: Removed.
  • svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg: Removed.
  • svg/dom/SVGScriptElement/script-load-and-error-events.svg:
  • svg/dom/SVGScriptElement/script-onerror-bubbling.svg:
  • svg/dom/SVGScriptElement/script-reexecution.svg:
  • svg/dynamic-updates/SVGUseElement-dom-href1-attr.html:
6:02 PM Changeset in webkit [251317] by jiewen_tan@apple.com
  • 22 edits
    1 copy
    1 move
    1 add in trunk

[WebAuthn] Warn users when no credentials are found
https://bugs.webkit.org/show_bug.cgi?id=203147
<rdar://problem/55931123>

Reviewed by Brent Fulgham.

Source/WebKit:

This patch returns _WKWebAuthenticationPanelUpdateNoCredentialsFound to client via
-[_WKWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:] when either
CtapAuthenticator receives kCtap2ErrNoCredentials or U2fAuthenticator exhausts the
allow list.

This patch also enhances CtapAuthenticator::tryDowngrade to check if the CTAP command
can be converted to U2F commands to ensure kCtap2ErrNoCredentials is returned if it
is the case. Otherwise, after downgrading, U2fAuthenticator will return NotSupportedError
given it can't convert the commands.

  • UIProcess/API/APIUIClient.h:
  • UIProcess/API/APIWebAuthenticationPanelClient.h:

(API::WebAuthenticationPanelClient::updatePanel const):

  • UIProcess/WebAuthentication/Authenticator.h:
  • UIProcess/WebAuthentication/AuthenticatorManager.cpp:

(WebKit::AuthenticatorManager::authenticatorStatusUpdated):

  • UIProcess/WebAuthentication/AuthenticatorManager.h:
  • UIProcess/WebAuthentication/Cocoa/WebAuthenticationPanelClient.h:
  • UIProcess/WebAuthentication/Cocoa/WebAuthenticationPanelClient.mm:

(WebKit::WebAuthenticationPanelClient::WebAuthenticationPanelClient):
(WebKit::wkWebAuthenticationPanelUpdate):
(WebKit::WebAuthenticationPanelClient::updatePanel const):

  • UIProcess/WebAuthentication/WebAuthenticationFlags.h: Renamed from Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationPanelFlags.h.
  • UIProcess/WebAuthentication/WebAuthenticationRequestData.h:
  • UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp:
  • UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:

(WebKit::CtapAuthenticator::continueGetAssertionAfterResponseReceived):
(WebKit::CtapAuthenticator::tryDowngrade):

  • UIProcess/WebAuthentication/fido/U2fAuthenticator.cpp:

(WebKit::U2fAuthenticator::issueSignCommand):

  • WebKit.xcodeproj/project.pbxproj:

Tools:

Adds new tests for _WKWebAuthenticationPanelUpdateNoCredentialsFound.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(-[TestWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:]):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid-cancel.html:
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid-no-credentials.html: Added.
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html:
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-nfc.html:
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-u2f-no-credentials.html: Added.

LayoutTests:

Adds new tests for CtapAuthenticator::tryDowngrade enhancement.

  • http/wpt/webauthn/public-key-credential-get-failure-hid.https-expected.txt:
  • http/wpt/webauthn/public-key-credential-get-failure-hid.https.html:
5:47 PM Changeset in webkit [251316] by Wenson Hsieh
  • 17 edits in trunk

[Clipboard API] Refactor Pasteboard::read() to take an optional item index
https://bugs.webkit.org/show_bug.cgi?id=203161

Reviewed by Tim Horton.

Source/WebCore:

Adds an optional itemIndex argument to Pasteboard::read(PasteboardPlainText&) and
Pasteboard::read(PasteboardWebContentReader&, WebContentReadingPolicy). See below for more details.

Tests: CopyHTML.ItemTypesWhenCopyingWebContent

PasteWebArchive.WebArchiveTypeIdentifier

  • editing/mac/EditorMac.mm:

(WebCore::Editor::dataSelectionForPasteboard):

Recognize "com.apple.webarchive" alongside "Apple Web Archive pasteboard type" when writing and reading from the
platform pasteboard on macOS. We add support for this here because the existing private type cannot be written
to an NSPasteboardItem, since it does not conform to a valid UTI format. Luckily, there already exists a UTI
that represents a web archive, so we can use it instead.

We need to write and read web archive data from NSPasteboardItem in order to support the case where there are
multiple items in the pasteboard that contain different web archive data.

  • platform/Pasteboard.h:
  • platform/StaticPasteboard.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::read):

  • platform/ios/PasteboardIOS.mm:

(WebCore::Pasteboard::read):

Read the string from itemIndex if specified; otherwise, fall back to index 0. This could actually be fixed in
the future to scan all pasteboard items for a suitable string instead of falling back on the first item, but for
now, we maintain the existing behavior.

(WebCore::Pasteboard::readRespectingUTIFidelities):

If an itemIndex is specified, ignore all other item indices when looking for suitable content.

  • platform/libwpe/PasteboardLibWPE.cpp:

(WebCore::Pasteboard::read):

  • platform/mac/DragDataMac.mm:

(WebCore::DragData::containsCompatibleContent const):

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::write):
(WebCore::readStringAtPreferredItemIndex):
(WebCore::readBufferAtPreferredItemIndex):

Add helper methods to read strings and buffers from the pasteboard, at an optional itemIndex if specified.

(WebCore::Pasteboard::read):

Adopt the helper functions when reading plain text and web content, and respect the given itemIndex. To do
this, we need to read both legacy and modern types from the pasteboard, instead of just legacy types. This is
because NSPasteboardItem on macOS only accepts and provides data in the form of modern pasteboard types.

  • platform/mac/PlatformPasteboardMac.mm:

(WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
(WebCore::PlatformPasteboard::readBuffer const):
(WebCore::PlatformPasteboard::readString const):

Fix these methods to accept platform pasteboard types instead of MIME types, to match the behavior of existing
readBuffer and readString methods in PlatformPasteboardIOS.

  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::read):

Source/WebKit:

  • Shared/mac/PasteboardTypes.mm:

(WebKit::PasteboardTypes::forEditing):
(WebKit::PasteboardTypes::forSelection):

Support "com.apple.webarchive" alongside the private "Apple Web Archive pasteboard type".

  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::setPromisedDataForImage):

Tools:

Add a couple of new API tests to verify that the web archive type identifier ("com.apple.webarchive") is (1)
written to the pasteboard when copying a rich text selection, and (2) is read when attempting to paste web
content.

  • TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
5:44 PM Changeset in webkit [251315] by Devin Rousso
  • 11 edits in trunk/Source/WebCore

[ASAN] Fix WebGPU tests after r250258
https://bugs.webkit.org/show_bug.cgi?id=203133
<rdar://problem/56379008>

Reviewed by Joseph Pecoraro.

  • platform/graphics/gpu/GPUObjectBase.h:

(WebCore::GPUObjectBase::~GPUObjectBase): Added.
Add a default virtual destructor since this class class is the one that is RefCounted and
the WebGPUPipeline subclass is virtual.

  • Modules/webgpu/WebGPUPipeline.h:

(WebCore::WebGPUPipeline::scriptExecutionContext const): Deleted.

  • Modules/webgpu/WebGPUPipeline.cpp:

(WebCore::WebGPUPipeline::WebGPUPipeline):
(WebCore::WebGPUPipeline::contextDestroyed): Added.
Make WebGPUPipeline a subclass of ContextDestructionObserver so that the raw pointer to
the associated ScriptExecutionContext is properly cleared and isn't UAFd.

  • Modules/webgpu/WebGPUComputePipeline.h:
  • Modules/webgpu/WebGPUComputePipeline.cpp:

(WebCore::WebGPUComputePipeline::create):
(WebCore::WebGPUComputePipeline::WebGPUComputePipeline):
(WebCore::WebGPUComputePipeline::cloneShaderModules):
(WebCore::WebGPUComputePipeline::recompile):

  • Modules/webgpu/WebGPURenderPipeline.h:
  • Modules/webgpu/WebGPURenderPipeline.cpp:

(WebCore::WebGPURenderPipeline::create):
(WebCore::WebGPURenderPipeline::WebGPURenderPipeline):
(WebCore::WebGPURenderPipeline::cloneShaderModules):
(WebCore::WebGPURenderPipeline::recompile):

  • Modules/webgpu/WebGPUDevice.cpp:

(WebCore::WebGPUDevice::createRenderPipeline):
(WebCore::WebGPUDevice::createComputePipeline):
Rework how Web Inspector preserves related shader modules so that there isn't as much wasted
space in the class layout, as we can use the RefPtr itself instead of an Optional.

  • Modules/webgpu/WebGPUBuffer.idl:

Now that GPUObjectBase has a virtual destructor, it has a vtable, which means that this
object also does and therefore cannot be marked with ImplementationLacksVTable.

  • inspector/InspectorShaderProgram.cpp:

(WebCore::shaderForType):
(WebCore::InspectorShaderProgram::requestShaderSource):
(WebCore::InspectorShaderProgram::updateShader):
(WebCore::InspectorShaderProgram::buildObjectForShaderProgram):

5:41 PM Changeset in webkit [251314] by russell_e@apple.com
  • 2 edits in trunk/LayoutTests

[ Mac Debug WK1 ] REGRESSION (r251262?): fast/scrolling/latching/scroll-select-bottom-test.html is a Flaky Failure
https://bugs.webkit.org/show_bug.cgi?id=203176

Unreviewed Test Gardening.

  • platform/mac-wk1/TestExpectations:
4:58 PM Changeset in webkit [251313] by russell_e@apple.com
  • 2 edits in trunk/LayoutTests

[ Mac WK1 ] REGRESSION (r251261): Layout Test inspector/console/webcore-logging.html is consistently Failing
https://bugs.webkit.org/show_bug.cgi?id=203173

Unreviewed Test Gardening.

  • platform/mac-wk1/TestExpectations:
4:55 PM Changeset in webkit [251312] by Jonathan Bedard
  • 5 edits in trunk/Tools

Python 3: Add support in webkitpy.common.watchlist
https://bugs.webkit.org/show_bug.cgi?id=202473

Reviewed by Dewei Zhu.

  • Scripts/test-webkitpy-python3: Add webkitpy.common.watchlist.
  • Scripts/webkitpy/common/watchlist/watchlist.py:

(WatchList.find_matching_definitions): Use items instead of iteritems.

  • Scripts/webkitpy/common/watchlist/watchlist_unittest.py:

(WatchListTest.test_filename_definition_no_matches): Back-slash needs to be escaped.
(WatchListTest.test_filename_definition): Ditto.
(WatchListTest.test_cc_rules_simple): Ditto.
(WatchListTest.test_cc_rules_complex): Ditto.
(WatchListTest.test_cc_and_message_rules_complex): Ditto.
(WatchListTest.test_cc_and_message_rules_no_matches): Ditto.
(WatchListTest.test_more_and_less_match): Ditto.
(WatchListTest.test_complex_match): Ditto.

  • Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py:

(WatchListParserTest.test_bad_definition): Back-slash needs to be escaped.
(WatchListParserTest.test_bad_filename_regex): Ditto.
(WatchListParserTest.test_bad_more_regex): Ditto.
(WatchListParserTest.test_bad_match_type): Ditto.
(WatchListParserTest.test_match_type_typo): Ditto.
(WatchListParserTest.test_empty_cc_rule): Ditto.
(WatchListParserTest.test_cc_rule_with_invalid_email): Ditto.
(WatchListParserTest.test_cc_rule_with_secondary_email): Ditto.
(WatchListParserTest.test_empty_message_rule): Ditto.
(WatchListParserTest.test_unused_defintion): Ditto.
(WatchListParserTest.test_cc_rule_with_undefined_defintion_with_suggestion): Ditto.

4:46 PM Changeset in webkit [251311] by Truitt Savell
  • 2 edits in trunk/LayoutTests

Layout Test inspector/layers/layers-for-node.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=203171

unreviewed test gardening

  • platform/mac/TestExpectations:
4:42 PM Changeset in webkit [251310] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove myself from the CMake watchlist
https://bugs.webkit.org/show_bug.cgi?id=203166

Patch by Raphael Kubo da Costa <rakuco@webkit.org> on 2019-10-18
Reviewed by Aakash Jain.

  • Scripts/webkitpy/common/config/watchlist:
4:36 PM Changeset in webkit [251309] by rniwa@webkit.org
  • 4 edits in trunk

[iOS] REGRESSION(r251269): fast/events/ios/rotation/do-not-shrink-to-fit-content-after-rotation.html and fast/events/ios/rotation/layout-viewport-during-safari-type-rotation.html fail
https://bugs.webkit.org/show_bug.cgi?id=203162
<rdar://problem/56418459>

Reviewed by Simon Fraser.

Source/WebKit:

Synchronously update the rendering before the orientation change and other viewport size updates.

Otherwise, resize event will be dispatched in the middle of orientation animation,
and would result in non-determistic results.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::dynamicViewportSizeUpdate):

LayoutTests:

Rebaselined the test now that the order of execution of orientationchange and resize events have changed.

  • fast/events/ios/rotation/layout-viewport-during-safari-type-rotation-expected.txt:
4:34 PM Changeset in webkit [251308] by rniwa@webkit.org
  • 4 edits
    1 add in trunk/Source/WebCore

Refactor AbstractEventLoop out of WindowEventLoop
https://bugs.webkit.org/show_bug.cgi?id=203136
<rdar://problem/56396749>

Reviewed by Antti Koivisto.

Extract AbstractEventLoop out of WindowEventLoop as a preparation for adding WorkerEventLoop.

Also replaced m_activeTaskCount with a boolean m_isScheduledToRun since it doesn't need to count.

  • WebCore.xcodeproj/project.pbxproj:
  • dom/AbstractEventLoop.cpp: Added.
  • dom/AbstractEventLoop.h: Added.

(WebCore::AbstractEventLoop): Added.

  • dom/WindowEventLoop.cpp:

(WebCore::WindowEventLoop::WindowEventLoop): Deleted. Use the default constructor in the header instead.
(WebCore::WindowEventLoop::queueTask):
(WebCore::WindowEventLoop::suspend):
(WebCore::WindowEventLoop::resume):
(WebCore::WindowEventLoop::scheduleToRunIfNeeded): Extracted out of queueTask.
(WebCore::WindowEventLoop::run):

  • dom/WindowEventLoop.h:
4:32 PM Changeset in webkit [251307] by ysuzuki@apple.com
  • 4 edits in trunk/Source

[JSC] Make ConcurrentJSLock Lock even if ENABLE_CONCURRENT_JS=OFF
https://bugs.webkit.org/show_bug.cgi?id=202892

Reviewed by Mark Lam.

Source/JavaScriptCore:

We are using ConcurrentJSLock to guard data structure against concurrent compilers.
But these data structures should be guarded by GC concurrent collector, so we are using this ConcurrentJSLock
to guard them against concurrent collector too.
The problem is that ENABLE(CONCURRENT_JS) relies on ENABLE(DFG_JIT). If we configure JSC with the options like,

ENABLE_DFG_JIT 0
ENABLE_FTL_JIT 0

Then, the built JSC becomes

ENABLE_CONCURRENT_JS 0
But, Concurrent GC is enabled.

This is wrong due to several reasons.

  1. Baseline JIT can produce JIT related data structures that are traced by concurrent collector. In the above options, these data structures are not guarded by lock.
  2. Baseline JIT also has concurrent JIT compiler. But ENABLE_CONCURRENT_JS does not reflect this.

In this patch, we fix two things.

  1. We should make ConcurrentJSLock always Lock. In 64bit environment we are supporting actively (including watchOS ARM64_32), we are enabling ENABLE(JIT) regardless of we are actually using JIT. So, anyway, this is already a Lock. Flipping these bits does not matter in 32bit architectures since they do not have concurrent compilers anyway. This makes things simpler: it is always a Lock. And concurrent collector can use it.
  2. We should make ENABLE(CONCURRENT_JS) ON when ENABLE(JIT) is true, to reflect the fact that Baseline JIT has concurrent compiler.
  • runtime/ConcurrentJSLock.h:

(JSC::ConcurrentJSLocker::ConcurrentJSLocker):

Source/WTF:

BaselineJIT also has concurrent compiler. ENABLE(CONCURRENT_JS) should not rely on ENABLE(DFG_JIT).
It should rely on ENABLE(JIT) instead.

  • wtf/Platform.h:
3:54 PM Changeset in webkit [251306] by Devin Rousso
  • 16 edits
    2 adds in trunk

Web Inspector: Elements: allow WebKit engineers to edit UserAgent shadow trees
https://bugs.webkit.org/show_bug.cgi?id=203159

Reviewed by Brian Burg.

Source/JavaScriptCore:

  • inspector/protocol/DOM.json:

Add setAllowEditingUserAgentShadowTrees command.

Source/WebCore:

Test: inspector/dom/setAllowEditingUserAgentShadowTrees.html

  • inspector/agents/InspectorDOMAgent.h:
  • inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::assertEditableNode):
(WebCore::InspectorDOMAgent::setInspectedNode):
(WebCore::InspectorDOMAgent::setAllowEditingUserAgentShadowTrees): Added.

Source/WebInspectorUI:

  • UserInterface/Controllers/DOMManager.js:

(WI.DOMManager.prototype.initializeTarget):
(WI.DOMManager.supportsEditingUserAgentShadowTrees): Added.

  • UserInterface/Models/CSSStyleDeclaration.js:

(WI.CSSStyleDeclaration.prototype.get editable):

  • UserInterface/Views/ContextMenuUtilities.js:

(WI.appendContextMenuItemsForDOMNode):

  • UserInterface/Views/DOMTreeElement.js:

(WI.DOMTreeElement.prototype.get editable):
(WI.DOMTreeElement.prototype._startEditingTarget):
(WI.DOMTreeElement.prototype.populateDOMNodeContextMenu):

  • UserInterface/Views/GeneralStyleDetailsSidebarPanel.js:

(WI.GeneralStyleDetailsSidebarPanel):
(WI.GeneralStyleDetailsSidebarPanel.prototype._showPanel):
(WI.GeneralStyleDetailsSidebarPanel.prototype._handleNodeChanged): Added.

  • UserInterface/Views/StyleDetailsPanel.js:

(WI.StyleDetailsPanel.prototype.get supportsNewRule): Added.
(WI.StyleDetailsPanel.prototype.markAsNeedsRefresh):
(WI.StyleDetailsPanel.prototype.refresh):

  • UserInterface/Views/SpreadsheetRulesStyleDetailsPanel.js:

(WI.SpreadsheetRulesStyleDetailsPanel.prototype.get supportsNewRule): Added.
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.newRuleButtonClicked):
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.newRuleButtonContextMenu):
Don't show the "Add Rule" button if the selected node is inside a UserAgent shadow tree.

  • UserInterface/Base/Setting.js:
  • UserInterface/Views/SettingsTabContentView.js:

(WI.SettingsTabContentView.prototype._createEngineeringSettingsView):

LayoutTests:

  • inspector/dom/setAllowEditingUserAgentShadowTrees.html: Added.
  • inspector/dom/setAllowEditingUserAgentShadowTrees-expected.txt: Added.
3:45 PM Changeset in webkit [251305] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Document::m_closeAfterStyleRecalc is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=203143

Reviewed by Antti Koivisto.

Removed the code to defer implicit close until the style recalc is done
since we call FrameLoader::checkCompleted asynchronously via a timer these days.

  • dom/Document.cpp:

(WebCore::Document::resolveStyle):
(WebCore::Document::implicitClose):

  • dom/Document.h:
3:45 PM Changeset in webkit [251304] by Chris Dumez
  • 5 edits in trunk/Source/WebKit

[iOS] "Unexpectedly Resumed" process assertion may cause us to get terminated
https://bugs.webkit.org/show_bug.cgi?id=203046
<rdar://problem/56179592>

Reviewed by Geoffrey Garen.

This patch implements the following to avoid getting terminated:

  1. Schedule the task to release the assertion on a background thread instead of the main thread so that we end up releasing the task even if the main thread is somehow hung.
  2. Add an invalidation handler to the process assertion which releases the assertion upon expiration.
  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::processWasUnexpectedlyUnsuspended):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::processDidResume):

  • WebProcess/WebProcess.h:
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::processTaskStateDidChange):

3:29 PM Changeset in webkit [251303] by dino@apple.com
  • 10 edits
    2 adds in trunk

texImage2D for a half-float texture only accepts null
https://bugs.webkit.org/show_bug.cgi?id=169999
<rdar://problem/31713571>

Reviewed by Simon Fraser.

Source/WebCore:

After we initially implemented this, the extension was
modified such that texImage2D could upload to half-float
from a Uint16 array.

Test: fast/canvas/webgl/oes-texture-half-float-uint16.html

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::validateArrayBufferType): Accept
Uint16.

LayoutTests:

Add a new test, and update the expected results of existing tests.

  • fast/canvas/webgl/oes-texture-half-float-uint16-expected.txt: Added.
  • fast/canvas/webgl/oes-texture-half-float-uint16.html: Added.
  • webgl/2.0.0/conformance/extensions/oes-texture-half-float-expected.txt:
  • webgl/2.0.0/conformance2/extensions/ext-color-buffer-float-expected.txt:
  • webgl/2.0.0/conformance2/textures/misc/tex-new-formats-expected.txt:
3:27 PM Changeset in webkit [251302] by Devin Rousso
  • 6 edits in trunk/Source/WebInspectorUI

Web Inspector: Elements: $0 is shown for the wrong node when selecting elements in a user agent shadow tree
https://bugs.webkit.org/show_bug.cgi?id=203155

Reviewed by Matt Baker.

Rather than naively using the last selected node (from WI.TreeOutline), we should wait
to see if the inspected page's DOM agent allows the selected node to be used as the
inspected node, and if so then to show the $0.

  • UserInterface/Controllers/DOMManager.js:

(WI.DOMManager.prototype.setInspectedNode):

  • UserInterface/Views/DOMTreeContentView.js:

(WI.DOMTreeContentView):

  • UserInterface/Views/DOMTreeOutline.js:

(WI.DOMTreeOutline.prototype._handleInspectedNodeChanged): Added.

  • UserInterface/Views/DOMTreeOutline.css:

(.tree-outline.dom li.inspected-node > span::after): Added.
(.tree-outline.dom:focus li.inspected-node.selected > span::after): Added.
(.tree-outline.dom.show-last-selected li.last-selected > span::after): Deleted.
(.tree-outline.dom.show-last-selected:focus li.last-selected > span::after): Deleted.

  • UserInterface/Views/TreeOutline.js:

(WI.TreeOutline.prototype.selectionControllerSelectionDidChange):

3:23 PM Changeset in webkit [251301] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

fast/events/ios/forward-delete-in-editable.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=203049
<rdar://problem/52969457>

Reviewed by Wenson Hsieh.

Now that <rdar://problem/45772078> is fixed we can write the test such that we check the test
result after we receive a DOM key up for the forward delete. Currently the test makes use of a
workaround that incorrectly assumes that the keyboard will call back into WebKit to perform the
forward deletion before the web process blur()s the field. This is not guaranteed to happen.
Instead wait until we receive a DOM key up for the delete key.

  • fast/events/ios/forward-delete-in-editable.html:
3:21 PM Changeset in webkit [251300] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

Layout Test http/tests/security/contentSecurityPolicy/iframe-allowed-when-loaded-via-javascript-url.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=202481
<rdar://problem/55916200>

Reviewed by Youenn Fablet.

Have the iframe's document call testRunner.notifyDone() instead of assuming that the document will
be loaded by the next turn of the event loop.

  • http/tests/security/contentSecurityPolicy/iframe-allowed-when-loaded-via-javascript-url.html:
3:16 PM Changeset in webkit [251299] by dbates@webkit.org
  • 4 edits in trunk

REGRESSION (r241747): [iOS] Adjust default SVG focus ring width to match width for HTML documents
https://bugs.webkit.org/show_bug.cgi?id=203011

Reviewed by Wenson Hsieh.

Source/WebCore:

Update default user agent stylesheet for SVG documents (i.e. .svg resources) to use the same 3px
outline width for focused elements as we do for HTML documents.

This makes the test imported/blink/svg/custom/focus-ring-2.svg pass on iOS.

  • css/svg.css:

LayoutTests:

Remove the test imported/blink/svg/custom/focus-ring-2.svg now that it passes, again.

  • platform/ios/TestExpectations:
3:00 PM Changeset in webkit [251298] by jer.noble@apple.com
  • 21 edits
    3 copies
    3 moves
    4 adds
    1 delete in trunk

Add experimental HDR MediaCapabilities support.
https://bugs.webkit.org/show_bug.cgi?id=203113

Reviewed by Eric Carlson.

Source/WebCore:

Tests: media/mediacapabilities/mock-decodingInfo-hdr.html

platform/mac/media/mediacapabilities/hevc-decodingInfo-hdr.html

Add support for MediaCapabilities.decodeInfo() HDR support detection.

Add new enum IDL types to MediaCapabilities and remove old unused ones. Add
mock implementation for HDR detection. Add Cocoa platform implementation.

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources-output.xcfilelist:
  • DerivedSources.make:
  • Modules/mediacapabilities/ColorGamut.idl:
  • Modules/mediacapabilities/HdrMetadataType.idl:
  • Modules/mediacapabilities/ScreenLuminance.h:
  • Modules/mediacapabilities/TransferFunction.idl:
  • Modules/mediacapabilities/VideoConfiguration.idl:
  • Scripts/GenerateSettings.rb:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGenerator.pm:

(WK_ucfirst):

  • bindings/scripts/CodeGeneratorJS.pm:

(ToMethodName):

  • page/Settings.yaml:
  • platform/graphics/cocoa/MediaEngineConfigurationFactoryCocoa.cpp:

(WebCore::createMediaPlayerDecodingConfigurationCocoa):

  • platform/mediacapabilities/ColorGamut.h:
  • platform/mediacapabilities/HdrMetadataType.h:
  • platform/mediacapabilities/TransferFunction.h:
  • platform/mediacapabilities/VideoConfiguration.h:
  • platform/mock/MediaEngineConfigurationFactoryMock.cpp:

(WebCore::canDecodeMedia):
(WebCore::canEncodeMedia):

Source/WebKit:

Add experimental hdrMediaCapabilitiesEnabled preference.

  • Shared/WebPreferences.yaml:

LayoutTests:

  • media/mediacapabilities/mock-decodingInfo-alphaChannel-expected.txt:
  • media/mediacapabilities/mock-decodingInfo-hdr-expected.txt: Added.
  • media/mediacapabilities/mock-decodingInfo-hdr.html: Added.
  • platform/mac/media/mediacapabilities/hevc-decodingInfo-hdr-expected.txt: Added.
  • platform/mac/media/mediacapabilities/hevc-decodingInfo-hdr.html: Added.
2:33 PM Changeset in webkit [251297] by Devin Rousso
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: REGRESSION(r251254): Elements: forced pseudo-class indicator isn't visible for selected nodes
https://bugs.webkit.org/show_bug.cgi?id=203158

Reviewed by Matt Baker.

  • UserInterface/Views/DOMTreeOutline.css:

(.tree-outline.dom li > :not(.selection-area)): Added.
(.tree-outline.dom li > span): Deleted.

2:30 PM Changeset in webkit [251296] by Wenson Hsieh
  • 2 edits in trunk/Tools

Unreviewed, remove an extraneous header import after r251279

Address a post-landing review comment.

  • DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1:55 PM Changeset in webkit [251295] by jiewen_tan@apple.com
  • 58 edits
    3 copies
    2 deletes in trunk

[WebAuthn] Implement AuthenticatorCancel
https://bugs.webkit.org/show_bug.cgi?id=191523
<rdar://problem/55920204>

Reviewed by Brent Fulgham.

Source/WebCore:

Covered by new tests in existing test files.

  • Modules/credentialmanagement/CredentialsContainer.cpp:

(WebCore::CredentialsContainer::get):
(WebCore::CredentialsContainer::isCreate):

  • Modules/webauthn/AuthenticatorCoordinator.cpp:

(WebCore::AuthenticatorCoordinator::create const):
(WebCore::AuthenticatorCoordinator::discoverFromExternalSource const):

  • Modules/webauthn/AuthenticatorCoordinator.h:
  • Modules/webauthn/AuthenticatorCoordinatorClient.cpp: Removed.
  • Modules/webauthn/AuthenticatorCoordinatorClient.h:
  • Modules/webauthn/PublicKeyCredential.cpp:

(WebCore::PublicKeyCredential::tryCreate):

  • Modules/webauthn/PublicKeyCredential.h:
  • Modules/webauthn/PublicKeyCredentialData.h:
  • Modules/webauthn/fido/DeviceRequestConverter.h:
  • Modules/webauthn/fido/FidoHidMessage.cpp:

(fido::FidoHidMessage::FidoHidMessage):

  • Modules/webauthn/fido/FidoHidPacket.cpp:

(fido::FidoHidInitPacket::getSerializedData const):
(fido::FidoHidContinuationPacket::getSerializedData const):

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • testing/MockWebAuthenticationConfiguration.h:

(WebCore::MockWebAuthenticationConfiguration::HidConfiguration::encode const):
(WebCore::MockWebAuthenticationConfiguration::HidConfiguration::decode):

  • testing/MockWebAuthenticationConfiguration.idl:

Adds a new option to test AuthenticatorCancel.

Source/WebKit:

This patch implement two ways to cancel a pending WebAuthn ceremony:
1) Via navigation activities. Activities include i) main frame navigation, ii) main frame reload,
iii) main frame destruction, iv) sub frame navigation, and v) sub frame destruction. All the above
activities will cancel any pending WebAuthn ceremony that is associated with the frame. To prove
the association, a GlobalFrameIdentifier is bridged into WebAuthenticationRequestData. Navigation
cancel is done in WebPageProxy::didStartProvisionalLoadForFrameShared, and destruction cancel is done
in WebProcessProxy::didDestroyFrame and WebPageProxy::resetState.
2) Via UI. This path is simply bridged -[_WKWebAuthenticationPanel cancel] into AuthenticatorManager.
Noted, this patch follows the spec to wait until time out to notify RPs.
References: i) Step 20 of https://www.w3.org/TR/webauthn/#createCredential, ii) Step 18 of
https://www.w3.org/TR/webauthn/#getAssertion

As for what the cancel actually does, it:
1) stops any HID/NFC scanning;
2) sends CTAPHID_CANCEL to any HID authenticators that have been added. Reference:
https://fidoalliance.org/specs/fido-v2.0-ps-20190130/fido-client-to-authenticator-protocol-v2.0-ps-20190130.html#usb-hid-cancel
Sending CTAPHID_CANCEL, however, is not trivial. An abstract class FidoAuthenticator is crafted to
do this labor for both CtapAuthenticator and U2fAuthenticator during the time of destructions.
Noted: The CtapHidDriver is the only CtapDriver implements the cancel method. Since the message
is sent during state reset, lifecycle of the HidConenction and HidService which manage the underlying
IOHIDDeviceRef is very hard to hold. This is required for the regular async sender. Therefore,
HidConnection::sendSync is crafted to send the message synchronously to get rid of the tediousness
of managing those lifecycles.

P.S. Vector::grow doesn't initialize POD types. Therefore, this patch also appends it with memset
for FidoHidPacket.

P.S.S. This patch also simplifies AuthenticatorCoordinatorClient by: i) moving code from AuthenticatorCoordinatorClient
to WebAuthenticatorCoordinatorClient, and ii) using sendWithAsyncReply. The latter allows us to
get rid of the complex mechanism of ensuring the right reply is returned.

  • DerivedSources.make:
  • Sources.txt:
  • UIProcess/API/APIWebAuthenticationPanel.cpp:

(API::WebAuthenticationPanel::create):
(API::WebAuthenticationPanel::WebAuthenticationPanel):
(API::WebAuthenticationPanel::cancel const):

  • UIProcess/API/APIWebAuthenticationPanel.h:
  • UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:

(-[_WKWebAuthenticationPanel cancel]):

  • UIProcess/WebAuthentication/AuthenticatorManager.cpp:

(WebKit::AuthenticatorManager::cancelRequest):
(WebKit::AuthenticatorManager::clearState):
(WebKit::AuthenticatorManager::runPanel):
(WebKit::AuthenticatorManager::resetState):

  • UIProcess/WebAuthentication/AuthenticatorManager.h:
  • UIProcess/WebAuthentication/Cocoa/HidConnection.h:

(WebKit::HidConnection::isInitialized const):
(WebKit::HidConnection::setIsInitialized):

  • UIProcess/WebAuthentication/Cocoa/HidConnection.mm:

(WebKit::HidConnection::~HidConnection):
(WebKit::HidConnection::initialize):
(WebKit::HidConnection::terminate):
(WebKit::HidConnection::sendSync):
(WebKit::HidConnection::send):
(WebKit::HidConnection::registerDataReceivedCallback):

  • UIProcess/WebAuthentication/Mock/MockHidConnection.cpp:

(WebKit::MockHidConnection::initialize):
(WebKit::MockHidConnection::terminate):
(WebKit::MockHidConnection::sendSync):
(WebKit::MockHidConnection::send):
(WebKit::MockHidConnection::feedReports):

  • UIProcess/WebAuthentication/Mock/MockHidConnection.h:
  • UIProcess/WebAuthentication/WebAuthenticationRequestData.h:
  • UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp:

(WebKit::WebAuthenticatorCoordinatorProxy::makeCredential):
(WebKit::WebAuthenticatorCoordinatorProxy::getAssertion):
(WebKit::WebAuthenticatorCoordinatorProxy::handleRequest):
(WebKit::WebAuthenticatorCoordinatorProxy::isUserVerifyingPlatformAuthenticatorAvailable):
(WebKit::WebAuthenticatorCoordinatorProxy::requestReply): Deleted.

  • UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h:
  • UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.messages.in:
  • UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:

(WebKit::CtapAuthenticator::CtapAuthenticator):
(WebKit::CtapAuthenticator::makeCredential):
(WebKit::CtapAuthenticator::getAssertion):
(WebKit::CtapAuthenticator::tryDowngrade):

  • UIProcess/WebAuthentication/fido/CtapAuthenticator.h:
  • UIProcess/WebAuthentication/fido/CtapDriver.h:

(WebKit::CtapDriver::cancel):

  • UIProcess/WebAuthentication/fido/CtapHidDriver.cpp:

(WebKit::CtapHidDriver::Worker::write):
(WebKit::CtapHidDriver::Worker::read):
(WebKit::CtapHidDriver::Worker::returnMessage):
(WebKit::CtapHidDriver::Worker::reset):
(WebKit::CtapHidDriver::Worker::cancel):
(WebKit::CtapHidDriver::continueAfterChannelAllocated):
(WebKit::CtapHidDriver::continueAfterResponseReceived):
(WebKit::CtapHidDriver::returnResponse):
(WebKit::CtapHidDriver::reset):
(WebKit::CtapHidDriver::cancel):

  • UIProcess/WebAuthentication/fido/CtapHidDriver.h:
  • UIProcess/WebAuthentication/fido/FidoAuthenticator.cpp: Copied from Source/WebKit/UIProcess/API/APIWebAuthenticationPanel.cpp.

(WebKit::FidoAuthenticator::FidoAuthenticator):
(WebKit::FidoAuthenticator::~FidoAuthenticator):
(WebKit::FidoAuthenticator::driver const):
(WebKit::FidoAuthenticator::releaseDriver):

  • UIProcess/WebAuthentication/fido/FidoAuthenticator.h: Copied from Source/WebKit/UIProcess/API/APIWebAuthenticationPanel.cpp.
  • UIProcess/WebAuthentication/fido/FidoService.cpp:

(WebKit::FidoService::continueAfterGetInfo):

  • UIProcess/WebAuthentication/fido/U2fAuthenticator.cpp:

(WebKit::U2fAuthenticator::U2fAuthenticator):
(WebKit::U2fAuthenticator::issueCommand):

  • UIProcess/WebAuthentication/fido/U2fAuthenticator.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didStartProvisionalLoadForFrameShared):
(WebKit::WebPageProxy::resetState):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didDestroyFrame):

  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp:

(WebKit::WebAuthenticatorCoordinator::WebAuthenticatorCoordinator):
(WebKit::WebAuthenticatorCoordinator::makeCredential):
(WebKit::WebAuthenticatorCoordinator::getAssertion):
(WebKit::WebAuthenticatorCoordinator::isUserVerifyingPlatformAuthenticatorAvailable):
(WebKit::WebAuthenticatorCoordinator::~WebAuthenticatorCoordinator): Deleted.

  • WebProcess/WebAuthentication/WebAuthenticatorCoordinator.h:
  • WebProcess/WebAuthentication/WebAuthenticatorCoordinator.messages.in: Removed.
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::fromCoreFrame):

  • WebProcess/WebPage/WebFrame.h:

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebCore/FidoHidMessageTest.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(-[TestWebAuthenticationPanelUIDelegate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid-cancel.html: Copied from Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html.
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html:
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-nfc.html:
  • TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion.html:

LayoutTests:

Modified one of the error message that is no longer emitted.

  • http/wpt/webauthn/public-key-credential-create-failure.https.html:
  • http/wpt/webauthn/public-key-credential-create-success-hid.https.html:
  • http/wpt/webauthn/public-key-credential-get-failure.https.html:
  • http/wpt/webauthn/public-key-credential-get-success-hid.https.html:
12:44 PM Changeset in webkit [251294] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Flaky Test: fast/events/resize-subframe-in-rendering-update.html
https://bugs.webkit.org/show_bug.cgi?id=203140

Reviewed by Simon Fraser.

The flakiness was caused by the race condition between rAF and setTimeout. In many cases,
setTimeout was getting scheduled after the next rAF and prevented some assertions to run in time.

Fixed the flakiness by moving setTimeout to outside the setTimeout in which tests run so that
those assertions would always run.

Rebaselined the test since these assertions in setTimeout are now always included in the results.

  • fast/events/resize-subframe-in-rendering-update-expected.txt:
  • fast/events/resize-subframe-in-rendering-update.html:
12:18 PM Changeset in webkit [251293] by BJ Burg
  • 2 edits in trunk/Tools

Cleanup: Stop setting -ApplePersistenceIgnoreState when running debug Mac WebKit
https://bugs.webkit.org/show_bug.cgi?id=203156

Reviewed by Jonathan Bedard.

This is no longer needed. The new value has been supported since 2014.

  • Scripts/webkitdirs.pm:

(argumentsForRunAndDebugMacWebKitApp):

11:54 AM Changeset in webkit [251292] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Add TextStream dumping for BasicShape types
https://bugs.webkit.org/show_bug.cgi?id=203150

Reviewed by Zalan Bujtas.

Add dumping for the classes, and make the BasicShape enum an enum class.

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape):

  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape):

  • rendering/style/BasicShapes.cpp:

(WebCore::BasicShapeCircle::dump const):
(WebCore::BasicShapeEllipse::dump const):
(WebCore::BasicShapePolygon::dump const):
(WebCore::BasicShapePath::dump const):
(WebCore::BasicShapeInset::dump const):
(WebCore::operator<<):

  • rendering/style/BasicShapes.h:

(WebCore::BasicShapeCenterCoordinate::BasicShapeCenterCoordinate):

11:46 AM Changeset in webkit [251291] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

ElementRuleCollector function signature cleanups
https://bugs.webkit.org/show_bug.cgi?id=203153
<rdar://problem/56412684>

Unreviewed followup.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::transferMatchedRules):

Try to appease MSVC.

11:29 AM Changeset in webkit [251290] by commit-queue@webkit.org
  • 28 edits
    4 adds
    12 deletes in trunk

Load event must be fired only for the SVG structurally external elements and the outermost SVG element
https://bugs.webkit.org/show_bug.cgi?id=203044

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2019-10-18
Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

  • web-platform-tests/svg/geometry/svg-image-intrinsic-size-with-cssstyle-auto-expected.txt:

The timeout issues are now fixed. webkit.org/b/202013 will fix the other
failures.

  • web-platform-tests/svg/images/20x20.png: Added.

Add an image which is referenced by these tests:

web-platform-tests/svg/import/styling-pres-02-f-manual.svg
web-platform-tests/svg/import/struct-use-01-t-manual.svg
web-platform-tests/svg/import/interact-events-02-b-manual.svg

  • web-platform-tests/svg/linking/scripted/href-script-element-expected.txt:

Source/WebCore:

The SVG1.1 spec for SVGLoad event is:

https://www.w3.org/TR/SVG11/interact.html

The SVG2 spec for the load event is:

https://www.w3.org/TR/SVG/changes.html#interact
https://www.w3.org/TR/SVG/interact.html

SVG2 removes the SVGExternalResourcesRequired interface. It also simplifies
the rules for firing the load event and made them consistent with the HTML
specs. The plan is to remove SVGExternalResourcesRequired in a following
patch. This patch makes SVGExternalResourcesRequired have no effect on the
load event firing rules. It moves all the functionalities to SVGURIReference
as a step towards removing the SVGExternalResourcesRequired interface.

Test: svg/custom/image-load-event.html

  • dom/Document.cpp:

(WebCore::Document::implicitClose):
Do not use the SVGLoad term. It has been removed from the specs.

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::ScriptElement):

  • dom/ScriptElement.h:

(WebCore::ScriptElement::errorOccurred const):
(WebCore::ScriptElement::setErrorOccurred):
Add a method to track the occurrence of loading error. errorOccurred()

haveFiredLoadEvent() means no pending loading activity.
  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::dispatchLoadEventToOutermostSVGElements):
(WebCore::SVGDocumentExtensions::dispatchSVGLoadEventToOutermostSVGElements): Deleted.

  • svg/SVGDocumentExtensions.h:

Do not use the SVGLoad term.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::sendLoadEventIfPossible):
(WebCore::SVGElement::loadEventTimerFired):
(WebCore::SVGElement::loadEventTimer):
(WebCore::SVGElement::finishParsingChildren):
(WebCore::SVGElement::sendSVGLoadEventIfPossible): Deleted.
(WebCore::SVGElement::sendSVGLoadEventIfPossibleAsynchronously): Deleted.
(WebCore::SVGElement::svgLoadEventTimerFired): Deleted.
(WebCore::SVGElement::svgLoadEventTimer): Deleted.

  • svg/SVGElement.h:

finishParsingChildren() won't fire 'load' event anymore. The 'load' event
will be fired explicitly for the outermost SVG element from Document::implicitClose().

  • svg/SVGExternalResourcesRequired.cpp:

(WebCore::SVGExternalResourcesRequired::svgAttributeChanged):
(WebCore::SVGExternalResourcesRequired::dispatchLoadEvent): Deleted.
(WebCore::SVGExternalResourcesRequired::insertedIntoDocument): Deleted.
(WebCore::SVGExternalResourcesRequired::finishParsingChildren): Deleted.
(WebCore::SVGExternalResourcesRequired::haveLoadedRequiredResources const): Deleted.

  • svg/SVGExternalResourcesRequired.h:

(WebCore::SVGExternalResourcesRequired::setHaveFiredLoadEvent): Deleted.
(WebCore::SVGExternalResourcesRequired::isParserInserted const): Deleted.
(WebCore::SVGExternalResourcesRequired::haveFiredLoadEvent const): Deleted.

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::haveLoadedRequiredResources):

  • svg/SVGImageLoader.cpp:

(WebCore::SVGImageLoader::dispatchLoadEvent):
The value of externalResourcesRequired() no longer controls firing the
'load' event.

  • svg/SVGScriptElement.cpp:

(WebCore::SVGScriptElement::SVGScriptElement):
(WebCore::SVGScriptElement::insertedIntoAncestor):
(WebCore::SVGScriptElement::dispatchErrorEvent):
(WebCore::SVGScriptElement::finishParsingChildren): Deleted.

  • svg/SVGScriptElement.h:

dispatchErrorEvent() is now a virtual function. Let SVGScriptElement
overrides it so it can track when the loader finishes its activity.

  • svg/SVGStyleElement.cpp:

(WebCore::SVGStyleElement::SVGStyleElement):

  • svg/SVGStyleElement.h:
  • svg/SVGURIReference.cpp:

(WebCore::SVGURIReference::contextElement const):
(WebCore::SVGURIReference::parseAttribute):
(WebCore::SVGURIReference::haveLoadedRequiredResources const):
(WebCore::SVGURIReference::dispatchLoadEvent):

  • svg/SVGURIReference.h:

(WebCore::SVGURIReference::haveFiredLoadEvent const):
(WebCore::SVGURIReference::setHaveFiredLoadEvent):
(WebCore::SVGURIReference::errorOccurred const):
(WebCore::SVGURIReference::setErrorOccurred):
SVGURIReference will decide whether the 'load' event can be fired or not.

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::SVGUseElement):
(WebCore::SVGUseElement::insertedIntoAncestor):
(WebCore::SVGUseElement::notifyFinished):
(WebCore::SVGUseElement::finishParsingChildren): Deleted.
(WebCore::SVGUseElement::isValid const): Deleted.
(WebCore::SVGUseElement::haveLoadedRequiredResources): Deleted.
(WebCore::SVGUseElement::setHaveFiredLoadEvent): Deleted.
(WebCore::SVGUseElement::haveFiredLoadEvent const): Deleted.
(WebCore::SVGUseElement::svgLoadEventTimer): Deleted.

  • svg/SVGUseElement.h:

SVGUseElement needs to track firing the load event or error occurrence
the same way SVGImageElement and SVGScriptElement do.

LayoutTests:

  • fast/dom/crash-moving-subtree-between-documents.html:
  • fast/dom/focus-style-resolution.html:
  • fast/html/marquee-reparent-check.html:

The SVGElement element should not fire "load" event. Set the HTML <body>
element's "onload" event handler to be the function which was set to the
SVGElement's "onload" event handler.

  • svg/custom/image-load-event-expected.html: Added.
  • svg/custom/image-load-event.html: Added.

Images with external resources or data URIs must fire load events once
the data is loaded or decoded.

  • svg/custom/loadevents-async-expected.txt: Removed.
  • svg/custom/loadevents-async.html: Removed.
  • svg/custom/loadevents-capturing-expected.txt: Removed.
  • svg/custom/loadevents-capturing.svg: Removed.
  • svg/custom/loadevents-externalresourcesrequired-displaynone-expected.txt: Removed.
  • svg/custom/loadevents-externalresourcesrequired-displaynone.svg: Removed.
  • svg/custom/loadevents-externalresourcesrequired-expected.txt: Removed.
  • svg/custom/loadevents-externalresourcesrequired.svg: Removed.
  • svg/custom/loadevents-normal-displaynone-expected.txt: Removed.
  • svg/custom/loadevents-normal-displaynone.svg: Removed.
  • svg/custom/loadevents-normal-expected.txt: Removed.
  • svg/custom/loadevents-normal.svg: Removed.

These tests were implementing the SVG1.1 SVGLoad event interactivity:
https://www.w3.org/TR/SVG11/interact.html where every SVG element had to
fire the SVGLoad event once it parsed its closing tag. SVG structurally
external elements were firing load events when the corresponding external
resources had finished loading but only if externalResourcesRequired = true.

  • svg/dom/SVGScriptElement/script-load-and-error-events.svg:

This test had two wrong assumptions:
1) The SVG structurally external element fires a load event when parsing
the children finishes. Then they may fire another load or error event if
externalResourcesRequired = true.
2) The outermost SVG element will not fire its load event unless all the
children fires their load events correctly.

11:08 AM Changeset in webkit [251289] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

ElementRuleCollector function signature cleanups
https://bugs.webkit.org/show_bug.cgi?id=203153

Reviewed by Zalan Bujtas.

Many functions in ElementRuleCollector take repetitive arguments that can be removed:

  • Make includeEmptyRules argument a class member
  • Remove RuleRange argument, update the ranges in rule transfer step.
  • css/ElementRuleCollector.cpp:

(WebCore::MatchRequest::MatchRequest):
(WebCore::ElementRuleCollector::addMatchedRule):
(WebCore::ElementRuleCollector::collectMatchingRules):
(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
(WebCore::ElementRuleCollector::transferMatchedRules):
(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchesAnyAuthorRules):
(WebCore::ElementRuleCollector::collectMatchingAuthorRules):
(WebCore::ElementRuleCollector::matchAuthorShadowPseudoElementRules):
(WebCore::ElementRuleCollector::matchHostPseudoClassRules):
(WebCore::ElementRuleCollector::matchSlottedPseudoElementRules):
(WebCore::ElementRuleCollector::matchPartPseudoElementRules):
(WebCore::ElementRuleCollector::matchPartPseudoElementRulesForScope):
(WebCore::ElementRuleCollector::collectMatchingShadowPseudoElementRules):
(WebCore::ElementRuleCollector::collectSlottedPseudoElementRulesForSlot):
(WebCore::ElementRuleCollector::matchUserRules):
(WebCore::ElementRuleCollector::matchUARules):
(WebCore::ElementRuleCollector::collectMatchingRulesForList):
(WebCore::ElementRuleCollector::matchAllRules):
(WebCore::ElementRuleCollector::hasAnyMatchingRules):

  • css/ElementRuleCollector.h:

(WebCore::ElementRuleCollector::setIncludeEmptyRules):
(WebCore::ElementRuleCollector::transferMatchedRules):

Range update happens now here based on the supplied argument.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::pseudoStyleForElement):
(WebCore::StyleResolver::pseudoStyleRulesForElement):

10:35 AM Changeset in webkit [251288] by russell_e@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r251262): Layout Test scrollingcoordinator/ios/non-stable-viewport-scroll.html is a Flaky Failure
https://bugs.webkit.org/show_bug.cgi?id=203157

Unreviewed Test Gardening.

  • platform/ios-simulator-wk2/TestExpectations: Marked

scrollingcoordinator/ios/non-stable-viewport-scroll.html as flaky

9:58 AM Changeset in webkit [251287] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[iOS] Layout Test http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html is frequently failing or timing out (198185)
https://bugs.webkit.org/show_bug.cgi?id=198185
<rdar://problem/51074251>

Patch by Kate Cheney <Kate Cheney> on 2019-10-18
Reviewed by Youenn Fablet.

Fixes a flaky failure caused by test results being checked before data
records have finished processing. This patch uses a callback to
ensure data processing has finished before continuing.

  • http/tests/resourceLoadStatistics/website-data-removal-for-site-navigated-to-with-link-decoration.html:
  • platform/ios-wk2/TestExpectations:
9:28 AM Changeset in webkit [251286] by Truitt Savell
  • 2 edits in trunk/LayoutTests

REGRESSION: Layout Test webgl/many-contexts.html is a flaky timeout on Mojave
https://bugs.webkit.org/show_bug.cgi?id=198867

Unreviewed test gardening

  • platform/mac/TestExpectations:
9:20 AM Changeset in webkit [251285] by Antti Koivisto
  • 9 edits in trunk

[CSS Shadow Parts] :part rules should be able to override style attribute
https://bugs.webkit.org/show_bug.cgi?id=202919

Reviewed by Zalan Bujtas.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-shadow-parts/simple-inline-expected.txt:

Source/WebCore:

Element inline style was simply appended to the matching declaration list and not sorted with the rest of the author style.
This used to work because before CSS Shadow Parts feature inline style would always win.

Fixing this involves refactoring the rule collection code to remove this assumption.

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::addMatchedRule):

Both initialize and update ranges here.

(WebCore::ElementRuleCollector::clearMatchedRules):
(WebCore::ElementRuleCollector::addElementStyleProperties):

Both initialize and update ranges here.

(WebCore::ElementRuleCollector::sortAndTransferMatchedRules):

Split out transfering to a separate function.

(WebCore::ElementRuleCollector::transferMatchedRules):

Add a parameter to limit transfer to rules from a scope.

(WebCore::ElementRuleCollector::matchAuthorRules):
(WebCore::ElementRuleCollector::matchesAnyAuthorRules):

Replace hasMatchedRules() with a more specific function. This can use collectMatchingAuthorRules and avoids unnecessary sorting step.

(WebCore::ElementRuleCollector::collectMatchingAuthorRules):

Split out collecting the rules from matchAuthorRules. Like other collect functions, this doesn't do any sorting.

(WebCore::ElementRuleCollector::matchAllRules):

Add element inline style before transfering rules from the containing host scope.

(WebCore::ElementRuleCollector::addElementInlineStyleProperties):

Factor adding inline style into a function.

9:14 AM Changeset in webkit [251284] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][TFC] Include horizontal spacing when checking for the extra horizontal space
https://bugs.webkit.org/show_bug.cgi?id=203154
<rdar://problem/56408032>

Reviewed by Antti Koivisto.

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraHorizontalSpace):

9:12 AM Changeset in webkit [251283] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][TFC] Fix table's total horizontal spacing computation
https://bugs.webkit.org/show_bug.cgi?id=203151
<rdar://problem/56406930>

Reviewed by Antti Koivisto.

The horizontal spacing value sets the gaps between

  1. first column and the left edge of the table's content box
  2. between 2 columns
  3. last column and the right edge of the table's content box

In case of 'n' columns, the number of gaps is 'n + 1'.

  • layout/tableformatting/TableGrid.h:

(WebCore::Layout::TableGrid::totalHorizontalSpacing const):

9:11 AM Changeset in webkit [251282] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][TFC] Cache table's width constraint values.
https://bugs.webkit.org/show_bug.cgi?id=203135
<rdar://problem/56396352>

Reviewed by Antti Koivisto.

This patch ensures that when computedIntrinsicWidthConstraints is called from both the preferred width and the actual layout codepaths during a layout frame, we don't
end up building up the grid twice.

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::computedIntrinsicWidthConstraints):
(WebCore::Layout::TableFormattingContext::computePreferredWidthForColumns):
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraHorizontalSpace):

  • layout/tableformatting/TableGrid.cpp:

(WebCore::Layout::TableGrid::widthConstraints):
(WebCore::Layout::TableGrid::widthConstraints const): Deleted.

  • layout/tableformatting/TableGrid.h:

(WebCore::Layout::TableGrid::hasComputedWidthConstraints const):

9:09 AM Changeset in webkit [251281] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC][BFC] TableFormattingContext::computedIntrinsicWidthConstraints should not expect a valid containing block's width
https://bugs.webkit.org/show_bug.cgi?id=203131
<rdar://problem/56394676>

Reviewed by Antti Koivisto.

When TableFormattingContext::computedIntrinsicWidthConstraints is called by the preferred width computation (<div style="float: left"><table>)
the containing block's width is not yet set (it gets computed based on the preferred width) so computedIntrinsicWidthConstraints should not be relying
on it. Let's move that logic out to TableFormattingContext::layoutInFlowContent() where it belongs.

  • layout/blockformatting/BlockFormattingContextGeometry.cpp:

(WebCore::Layout::BlockFormattingContext::Geometry::inFlowWidthAndMargin):

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::layoutInFlowContent):
(WebCore::Layout::TableFormattingContext::computedIntrinsicWidthConstraints):
(WebCore::Layout::TableFormattingContext::ensureTableGrid):
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraHorizontalSpace):
(WebCore::Layout::TableFormattingContext::computedTableWidth): Deleted.
(WebCore::Layout::TableFormattingContext::distributeExtraHorizontalSpace): Deleted.

  • layout/tableformatting/TableFormattingContext.h:
7:54 AM Changeset in webkit [251280] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][BFC] Fix block level formatting root inflow box height computation
https://bugs.webkit.org/show_bug.cgi?id=203085
<rdar://problem/56372306>

Reviewed by Antti Koivisto.

Section 10.6.7 (https://www.w3.org/TR/CSS22/visudet.html#root-height) defines the height computation for block level formatting context roots.
We already use it for floats, out-of-flow and block level boxes when overflow computes to not "visible".
This patch makes generic in-flow non-replaced BFC roots (e.g. principal block container box for <table>) compute their heights according to 10.6.7.

  • layout/blockformatting/BlockFormattingContextGeometry.cpp:

(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeightAndMargin):

7:24 AM Changeset in webkit [251279] by Wenson Hsieh
  • 27 edits
    1 copy
    6 adds in trunk

[Clipboard API] Support navigator.clipboard.read()
https://bugs.webkit.org/show_bug.cgi?id=203021

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Rebaseline a web platform test, now that Clipboard.read() no longer immediately rejects.

  • web-platform-tests/clipboard-apis/async-navigator-clipboard-basics.https-expected.txt:

Source/WebCore:

Add support for navigator.clipboard.read(), which returns a promise that resolves to a list of ClipboardItems.
See below for more details.

Tests: editing/async-clipboard/clipboard-change-data-while-reading.html

editing/async-clipboard/clipboard-read-basic.html

  • Modules/async-clipboard/Clipboard.cpp:

(WebCore::Clipboard::read):

Implement read(). This makes two calls to the platform pasteboard: the first to get the current change count,
and if the change count is different from the changeCount used for the last read() call (or there are no
existing clipboard items being tracked), then we request pasteboard item information for all items on the
pasteboard, and use this information to create new clipboard items. Otherwise, if the changeCount is still valid
for the current list of clipboard items, simply return these clipboard items.

If the changeCount ends up being different in between the initial changeCount request and when the pasteboard
item information is received, we immediately bail with a NotAllowedError. The new layout test
clipboard-change-data-while-reading.html exercises this scenario.

(WebCore::Clipboard::getType):
(WebCore::Clipboard::frame const):

  • Modules/async-clipboard/Clipboard.h:
  • Modules/async-clipboard/ClipboardItem.cpp:

(WebCore::ClipboardItem::blobFromString):
(WebCore::ClipboardItem::ClipboardItem):
(WebCore::ClipboardItem::create):
(WebCore::ClipboardItem::navigator):

Refactor this so that each clipboard item itself has a WeakPtr to its Navigator. This avoids having to follow
the weak pointer to the Clipboard to get to the Clipboard's navigator during garbage collection when computing
reachability from opaque roots, since this may happen on a background (GC) thread.

(WebCore::ClipboardItem::clipboard):

  • Modules/async-clipboard/ClipboardItem.h:
  • Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:

(WebCore::ClipboardItemBindingsDataSource::getType):
(WebCore::blobFromString): Deleted.

Move this to ClipboardItem, and make it a static method.

  • Modules/async-clipboard/ClipboardItemPasteboardDataSource.cpp:

(WebCore::ClipboardItemPasteboardDataSource::ClipboardItemPasteboardDataSource):
(WebCore::ClipboardItemPasteboardDataSource::getType):

  • Modules/async-clipboard/ClipboardItemPasteboardDataSource.h:

Move a couple of member variables (index and changeCount) out of ClipboardItem. Instead of having each
ClipboardItem keep track of this information, have the Clipboard that owns the ClipboardItem keep this
information. This means that reading data from ClipboardItem will (in a future patch) work by having the item
ask its Clipboard object to read data on its behalf.

  • platform/Pasteboard.cpp:

(WebCore::Pasteboard::allPasteboardItemInfo const):
(WebCore::Pasteboard::pasteboardItemInfo const):
(WebCore::Pasteboard::readString):
(WebCore::Pasteboard::readBuffer):
(WebCore::Pasteboard::readURL):

Add some null checks to handle the case where there is no pasteboard strategy.

Tools:

Make adjustments to WebKitTestRunner and DumpRenderTree to support the new layout tests. See below for more
details.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/mac/DumpRenderTreePasteboard.mm:

(-[LocalPasteboard pasteboardItems]):

Fixes an existing issue with the mock NSPasteboard used for layout tests. Currently, our logic for converting
the contents of the platform pasteboard to NSPasteboardItem simply writes the pasteboard data as-is to
NSPasteboardItems. However, these pasteboard types may be legacy pasteboard types, in which case
NSPasteboardItem will simply handle the call to -setData:forType: as a no-op. AppKit has logic in this
scenario to canonicalize these legacy pasteboard types to their modern counterparts, but this is absent in
DumpRenderTreePasteboard and WebKitTestRunnerPasteboard.

Address this by teaching the mock pasteboards to convert legacy types to modern types when generating platform
pasteboard items.

  • TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
  • TestRunnerShared/UIScriptContext/UIScriptController.h:

(WTR::UIScriptController::copyText):

Add a new UIScriptController method to write a string to the platform pasteboard. This patch adds support for
this new testing hook on macOS and iOS, in WebKit2 (WebKitTestRunner).

  • TestRunnerShared/mac/NSPasteboardAdditions.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.h.
  • TestRunnerShared/mac/NSPasteboardAdditions.mm: Added.

(+[NSPasteboard _modernPasteboardType:]):

Add a helper to convert legacy pasteboard types (and dynamic UTIs that map to legacy pasteboard types) to
modern pasteboard types, suitable for writing to NSPasteboardItems on macOS.

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
  • WebKitTestRunner/ios/UIScriptControllerIOS.h:
  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::copyText):

  • WebKitTestRunner/mac/UIScriptControllerMac.h:
  • WebKitTestRunner/mac/UIScriptControllerMac.mm:

(WTR::UIScriptControllerMac::copyText):

  • WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:

Apply the same fix for WebKitTestRunner's mock NSPasteboard.

(-[LocalPasteboard _clearContentsWithoutUpdatingChangeCount]):
(-[LocalPasteboard clearContents]):

Make -clearContents clear out all the contents on the mock pasteboard, instead of crashing in AppKit.

(-[LocalPasteboard declareTypes:owner:]):
(-[LocalPasteboard pasteboardItems]):

LayoutTests:

  • editing/async-clipboard/clipboard-change-data-while-reading-expected.txt: Added.
  • editing/async-clipboard/clipboard-change-data-while-reading.html: Added.

Add a new layout test to verify that if the platform pasteboard changes in the middle of a DOM paste access
request, the promise returned by Clipboard.read() should reject, and the page should not receive any clipboard
items.

  • editing/async-clipboard/clipboard-read-basic-expected.txt: Added.
  • editing/async-clipboard/clipboard-read-basic.html: Added.

Add a new layout test to exercise Clipboard.read(). Since we don't support reading data from clipboard items
yet, this only checks the types of each pasteboard item. This test additionally ensures that the ClipboardItems
returned from the API are the same between calls to Clipboard.read() if the data hasn't changed.

  • editing/async-clipboard/resources/async-clipboard-helpers.js:

(writeToClipboardUsingDataTransfer):

Add a new helper to synchronously write data to the clipboard using execCommand and DataTransfer API.

(async.triggerProgrammaticPaste):

Add a new helper to trigger programmatic paste by activating the given element or location. Also receives an
array of options (which, for now, just supports a single option to change the pasteboard when granting DOM paste
access).

  • platform/ios-wk1/TestExpectations: Skip clipboard-change-data-while-reading.html for now in WebKit1.
  • platform/mac-wk1/TestExpectations: Skip clipboard-change-data-while-reading.html for now in WebKit1.
  • platform/win/TestExpectations: Skip the new layout tests on Windows for now.
3:40 AM Changeset in webkit [251278] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit

Avoid crashes on GCC-compiled binaries by avoiding a use-after-move
that's the result of differring call conventions.

Rubber-stamped by Carlos Garcia Campos.

  • NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:

(WebKit::WebSWServerConnection::startFetch): Copy the SW identifier from
the ServiceWorkerFetchTask before it's moved into the lambda.

1:35 AM Changeset in webkit [251277] by youenn@apple.com
  • 2 edits in trunk/Source/ThirdParty/libwebrtc

Update libwebrtc third-party abseilcpp to M78
https://bugs.webkit.org/show_bug.cgi?id=202726
<rdar://problem/56147823>

Unreviewed.

  • Source/third_party/abseil-cpp/absl/strings/string_view.h:

(absl::string_view::CheckLengthInternal):
Build fix for debug bots.

1:29 AM Changeset in webkit [251276] by Fujii Hironori
  • 2 edits in trunk/Source/JavaScriptCore

[Clang][Windows] Options.cpp(317,25): error: no matching function for call to 'optionTypeSpecificIndex'
https://bugs.webkit.org/show_bug.cgi?id=203142

Unreviewed build fix

clang-cl reported a compilation error for MSVC bug workaround code of optionTypeSpecificIndex.

runtime\Options.cpp(294,12): error: variables defined in a constexpr function must be initialized

size_t index;


  • runtime/Options.cpp:

(JSC::optionTypeSpecificIndex): Initialize the variable 'index'.

Note: See TracTimeline for information about the timeline view.