Branch: refs/tags/WebKit-7613.6.1.0.3 Home: https://github.com/WebKit/WebKit Commit: 906929f11e55200ae29b7d5de82156d91d086e49 https://github.com/WebKit/WebKit/commit/906929f11e55200ae29b7d5de82156d91d086e49 Author: Alan Coon <alanc...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022)
Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.4.1.0.1 Canonical link: https://commits.webkit.org/245886.806@safari-7613.3.9.0-branch Commit: 5a8de3f50180a061d1140261ef82c825f7730952 https://github.com/WebKit/WebKit/commit/5a8de3f50180a061d1140261ef82c825f7730952 Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: A JSTests/stress/bigint-array-byte-offset.js M Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp Log Message: ----------- Cherry-pick 1f3e8b70b999. rdar://problem/97264358 [AArch32][Aarch64] ASSERTION FAILED variant.intrinsic() == NoIntrinsic in void JSC::DFG::ByteCodeParser::handleGetById https://bugs.webkit.org/show_bug.cgi?id=242599 <rdar://96836847> Reviewed by Mark Lam. Previously all intrinsic getters are handled. So at this point, it should be NoIntrinsic. But after introducing 4GB TypedArray and BigInt64Array, this handling can fail. However, in this case, we should just continue using this generic path: invoking a getter. Thus, the current code is correct, and this assertion is stale. This patch removes this stale assertion. * JSTests/stress/bigint-array-byte-offset.js: Added. (__f_2): * Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::handleGetById): Canonical link: https://commits.webkit.org/252391@main Canonical link: https://commits.webkit.org/245886.807@safari-7613.3.9.0-branch Commit: d5b48dbd85a070d0b0a1f27395f84755087b73bb https://github.com/WebKit/WebKit/commit/d5b48dbd85a070d0b0a1f27395f84755087b73bb Author: Chris Dumez <cdu...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/WebCore/bindings/js/DOMPromiseProxy.h Log Message: ----------- Cherry-pick 4ac005fe82bb. rdar://problem/97276126 Do hardening in DOMPromiseProxy https://bugs.webkit.org/show_bug.cgi?id=242528 <rdar://96204017> Reviewed by Darin Adler. Make sure we make a copy of the deferred promises before iterating over them, in case the code inside the loop modifies the Vector. Similarly, do a copy of the return value or exception the deferred promises are settled with, in case |this| goes away. * Source/WebCore/bindings/js/DOMPromiseProxy.h: (WebCore::DOMPromiseProxy<IDLType>::resolve): (WebCore::DOMPromiseProxy<IDLAny>::resolve): (WebCore::DOMPromiseProxy<IDLType>::resolveWithNewlyCreated): (WebCore::DOMPromiseProxy<IDLType>::reject): (WebCore::DOMPromiseProxy<IDLUndefined>::resolve): (WebCore::DOMPromiseProxy<IDLUndefined>::reject): (WebCore::DOMPromiseProxyWithResolveCallback<IDLType>::resolve): (WebCore::DOMPromiseProxyWithResolveCallback<IDLType>::resolveWithNewlyCreated): (WebCore::DOMPromiseProxyWithResolveCallback<IDLType>::reject): Canonical link: https://commits.webkit.org/252305@main Canonical link: https://commits.webkit.org/245886.808@safari-7613.3.9.0-branch Commit: 0e1154a51dcc5ab61c86e5eb764cd7147a7649d3 https://github.com/WebKit/WebKit/commit/0e1154a51dcc5ab61c86e5eb764cd7147a7649d3 Author: Alan Bujtas <za...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/WebCore/rendering/LegacyLineLayout.cpp Log Message: ----------- Cherry-pick 4bfe200db44b. rdar://problem/97277370 Existing floatingObject->originatingLine() is not always an incorrect state with security implication https://bugs.webkit.org/show_bug.cgi?id=242493 Reviewed by Simon Fraser. The float object's originating line is the line box where we see the float first. Having duplicate originating line is an incorrect state which may lead to a security issue. However re-assigning the same line should not be considered one. * Source/WebCore/rendering/LegacyLineLayout.cpp: (WebCore::LegacyLineLayout::determineStartPosition): Canonical link: https://commits.webkit.org/252269@main Canonical link: https://commits.webkit.org/245886.809@safari-7613.3.9.0-branch Commit: 0a6cd9c47e963ee45f0dff2531add5c8c89cc44f https://github.com/WebKit/WebKit/commit/0a6cd9c47e963ee45f0dff2531add5c8c89cc44f Author: Youenn Fablet <youe...@gmail.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/ThirdParty/libwebrtc/Source/webrtc/pc/rtp_sender.cc Log Message: ----------- Cherry-pick 4cfca4164256. rdar://problem/97276088 Update rtp_sender RestoreEncodingLayers function https://bugs.webkit.org/show_bug.cgi?id=242506 rdar://96590018 Reviewed by Eric Carlson. * Source/ThirdParty/libwebrtc/Source/webrtc/pc/rtp_sender.cc: Canonical link: https://commits.webkit.org/252302@main Canonical link: https://commits.webkit.org/245886.810@safari-7613.3.9.0-branch Commit: a0989c64649f4a2ed7e5956c100a1bac3d0c10ba https://github.com/WebKit/WebKit/commit/a0989c64649f4a2ed7e5956c100a1bac3d0c10ba Author: Kyle Piddington <kpidding...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_render_utils.h M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_render_utils.mm M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/format_autogen.h M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/gen_indices.metal M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/mtl_default_shaders_src_autogen.inc M Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/mtl_default_shaders_src_autogen.metal Log Message: ----------- Cherry-pick 7bf231b1fd35. rdar://problem/97324250 [ANGLE] Bounds check index buffer generation https://bugs.webkit.org/show_bug.cgi?id=242762 Bounds check element buffer access during triangle fan generation. Out of bounds reads of the element buffer on both the CPU and GPU will result in getting back index zero, rather than reading garbage memory Reviewed by Dean Jackson. * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_render_utils.h: * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/mtl_render_utils.mm: (rx::mtl::IndexGeneratorUtils::generateTriFanBufferFromElementsArray): (rx::mtl::IndexGeneratorUtils::generateTriFanBufferFromElementsArrayGPU): (rx::mtl::IndexGeneratorUtils::generateTriFanBufferFromElementsArrayCPU): * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/format_autogen.h: * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/gen_indices.metal: * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/mtl_default_shaders_src_autogen.inc: * Source/ThirdParty/ANGLE/src/libANGLE/renderer/metal/shaders/mtl_default_shaders_src_autogen.metal: Canonical link: https://commits.webkit.org/252526@main Canonical link: https://commits.webkit.org/245886.811@safari-7613.3.9.0-branch Commit: d845f4bfcf5bd821ee06f22990e8617b039662cc https://github.com/WebKit/WebKit/commit/d845f4bfcf5bd821ee06f22990e8617b039662cc Author: Saam Barati <sbar...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/JavaScriptCore/dfg/DFGCPSRethreadingPhase.cpp M Source/JavaScriptCore/dfg/DFGGraph.cpp Log Message: ----------- Cherry-pick 8b320548f922. rdar://problem/97274970 Don't allow Flush/PhantomLocal to be the head variable in a block in ThreadedCPS https://bugs.webkit.org/show_bug.cgi?id=242096 Reviewed by Yusuke Suzuki. Before this patch, we would allow Flush/PhantomLocal to be the node inside the variableAtHead Operands in a basic block. However, this causes some issues inside of our CFG simplifcations phase. CFG simplification will look at the variables at the head of the basic blocks that it's going to remove to indicate how we should preserve liveness in its predecessor. We would then preserve liveness using a Flush if the variableAtHead was Flushed, otherwise, we would use a PhantomLocal. However, the variable at the head might be a PhantomLocal, and it might be a PhantomLocal over a variable that's Flushed. However, in our IsFlushed analysis, we never mark PhantomLocals as IsFlushed, we only mark value producing nodes, Flush, or Phis. We do this by traversing the Phi data flow graph to propagate IsFlushed. And a Phi can never transitively point to a PhantomLocal, so it will never indicate if a variable is flushed. To fix this, we just make the variableAtHead contain a Phi instead of a Flush/PhantomLocal in the situation where it used to be a Flush/PhantomLocal. This Phi is what the Flush/PhantomLocal used to point to. And the compiler is already prepared for variableAtHead to point to a Phi since that's what happens for GetLocal. GetLocal will point to a Phi that's inside variableAtHead. And now what's pointed to by variableAtHead will properly indicate if the variable is flushed since it'll be a Phi or a SetArgument node. * Source/JavaScriptCore/dfg/DFGCPSRethreadingPhase.cpp: (JSC::DFG::CPSRethreadingPhase::canonicalizeFlushOrPhantomLocalFor): (JSC::DFG::CPSRethreadingPhase::canonicalizeLocalsInBlock): * Source/JavaScriptCore/dfg/DFGGraph.cpp: (JSC::DFG::Graph::dumpBlockHeader): Canonical link: https://commits.webkit.org/252192@main Canonical link: https://commits.webkit.org/245886.812@safari-7613.3.9.0-branch Commit: ec2fe2a686526772b66f7a437a8e06dc71231b7c https://github.com/WebKit/WebKit/commit/ec2fe2a686526772b66f7a437a8e06dc71231b7c Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp Log Message: ----------- Cherry-pick a3dd7dc5f60b. rdar://problem/97278973 [JSC] Drop wasm stale assertion https://bugs.webkit.org/show_bug.cgi?id=242047 rdar://95866655 Reviewed by Mark Lam. This patch drops stale assertion in addDelegateToUnreachable. * Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp: (JSC::Wasm::LLIntGenerator::addDelegateToUnreachable): Canonical link: https://commits.webkit.org/251902@main Canonical link: https://commits.webkit.org/245886.813@safari-7613.3.9.0-branch Commit: f04744decc111e77a7c01ded55093d343d5b2b7b https://github.com/WebKit/WebKit/commit/f04744decc111e77a7c01ded55093d343d5b2b7b Author: Alan Bujtas <za...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/WebCore/rendering/RenderElement.cpp M Source/WebCore/rendering/RenderLayer.cpp M Source/WebCore/rendering/RenderLayer.h Log Message: ----------- Cherry-pick a8bfed275263. rdar://problem/97273521 Do not include unparented RenderLayers in RenderLayer::topLayerRenderLayers https://bugs.webkit.org/show_bug.cgi?id=241963 <rdar://95098693> Reviewed by Simon Fraser. * Source/WebCore/rendering/RenderElement.cpp: (WebCore::findNextLayer): (WebCore::layerNextSiblingRespectingTopLayer): * Source/WebCore/rendering/RenderLayer.cpp: * Source/WebCore/rendering/RenderLayer.h: Canonical link: https://commits.webkit.org/251848@main Canonical link: https://commits.webkit.org/245886.814@safari-7613.3.9.0-branch Commit: 7f676a460181db52d1b44e9b8a103f626ae90384 https://github.com/WebKit/WebKit/commit/7f676a460181db52d1b44e9b8a103f626ae90384 Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/JavaScriptCore/jsc.cpp M Source/JavaScriptCore/runtime/InitializeThreading.cpp M Source/JavaScriptCore/shell/playstation/TestShell.cpp M Source/JavaScriptCore/wasm/WasmFaultSignalHandler.cpp M Source/JavaScriptCore/wasm/WasmFaultSignalHandler.h M Source/JavaScriptCore/wasm/WasmMemory.cpp M Source/WebKit/WebProcess/WebProcess.cpp Log Message: ----------- Cherry-pick bb92169c6b02. rdar://problem/97264328 [JSC] Activate wasm fault handler when signaling memory is used https://bugs.webkit.org/show_bug.cgi?id=242358 rdar://96056675 Reviewed by Mark Lam. https://github.com/WebKit/WebKit/commit/42ad6e4af024381a287ea6a587da469ef43f2819 broke JavaScriptCore.framework's wasm signal handler since it is no longer installed. This patch activates that handler when wasm memory is created with signaling requirement, which is Signaling or Shared memory. We do not activate this in JSC::initialize since LLDB has a bug that it cannot handle mach exception. We defer this initialization only when we use Wasm::Memory with necessary features. * Source/JavaScriptCore/jsc.cpp: (runJSC): * Source/JavaScriptCore/runtime/InitializeThreading.cpp: (JSC::initialize): * Source/JavaScriptCore/shell/playstation/TestShell.cpp: (setupTestRun): * Source/JavaScriptCore/wasm/WasmFaultSignalHandler.cpp: (JSC::Wasm::activateSignalingMemory): (JSC::Wasm::initializeSignalingMemory): Deleted. * Source/JavaScriptCore/wasm/WasmFaultSignalHandler.h: * Source/JavaScriptCore/wasm/WasmMemory.cpp: (JSC::Wasm::MemoryHandle::MemoryHandle): * Source/WebKit/WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess): Canonical link: https://commits.webkit.org/252164@main Canonical link: https://commits.webkit.org/245886.815@safari-7613.3.9.0-branch Commit: da4179b034adba7de371ff71e5c902b8bcc53b2c https://github.com/WebKit/WebKit/commit/da4179b034adba7de371ff71e5c902b8bcc53b2c Author: Brandon Stewart <brandonstew...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/WebCore/crypto/SubtleCrypto.cpp Log Message: ----------- Cherry-pick c29e5a28c176. rdar://problem/97276107 Ensure promise is not garbage collected https://bugs.webkit.org/show_bug.cgi?id=242287 Reviewed by Tim Nguyen. We need to ensure that the promise always remains alive when in use. Adding a RefPtr guarantees that it will not be garbage collected. * Source/WebCore/crypto/SubtleCrypto.cpp: (WebCore::SubtleCrypto::unwrapKey): Canonical link: https://commits.webkit.org/252091@main Canonical link: https://commits.webkit.org/245886.816@safari-7613.3.9.0-branch Commit: b9a715e45910d40433ce8b415102f223d7a68e7a https://github.com/WebKit/WebKit/commit/b9a715e45910d40433ce8b415102f223d7a68e7a Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/JavaScriptCore/wasm/WasmFunctionParser.h Log Message: ----------- Cherry-pick cb3e9788095c. rdar://problem/97276414 [JSC] Clean up delegate's error message https://bugs.webkit.org/show_bug.cgi?id=242099 Reviewed by Saam Barati. This patch fixes error message for delegate wasm opcode, it is not br or br_if. * Source/JavaScriptCore/wasm/WasmFunctionParser.h: (JSC::Wasm::FunctionParser<Context>::parseDelegateTarget): (JSC::Wasm::FunctionParser<Context>::parseExpression): (JSC::Wasm::FunctionParser<Context>::parseUnreachableExpression): Canonical link: https://commits.webkit.org/251944@main Canonical link: https://commits.webkit.org/245886.817@safari-7613.3.9.0-branch Commit: 5ddcf36b601c7229c3a36940c81f8f2a27ed88a0 https://github.com/WebKit/WebKit/commit/5ddcf36b601c7229c3a36940c81f8f2a27ed88a0 Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-08-03 (Wed, 03 Aug 2022) Changed paths: M Source/WebCore/bindings/js/JSDOMGuardedObject.cpp Log Message: ----------- Cherry-pick ecad671df9fc. rdar://problem/97274999 Refine JSDOMGuardedObject https://bugs.webkit.org/show_bug.cgi?id=242282 rdar://94649571 Reviewed by Mark Lam. This patch fixes the following issues. 1. JSDOMGuardedObject should emit write-barrier after storing a reference to JSDOMGlobalObject. 2. Regardless of m_guarded status, we should unregister itself from JSDOMGlobalObject if JSDOMGlobalObject is live since we register it in the constructor. * Source/WebCore/bindings/js/JSDOMGuardedObject.cpp: (WebCore::DOMGuardedObject::DOMGuardedObject): (WebCore::DOMGuardedObject::clear): (WebCore::DOMGuardedObject::removeFromGlobalObject): Canonical link: https://commits.webkit.org/252086@main Canonical link: https://commits.webkit.org/245886.818@safari-7613.3.9.0-branch Commit: 6b69f56e4cc972b5c66f05e6fe701cdbe7a7b39d https://github.com/WebKit/WebKit/commit/6b69f56e4cc972b5c66f05e6fe701cdbe7a7b39d Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-08-08 (Mon, 08 Aug 2022) Changed paths: A JSTests/stress/map-clear-get.js A JSTests/stress/set-clear-has.js M Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp M Source/JavaScriptCore/runtime/AbstractModuleRecord.cpp M Source/JavaScriptCore/runtime/HashMapImpl.h M Source/JavaScriptCore/runtime/HashMapImplInlines.h M Source/JavaScriptCore/runtime/JSMap.h M Source/JavaScriptCore/runtime/JSModuleLoader.cpp M Source/JavaScriptCore/runtime/JSSet.h M Source/JavaScriptCore/runtime/MapConstructor.cpp M Source/JavaScriptCore/runtime/MapPrototype.cpp M Source/JavaScriptCore/runtime/SetConstructor.cpp M Source/JavaScriptCore/runtime/SetPrototype.cpp M Source/JavaScriptCore/runtime/WeakMapImplInlines.h M Source/WebCore/bindings/js/JSDOMMapLike.cpp M Source/WebCore/bindings/js/JSDOMSetLike.cpp M Source/WebCore/bindings/js/SerializedScriptValue.cpp Log Message: ----------- Cherry-pick fdaaccf6d779. rdar://problem/98335573 Cherry-pick 1ed1e4a336e1. rdar://problem/98068082 [JSC] Make JSMap and JSSet construction more simple and efficient https://bugs.webkit.org/show_bug.cgi?id=243557 rdar://98068082 Reviewed by Mark Lam and Saam Barati. This patch makes the initial buffer of JSMap / JSSet nullptr so that we can make allocation of them simpler and efficient for non-using case. It cleans up many code in module loader etc. And it paves the way to allocating them from DFG and FTL efficiently. It also cleans up SerializedScriptValue implementation. * JSTests/stress/map-clear-get.js: Added. (shouldBe): (test): * JSTests/stress/set-clear-has.js: Added. (shouldBe): (set clear): (set shouldBe): (set new): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compile): * Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): * Source/JavaScriptCore/runtime/AbstractModuleRecord.cpp: (JSC::AbstractModuleRecord::finishCreation): * Source/JavaScriptCore/runtime/HashMapImpl.h: (JSC::HashMapBuffer::tryCreate): (JSC::HashMapImpl::HashMapImpl): (JSC::HashMapBuffer::create): Deleted. (JSC::HashMapImpl::shouldRehashAfterAdd const): Deleted. * Source/JavaScriptCore/runtime/HashMapImplInlines.h: (JSC::shouldShrink): (JSC::shouldRehash): (JSC::nextCapacity): (JSC::HashMapImpl<HashMapBucketType>::finishCreation): (JSC::HashMapImpl<HashMapBucketType>::add): (JSC::HashMapImpl<HashMapBucketType>::addNormalized): (JSC::HashMapImpl<HashMapBucketType>::remove): (JSC::HashMapImpl<HashMapBucketType>::clear): (JSC::HashMapImpl<HashMapBucketType>::setUpHeadAndTail): (JSC::HashMapImpl<HashMapBucketType>::addNormalizedNonExistingForCloning): (JSC::HashMapImpl<HashMapBucketType>::addNormalizedNonExistingForCloningInternal): (JSC::HashMapImpl<HashMapBucketType>::addNormalizedInternal): (JSC::HashMapImpl<HashMapBucketType>::findBucketAlreadyHashedAndNormalized): (JSC::HashMapImpl<HashMapBucketType>::rehash): (JSC::HashMapImpl<HashMapBucketType>::makeAndSetNewBuffer): (JSC::HashMapImpl<HashMapBucketType>::assertBufferIsEmpty): (JSC::shouldRehashAfterAdd): Deleted. (JSC::HashMapImpl<HashMapBucketType>::assertBufferIsEmpty const): Deleted. * Source/JavaScriptCore/runtime/JSMap.h: * Source/JavaScriptCore/runtime/JSModuleLoader.cpp: (JSC::JSModuleLoader::finishCreation): * Source/JavaScriptCore/runtime/JSSet.h: * Source/JavaScriptCore/runtime/MapConstructor.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): * Source/JavaScriptCore/runtime/MapPrototype.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): * Source/JavaScriptCore/runtime/SetConstructor.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): * Source/JavaScriptCore/runtime/SetPrototype.cpp: (JSC::JSC_DEFINE_HOST_FUNCTION): * Source/JavaScriptCore/runtime/WeakMapImplInlines.h: (JSC::WeakMapImpl<WeakMapBucket>::shouldRehashAfterAdd const): * Source/WebCore/bindings/js/JSDOMMapLike.cpp: (WebCore::getBackingMap): * Source/WebCore/bindings/js/JSDOMSetLike.cpp: (WebCore::getBackingSet): * Source/WebCore/bindings/js/SerializedScriptValue.cpp: (WebCore::CloneDeserializer::deserialize): Canonical link: https://commits.webkit.org/253133@main Canonical link: https://commits.webkit.org/245886.832@safari-7613.3.9.0-branch Canonical link: https://commits.webkit.org/245886.819@safari-7613.4.1.0-branch Commit: cc1264ff76335cd62a22a57ed1b4a5bf8939f43a https://github.com/WebKit/WebKit/commit/cc1264ff76335cd62a22a57ed1b4a5bf8939f43a Author: Alan Coon <alanc...@apple.com> Date: 2022-08-08 (Mon, 08 Aug 2022) Changed paths: M Source/WTF/Scripts/Preferences/WebPreferences.yaml M Source/WebCore/loader/DocumentLoader.cpp M Source/WebKit/UIProcess/API/C/WKPreferences.cpp M Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h M Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm M Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h M Tools/TestWebKitAPI/Tests/mac/LoadWebArchive.mm Log Message: ----------- Cherry-pick 3e51b624e5ec. rdar://problem/97275837 Canonical link: https://commits.webkit.org/245886.821@safari-7613.4.1.0-branch Commit: 4c0398cd5328d5be4f44d06edd73d96b1a9cf687 https://github.com/WebKit/WebKit/commit/4c0398cd5328d5be4f44d06edd73d96b1a9cf687 Author: Eric Carlson <eric.carl...@apple.com> Date: 2022-08-08 (Mon, 08 Aug 2022) Changed paths: M Source/WebCore/PAL/pal/spi/cg/CoreGraphicsSPI.h M Source/WebCore/page/ActivityState.cpp M Source/WebCore/page/ActivityState.h M Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h M Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm M Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm M Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm M Source/WebKit/UIProcess/WebPageProxy.cpp M Source/WebKit/UIProcess/WebPageProxy.h M Source/WebKit/UIProcess/WebProcessPool.h M Source/WebKit/UIProcess/WebProcessProxy.h M Source/WebKit/UIProcess/mac/WindowServerConnection.h M Source/WebKit/UIProcess/mac/WindowServerConnection.mm M Tools/TestWebKitAPI/Tests/WebKit/GetUserMedia.mm Log Message: ----------- Cherry-pick 6e14685cafbd. rdar://problem/97275137 Mute capture when disconnected from hardware console rdar://87794804 Reviewed by Brent Fulgham * Source/WebCore/PAL/pal/spi/cg/CoreGraphicsSPI.h * Source/WebCore/page/ActivityState.cpp * Source/WebCore/page/ActivityState.h * Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h * Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm * Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm * Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm * Source/WebKit/UIProcess/WebPageProxy.cpp * Source/WebKit/UIProcess/WebPageProxy.h * Source/WebKit/UIProcess/WebProcessPool.h * Source/WebKit/UIProcess/WebProcessProxy.h * Source/WebKit/UIProcess/mac/WindowServerConnection.h * Source/WebKit/UIProcess/mac/WindowServerConnection.mm * Tools/TestWebKitAPI/Tests/WebKit/GetUserMedia.mm Canonical link: https://commits.webkit.org/251762@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@295757 268f45cc-cd09-0410-ab3c-d52691b4dbfc Canonical link: https://commits.webkit.org/245886.822@safari-7613.4.1.0-branch Commit: 5e1e9e342804bdd1d4df6aed4cef4b326681f658 https://github.com/WebKit/WebKit/commit/5e1e9e342804bdd1d4df6aed4cef4b326681f658 Author: Abigail Fox <abigail_...@apple.com> Date: 2022-08-08 (Mon, 08 Aug 2022) Changed paths: M Source/WebCore/platform/cocoa/PlaybackSessionModel.h M Source/WebCore/platform/cocoa/PlaybackSessionModelMediaElement.mm M Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm M Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm M Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm M Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.h M Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.messages.in M Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.mm M Source/WebKit/WebProcess/cocoa/PlaybackSessionManager.mm Log Message: ----------- Cherry-pick f5f63453c9cd. rdar://problem/97273615 Refactor PlaybackSessionModel::externalPlaybackTargetType to use enum class rdar://63360025 https://bugs.webkit.org/show_bug.cgi?id=242476 Reviewed by Eric Carlson. * Source/WebCore/platform/cocoa/PlaybackSessionModel.h: (): Deleted. * Source/WebCore/platform/cocoa/PlaybackSessionModelMediaElement.mm: (WebCore::PlaybackSessionModelMediaElement::externalPlaybackTargetType const): * Source/WebCore/platform/ios/PlaybackSessionInterfaceAVKit.mm: (WebCore::PlaybackSessionInterfaceAVKit::externalPlaybackChanged): * Source/WebCore/platform/ios/VideoFullscreenInterfaceAVKit.mm: (VideoFullscreenInterfaceAVKit::~VideoFullscreenInterfaceAVKit): * Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm: (VideoFullscreenControllerContext::externalPlaybackTargetType const): * Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.h: * Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.messages.in: * Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.mm: (WebKit::PlaybackSessionManagerProxy::externalPlaybackPropertiesChanged): * Source/WebKit/WebProcess/cocoa/PlaybackSessionManager.mm: (WebKit::PlaybackSessionManager::externalPlaybackChanged): Canonical link: https://commits.webkit.org/252247@main Canonical link: https://commits.webkit.org/245886.823@safari-7613.4.1.0-branch Commit: 726d1034d700c1b18455de3f56f038960761da83 https://github.com/WebKit/WebKit/commit/726d1034d700c1b18455de3f56f038960761da83 Author: Alan Coon <alanc...@apple.com> Date: 2022-08-10 (Wed, 10 Aug 2022) Changed paths: M Source/WTF/Scripts/Preferences/WebPreferences.yaml M Source/WebCore/loader/DocumentLoader.cpp M Source/WebKit/UIProcess/API/C/WKPreferences.cpp M Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h M Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm M Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h M Tools/TestWebKitAPI/Tests/mac/LoadWebArchive.mm Log Message: ----------- Revert 3e51b624e5ec. rdar://problem/97275837 This reverts commit cc1264ff76335cd62a22a57ed1b4a5bf8939f43a. Canonical link: https://commits.webkit.org/245886.824@safari-7613.4.1.0-branch Commit: 5d2cc6074b86f0df8892f9683361e9f51e8ab73f https://github.com/WebKit/WebKit/commit/5d2cc6074b86f0df8892f9683361e9f51e8ab73f Author: Alan Coon <alanc...@apple.com> Date: 2022-08-10 (Wed, 10 Aug 2022) Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.4.1.0.2 Canonical link: https://commits.webkit.org/245886.825@safari-7613.4.1.0-branch Commit: 1394b06f39aab790eced1e754b58b1170262f65c https://github.com/WebKit/WebKit/commit/1394b06f39aab790eced1e754b58b1170262f65c Author: Alan Coon <alanc...@apple.com> Date: 2022-08-10 (Wed, 10 Aug 2022) Changed paths: M Source/JavaScriptCore/bytecode/ObjectPropertyConditionSet.cpp Log Message: ----------- Apply patch. rdar://problem/97276205 Canonical link: https://commits.webkit.org/245886.826@safari-7613.4.1.0-branch Commit: 899003b833b6365ee59af86ee6842efcd607c47a https://github.com/WebKit/WebKit/commit/899003b833b6365ee59af86ee6842efcd607c47a Author: Alan Coon <alanc...@apple.com> Date: 2022-08-10 (Wed, 10 Aug 2022) Changed paths: M Source/WTF/Scripts/Preferences/WebPreferences.yaml M Source/WebCore/loader/DocumentLoader.cpp M Source/WebKit/UIProcess/API/C/WKPreferences.cpp M Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h M Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm M Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h M Tools/TestWebKitAPI/Tests/mac/LoadWebArchive.mm Log Message: ----------- Cherry-pick 3e51b624e5ec. rdar://problem/97275837 This reverts commit 726d1034d700c1b18455de3f56f038960761da83. Canonical link: https://commits.webkit.org/245886.827@safari-7613.4.1.0-branch Commit: 08cc7f2e638ec5264e8832f2e1aeec225e0190cd https://github.com/WebKit/WebKit/commit/08cc7f2e638ec5264e8832f2e1aeec225e0190cd Author: Russell Epstein <repst...@apple.com> Date: 2022-08-11 (Thu, 11 Aug 2022) Changed paths: M Source/WTF/Scripts/Preferences/WebPreferences.yaml M Source/WebCore/loader/DocumentLoader.cpp M Source/WebKit/UIProcess/API/C/WKPreferences.cpp M Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h M Source/WebKit/UIProcess/API/Cocoa/WKPreferences.mm M Source/WebKit/UIProcess/API/Cocoa/WKPreferencesPrivate.h M Tools/TestWebKitAPI/Tests/mac/LoadWebArchive.mm Log Message: ----------- Revert "Cherry-pick 3e51b624e5ec. rdar://problem/97275837" This reverts commit 899003b833b6365ee59af86ee6842efcd607c47a. Canonical link: https://commits.webkit.org/245886.828@safari-7613.4.1.0-branch Commit: 78772cac166ad953efdfb42fd34fb6a3e4de96de https://github.com/WebKit/WebKit/commit/78772cac166ad953efdfb42fd34fb6a3e4de96de Author: Russell Epstein <repst...@apple.com> Date: 2022-08-11 (Thu, 11 Aug 2022) Changed paths: M Source/JavaScriptCore/bytecode/BytecodeDumper.cpp M Source/JavaScriptCore/bytecode/BytecodeDumper.h M Source/JavaScriptCore/wasm/WasmAirIRGenerator.cpp M Source/JavaScriptCore/wasm/WasmAirIRGenerator.h M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp M Source/JavaScriptCore/wasm/WasmB3IRGenerator.h M Source/JavaScriptCore/wasm/WasmBBQPlan.cpp M Source/JavaScriptCore/wasm/WasmBBQPlan.h M Source/JavaScriptCore/wasm/WasmHandlerInfo.h M Source/JavaScriptCore/wasm/WasmIRGeneratorHelpers.h M Source/JavaScriptCore/wasm/WasmOMGPlan.cpp M Source/JavaScriptCore/wasm/WasmOMGPlan.h M Source/JavaScriptCore/wasm/WasmOSREntryPlan.cpp M Source/JavaScriptCore/wasm/WasmOSREntryPlan.h M Source/JavaScriptCore/wasm/WasmOperations.cpp M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp Log Message: ----------- Apply patch. rdar://problem/97021541 Canonical link: https://commits.webkit.org/245886.829@safari-7613.4.1.0-branch Commit: 4434a3007d520b5f199ac307c5029f429a85c956 https://github.com/WebKit/WebKit/commit/4434a3007d520b5f199ac307c5029f429a85c956 Author: Russell Epstein <repst...@apple.com> Date: 2022-08-11 (Thu, 11 Aug 2022) Changed paths: M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp Log Message: ----------- Apply patch. rdar://problem/97263817 Canonical link: https://commits.webkit.org/245886.830@safari-7613.4.1.0-branch Commit: 9eabbe4e332bc5d980370ae957e3a6fa6ac403d3 https://github.com/WebKit/WebKit/commit/9eabbe4e332bc5d980370ae957e3a6fa6ac403d3 Author: Russell Epstein <repst...@apple.com> Date: 2022-08-11 (Thu, 11 Aug 2022) Changed paths: M Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.cpp M Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp M Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h M Source/WebCore/Modules/indexeddb/shared/IDBResultData.cpp M Source/WebCore/Modules/indexeddb/shared/IDBResultData.h Log Message: ----------- Apply patch. rdar://problem/97276161 Canonical link: https://commits.webkit.org/245886.831@safari-7613.4.1.0-branch Commit: a539633a1b424371cc1a23d9547240b3fa57fc86 https://github.com/WebKit/WebKit/commit/a539633a1b424371cc1a23d9547240b3fa57fc86 Author: Richard Robinson <richard_robins...@apple.com> Date: 2022-08-15 (Mon, 15 Aug 2022) Changed paths: M Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm Log Message: ----------- Cherry-pick 02857c1a71fe. rdar://problem/97324281 Make PDF annotation creation more robust https://bugs.webkit.org/show_bug.cgi?id=242781 rdar://96688395 Reviewed by Aditya Keerthi. * Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm: (WebKit::PDFPlugin::createPasswordEntryForm): (WebKit::PDFPlugin::setActiveAnnotation): Canonical link: https://commits.webkit.org/252513@main Canonical link: https://commits.webkit.org/245886.832@safari-7613.4.1.0-branch Commit: b0bd0f115d5e66aa3ccb375816eb5741a9146b56 https://github.com/WebKit/WebKit/commit/b0bd0f115d5e66aa3ccb375816eb5741a9146b56 Author: Per Arne Vollan <pvol...@apple.com> Date: 2022-08-15 (Mon, 15 Aug 2022) Changed paths: M Source/WebCore/Modules/speech/SpeechRecognitionCaptureSourceImpl.cpp M Source/WebCore/Modules/webaudio/MediaStreamAudioSourceCocoa.cpp M Source/WebCore/platform/audio/cocoa/WebAudioBufferList.cpp M Source/WebCore/platform/audio/cocoa/WebAudioBufferList.h M Source/WebCore/platform/mock/MockAudioDestinationCocoa.h Log Message: ----------- Cherry-pick 659f5b107515. rdar://problem/97689284 Account for larger sample spaces in WebAudioBufferList https://bugs.webkit.org/show_bug.cgi?id=243181 <rdar://97391151> Reviewed by Chris Dumez. Use size_t for sample count to account for larger sample spaces in WebAudioBufferList. * Source/WebCore/Modules/speech/SpeechRecognitionCaptureSourceImpl.cpp: (WebCore::SpeechRecognitionCaptureSourceImpl::pullSamplesAndCallDataCallback): * Source/WebCore/Modules/webaudio/MediaStreamAudioSourceCocoa.cpp: (WebCore::MediaStreamAudioSource::consumeAudio): * Source/WebCore/platform/audio/cocoa/WebAudioBufferList.cpp: (WebCore::WebAudioBufferList::WebAudioBufferList): (WebCore::computeBufferSizes): (WebCore::WebAudioBufferList::isSupportedDescription): (WebCore::WebAudioBufferList::setSampleCount): * Source/WebCore/platform/audio/cocoa/WebAudioBufferList.h: * Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm: * Source/WebCore/platform/mock/MockAudioDestinationCocoa.h: Canonical link: https://commits.webkit.org/252808@main Canonical link: https://commits.webkit.org/245886.833@safari-7613.4.1.0-branch Commit: 0504ebf2768d6d4d28dc8b385103b51317c05191 https://github.com/WebKit/WebKit/commit/0504ebf2768d6d4d28dc8b385103b51317c05191 Author: Alan Coon <alanc...@apple.com> Date: 2022-08-15 (Mon, 15 Aug 2022) Changed paths: M Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm Log Message: ----------- Revert 02857c1a71fe. rdar://problem/97324281 This reverts commit a539633a1b424371cc1a23d9547240b3fa57fc86. Canonical link: https://commits.webkit.org/245886.834@safari-7613.4.1.0-branch Commit: fd49f1b001dd08d8357087c072054706d95ad208 https://github.com/WebKit/WebKit/commit/fd49f1b001dd08d8357087c072054706d95ad208 Author: Alan Coon <alanc...@apple.com> Date: 2022-09-01 (Thu, 01 Sep 2022) Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.5.1.0.1 Canonical link: https://commits.webkit.org/245886.835@safari-7613.4.1.0-branch Commit: 353f9e53dea8066c2b45d771aa198beb0d573c85 https://github.com/WebKit/WebKit/commit/353f9e53dea8066c2b45d771aa198beb0d573c85 Author: Alan Coon <alanc...@apple.com> Date: 2022-09-23 (Fri, 23 Sep 2022) Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.5.1.0.2 Canonical link: https://commits.webkit.org/245886.836@safari-7613.4.1.0-branch Commit: fb27035017e464208f3b2ae98b3d4a551d8d035b https://github.com/WebKit/WebKit/commit/fb27035017e464208f3b2ae98b3d4a551d8d035b Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-09-23 (Fri, 23 Sep 2022) Changed paths: M Source/JavaScriptCore/dfg/DFGBackwardsPropagationPhase.cpp M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp M Source/JavaScriptCore/dfg/DFGGraph.h M Source/JavaScriptCore/dfg/DFGNode.h M Source/JavaScriptCore/dfg/DFGNodeFlags.cpp M Source/JavaScriptCore/dfg/DFGNodeFlags.h M Source/JavaScriptCore/dfg/DFGNodeType.h Log Message: ----------- Cherry-pick ef76e31a2a06. rdar://problem/99203199 [JSC] BakcwardPropagationPhase should carry NaN / Infinity handling https://bugs.webkit.org/show_bug.cgi?id=242964 rdar://96791603 Reviewed by Mark Lam. For correctness, we should carry NaN / Infinity handling to make it more clear in the code generation site. * Source/JavaScriptCore/dfg/DFGBackwardsPropagationPhase.cpp: (JSC::DFG::BackwardsPropagationPhase::propagate): * Source/JavaScriptCore/dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupArithDivInt32): (JSC::DFG::FixupPhase::fixupArithDiv): * Source/JavaScriptCore/dfg/DFGGraph.h: * Source/JavaScriptCore/dfg/DFGNode.h: * Source/JavaScriptCore/dfg/DFGNodeFlags.cpp: (JSC::DFG::dumpNodeFlags): * Source/JavaScriptCore/dfg/DFGNodeFlags.h: (JSC::DFG::bytecodeCanIgnoreNaNAndInfinity): (JSC::DFG::nodeCanSpeculateInt32ForDiv): * Source/JavaScriptCore/dfg/DFGNodeType.h: Canonical link: https://commits.webkit.org/252675@main Canonical link: https://commits.webkit.org/245886.837@safari-7613.4.1.0-branch Commit: ef3bf06da387c8c91a940ab97d0780fe9ed24153 https://github.com/WebKit/WebKit/commit/ef3bf06da387c8c91a940ab97d0780fe9ed24153 Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-09-23 (Fri, 23 Sep 2022) Changed paths: M Source/JavaScriptCore/dfg/DFGBackwardsPropagationPhase.cpp M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp M Source/JavaScriptCore/dfg/DFGGraph.h M Source/JavaScriptCore/dfg/DFGNode.h M Source/JavaScriptCore/dfg/DFGNodeFlags.cpp M Source/JavaScriptCore/dfg/DFGNodeFlags.h M Source/JavaScriptCore/dfg/DFGNodeType.h Log Message: ----------- Cherry-pick 0f4e2b68c124. rdar://problem/99203199 [JSC] Revert 252675@main and do simple fix for now https://bugs.webkit.org/show_bug.cgi?id=243697 Reviewed by Mark Lam. This patch revert 252675@main, and instead, just always emitting check for div / mod, because 252675@main caused JetStream2 regression. * Source/JavaScriptCore/dfg/DFGBackwardsPropagationPhase.cpp: (JSC::DFG::BackwardsPropagationPhase::propagate): * Source/JavaScriptCore/dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupArithDivInt32): (JSC::DFG::FixupPhase::fixupArithDiv): * Source/JavaScriptCore/dfg/DFGGraph.h: * Source/JavaScriptCore/dfg/DFGNode.h: * Source/JavaScriptCore/dfg/DFGNodeFlags.cpp: (JSC::DFG::dumpNodeFlags): * Source/JavaScriptCore/dfg/DFGNodeFlags.h: (JSC::DFG::bytecodeCanIgnoreNaNAndInfinity): Deleted. (JSC::DFG::nodeCanSpeculateInt32ForDiv): Deleted. * Source/JavaScriptCore/dfg/DFGNodeType.h: Canonical link: https://commits.webkit.org/253246@main Canonical link: https://commits.webkit.org/245886.838@safari-7613.4.1.0-branch Commit: cbf91c03915558ed09255cc753d3f6443ee7f783 https://github.com/WebKit/WebKit/commit/cbf91c03915558ed09255cc753d3f6443ee7f783 Author: Alan Coon <alanc...@apple.com> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.6.1.0.1 Canonical link: https://commits.webkit.org/245886.839@safari-7613.4.1.0-branch Commit: 199ebb752dd8e5699ef7b1776cd9db0afe3d7e67 https://github.com/WebKit/WebKit/commit/199ebb752dd8e5699ef7b1776cd9db0afe3d7e67 Author: Alex Christensen <achristen...@webkit.org> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M Source/WTF/wtf/URLHelpers.cpp M Tools/TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm Log Message: ----------- Cherry-pick 16904a9a85c8. rdar://problem/101518562 Punycode all IPA extensions code points in URLs https://bugs.webkit.org/show_bug.cgi?id=247289 rdar://101429376 Reviewed by Tim Horton. * Source/WTF/wtf/URLHelpers.cpp: (WTF::URLHelpers::isLookalikeCharacter): * Tools/TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/256267@main Canonical link: https://commits.webkit.org/245886.839@safari-7613.4.1.0-branch Commit: 44e845aba9eb42d8118dce5c01c59539d9512ad3 https://github.com/WebKit/WebKit/commit/44e845aba9eb42d8118dce5c01c59539d9512ad3 Author: Alex Christensen <achristen...@webkit.org> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M Source/WTF/wtf/URLHelpers.cpp M Tools/TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm Log Message: ----------- Cherry-pick 85e478aae63c. rdar://problem/100623939 Punycode Arabic diacritics when not preceded by an Arabic code point in a URL host https://bugs.webkit.org/show_bug.cgi?id=247461 rdar://100426863 Reviewed by Said Abou-Hallawa. * Source/WTF/wtf/URLHelpers.cpp: (WTF::URLHelpers::isArabicDiacritic): (WTF::URLHelpers::isArabicCodePoint): (WTF::URLHelpers::isLookalikeCharacter): * Tools/TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/256332@main Canonical link: https://commits.webkit.org/245886.840@safari-7613.4.1.0-branch Commit: 04050e1cb8356bc3902874006bd8c43ffad73d0d https://github.com/WebKit/WebKit/commit/04050e1cb8356bc3902874006bd8c43ffad73d0d Author: Alex Christensen <achristen...@webkit.org> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M LayoutTests/fast/encoding/idn-security-expected.txt M LayoutTests/fast/encoding/idn-security.html M Source/WTF/wtf/URLHelpers.cpp M Tools/TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm Log Message: ----------- Cherry-pick a6c922ea6f05. rdar://problem/101518569 Punycode U+0E01 when in the context of non-Thai characters https://bugs.webkit.org/show_bug.cgi?id=247287 rdar://101434628 Reviewed by Tim Horton. * Source/WTF/wtf/URLHelpers.cpp: (WTF::URLHelpers::isLookalikeCharacterOfScriptType<USCRIPT_THAI>): (WTF::URLHelpers::isLookalikeCharacter): * Tools/TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: (TestWebKitAPI::TEST): Canonical link: https://commits.webkit.org/256276@main Canonical link: https://commits.webkit.org/245886.841@safari-7613.4.1.0-branch Commit: 34444ef889fb9b8778d7fe2b40c2a16880c36230 https://github.com/WebKit/WebKit/commit/34444ef889fb9b8778d7fe2b40c2a16880c36230 Author: Matt Woodrow <mattwood...@apple.com> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M LayoutTests/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable-expected.txt M LayoutTests/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer-expected.txt M LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable-expected.txt M LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer-expected.txt A LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable-expected.txt A LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer-expected.txt M Source/WebCore/bindings/js/SerializedScriptValue.cpp Log Message: ----------- Cherry-pick ad6383440b73. rdar://problem/101291011 Throw a DataCloneError when attempting to serialize an ImageBitmap without the origin-clean flag. https://bugs.webkit.org/show_bug.cgi?id=246783 <rdar://100901435> Reviewed by Youenn Fablet. The HTML spec expects us to reject serialization/transfer of ImageBitmaps that don't have the origin-clean flag, rather than tansferring them and tainting any <canvas> elements they get drawn to. * LayoutTests/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer-expected.txt: * LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable-expected.txt: * LayoutTests/platform/glib/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer-expected.txt: * LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-serializable-expected.txt: * LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/html/canvas/element/manual/imagebitmap/createImageBitmap-transfer-expected.txt: * Source/WebCore/bindings/js/SerializedScriptValue.cpp: (WebCore::CloneSerializer::dumpImageBitmap): (WebCore::SerializedScriptValue::create): Canonical link: https://commits.webkit.org/255882@main Canonical link: https://commits.webkit.org/245886.842@safari-7613.4.1.0-branch Commit: 5ab53f3b7c90100bd9d1eacbc4df091fc67eed95 https://github.com/WebKit/WebKit/commit/5ab53f3b7c90100bd9d1eacbc4df091fc67eed95 Author: Michael Saboff <msab...@apple.com> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: A JSTests/stress/regexp-strengthreduce-results-noholes.js M Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp Log Message: ----------- Cherry-pick b0b694fd099f. rdar://problem/100902686 Strength reduction analyzes RegEx.exec incorrectly and generate a hole for the result array https://bugs.webkit.org/show_bug.cgi?id=245464 rdar://100494428 Reviewed by Mark Lam. When employing RegExp.exec strength reductions, we need to create "undefined" entries in the result array instead of null entries per the EcmaScript spec for RegExp.match. * JSTests/stress/regexp-strengthreduce-results-noholes.js: Added. (runRegExp): (assertSameAsFirstResult): * Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp: (JSC::DFG::StrengthReductionPhase::handleNode): Canonical link: https://commits.webkit.org/256241@main Canonical link: https://commits.webkit.org/245886.843@safari-7613.4.1.0-branch Commit: 203a082fdd7b87e8a2e83f89e7f1b2fdc9eee58e https://github.com/WebKit/WebKit/commit/203a082fdd7b87e8a2e83f89e7f1b2fdc9eee58e Author: Kimmo Kinnunen <kkinnu...@apple.com> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M LayoutTests/fast/canvas/webgl/largeBuffer-expected.txt M LayoutTests/fast/canvas/webgl/largeBuffer.html A LayoutTests/platform/gtk/fast/canvas/webgl/largeBuffer-expected.txt A LayoutTests/webgl/buffer-copysubdata-overlap-no-crash-expected.txt A LayoutTests/webgl/buffer-copysubdata-overlap-no-crash.html M LayoutTests/webgl/webgl-allow-shared-expected.txt M Source/WebCore/html/canvas/WebGL2RenderingContext.cpp M Source/WebCore/html/canvas/WebGL2RenderingContext.h M Source/WebCore/html/canvas/WebGLBuffer.cpp M Source/WebCore/html/canvas/WebGLBuffer.h M Source/WebCore/html/canvas/WebGLRenderingContext.cpp M Source/WebCore/html/canvas/WebGLRenderingContext.h M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp M Source/WebCore/html/canvas/WebGLRenderingContextBase.h Log Message: ----------- Cherry-pick be0a403feb9d. rdar://problem/101591366 WebGL buffers maintain shadow copy https://bugs.webkit.org/show_bug.cgi?id=245137 rdar://97453557 Reviewed by Kenneth Russell. Remove the code caching the WebGL buffer data and size. The data was used to assert that indices drawn with DrawElements are in range for other buffers. Remove the data, it is verified by ANGLE. The size was used to assert that updates to the buffer are in range. Since we do not check the success of the updates, we cannot cache the size. The size is checked by ANGLE. * LayoutTests/webgl/buffer-copysubdata-overlap-no-crash.html: Added. * Source/WebCore/html/canvas/WebGL2RenderingContext.cpp: (WebCore::WebGL2RenderingContext::copyBufferSubData): (WebCore::WebGL2RenderingContext::getBufferSubData): (WebCore::WebGL2RenderingContext::validateIndexArrayConservative): Deleted. * Source/WebCore/html/canvas/WebGL2RenderingContext.h: * Source/WebCore/html/canvas/WebGLBuffer.cpp: (WebCore::WebGLBuffer::WebGLBuffer): (WebCore::WebGLBuffer::associateBufferDataImpl): (WebCore::WebGLBuffer::associateBufferSubDataImpl): (WebCore::WebGLBuffer::associateCopyBufferSubData): * Source/WebCore/html/canvas/WebGLBuffer.h: * Source/WebCore/html/canvas/WebGLRenderingContext.cpp: * Source/WebCore/html/canvas/WebGLRenderingContext.h: * Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp: (WebCore::WebGLRenderingContextBase::bufferData): (WebCore::WebGLRenderingContextBase::bufferSubData): (WebCore::WebGLRenderingContextBase::validateVertexAttributes): (WebCore::WebGLRenderingContextBase::validateDrawArrays): (WebCore::WebGLRenderingContextBase::validateDrawElements): * Source/WebCore/html/canvas/WebGLRenderingContextBase.h: (WebCore::WebGLRenderingContextBase::getMaxIndex): Canonical link: https://commits.webkit.org/254544@main Canonical link: https://commits.webkit.org/245886.844@safari-7613.4.1.0-branch Commit: 98c314b3d7f961c48123cae443675bdf26454bb1 https://github.com/WebKit/WebKit/commit/98c314b3d7f961c48123cae443675bdf26454bb1 Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M Source/JavaScriptCore/dfg/DFGFailedFinalizer.h M Source/JavaScriptCore/dfg/DFGFinalizer.h M Source/JavaScriptCore/dfg/DFGJITFinalizer.h M Source/JavaScriptCore/dfg/DFGPlan.cpp M Source/JavaScriptCore/ftl/FTLJITFinalizer.h Log Message: ----------- Cherry-pick c4c58496ef4a. rdar://problem/101290752 [JSC] Simplify Finalization in DFG / FTL https://bugs.webkit.org/show_bug.cgi?id=246724 rdar://101165751 Reviewed by Justin Michaud. This patch simplifies DFG / FTL finalization by early returning failure case. * Source/JavaScriptCore/dfg/DFGFailedFinalizer.h: * Source/JavaScriptCore/dfg/DFGFinalizer.h: * Source/JavaScriptCore/dfg/DFGJITFinalizer.h: * Source/JavaScriptCore/dfg/DFGPlan.cpp: (JSC::DFG::Plan::finalize): * Source/JavaScriptCore/ftl/FTLJITFinalizer.h: Canonical link: https://commits.webkit.org/255714@main Canonical link: https://commits.webkit.org/245886.845@safari-7613.4.1.0-branch Commit: e7eaf1f8634dc7f55ef19ef808ba658bff7e6060 https://github.com/WebKit/WebKit/commit/e7eaf1f8634dc7f55ef19ef808ba658bff7e6060 Author: Yijia Huang <hyjo...@gmail.com> Date: 2022-11-09 (Wed, 09 Nov 2022) Changed paths: M Source/JavaScriptCore/dfg/DFGClobberize.h Log Message: ----------- Cherry-pick fd57a49d07c9. rdar://problem/100903734 [JSC] Should model BigInt with side effects https://bugs.webkit.org/show_bug.cgi?id=246291 rdar://100494823 Reviewed by Yusuke Suzuki. Operations with two BigInt operands have side effects, which should not be hoisted from loops. * Source/JavaScriptCore/dfg/DFGClobberize.cpp: (JSC::DFG::doesWrites): * Source/JavaScriptCore/dfg/DFGClobberize.h: (JSC::DFG::clobberize): Canonical link: https://commits.webkit.org/255368@main Canonical link: https://commits.webkit.org/245886.846@safari-7613.4.1.0-branch Commit: 3117d671e8053960f9912b564b94cb4bc0e3a537 https://github.com/WebKit/WebKit/commit/3117d671e8053960f9912b564b94cb4bc0e3a537 Author: Alan Coon <alanc...@apple.com> Date: 2022-11-15 (Tue, 15 Nov 2022) Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.6.1.0.2 Canonical link: https://commits.webkit.org/245886.847@safari-7613.4.1.0-branch Commit: 60823f4925076fa93d2b2e2758e5317cdf80c46c https://github.com/WebKit/WebKit/commit/60823f4925076fa93d2b2e2758e5317cdf80c46c Author: David Degazio <d_dega...@apple.com> Date: 2022-11-15 (Tue, 15 Nov 2022) Changed paths: A JSTests/stress/intl-locale-invalid-hourCycles.js M Source/JavaScriptCore/runtime/IntlLocale.cpp Log Message: ----------- Cherry-pick 86fbeb6fcd63. rdar://problem/102251589 Intl.Locale.prototype.hourCycles leaks empty JSValue to script https://bugs.webkit.org/show_bug.cgi?id=247562 rdar://102031379 Reviewed by Mark Lam. We currently don't check if IntlLocale::hourCycles returns a null JSArray, which allows it to be encoded as an empty JSValue and exposed to user code. This patch throws a TypeError when udatpg_open returns a failed status. * JSTests/stress/intl-locale-invalid-hourCycles.js: Added. (main): * Source/JavaScriptCore/runtime/IntlLocale.cpp: (JSC::IntlLocale::hourCycles): Canonical link: https://commits.webkit.org/256473@main Canonical link: https://commits.webkit.org/245886.848@safari-7613.4.1.0-branch Commit: a333f4e99c1e872b6a4cc3527f06b2a985e13c47 https://github.com/WebKit/WebKit/commit/a333f4e99c1e872b6a4cc3527f06b2a985e13c47 Author: Russell Epstein <repst...@apple.com> Date: 2022-11-28 (Mon, 28 Nov 2022) Changed paths: M Source/JavaScriptCore/Configurations/Version.xcconfig M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig M Source/WebCore/Configurations/Version.xcconfig M Source/WebCore/PAL/Configurations/Version.xcconfig M Source/WebGPU/Configurations/Version.xcconfig M Source/WebInspectorUI/Configurations/Version.xcconfig M Source/WebKit/Configurations/Version.xcconfig M Source/WebKitLegacy/mac/Configurations/Version.xcconfig Log Message: ----------- Versioning. WebKit-7613.6.1.0.3 Canonical link: https://commits.webkit.org/245886.849@safari-7613.4.1.0-branch Commit: 9a529fd127ee65b2bf755781b2bb3ea6d13bf0b3 https://github.com/WebKit/WebKit/commit/9a529fd127ee65b2bf755781b2bb3ea6d13bf0b3 Author: Mark Lam <mark....@apple.com> Date: 2022-11-28 (Mon, 28 Nov 2022) Changed paths: A JSTests/stress/speculate-real-number-in-object-is.js M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp Log Message: ----------- Cherry-pick 71cdc1c09ef1. rdar://problem/102718559 The provenType filtering in FTL's speculateRealNumber is incorrect. https://bugs.webkit.org/show_bug.cgi?id=248266 <rdar://problem/102531234> Reviewed by Justin Michaud. speculateRealNumber does a doubleEqual compare, which filters out double values which are not NaN. NaN values will fall through to the `intCase` block. In the `intCase` block, the isNotInt32() check there was given a proven type that wrongly filters out ~SpecFullDouble. Consider a scenario where the edge was proven to be { SpecInt32Only, SpecDoubleReal, SpecDoublePureNaN }. SpecFullDouble is defined as SpecDoubleReal | SpecDoubleNaN, and SpecDoubleNaN is defined as SpecDoublePureNaN | SpecDoubleImpureNaN. Hence, the filtering of the proven type with ~SpecFullDouble means that isNotInt32() will effectively be given a proven type of { SpecInt32Only, SpecDoubleReal, SpecDoublePureNaN } - { SpecDoubleReal, SpecDoublePureNaN } which yields { SpecInt32Only }. As a result, the compiler will think that that isNotIn32() check will always fail. This is not correct if the actual incoming value for that edge is actually a PureNaN. In this case, speculateRealNumber should have OSR exited, but it doesn't because it thinks that the isNotInt32() check will always fail and elide the check altogether. In this patch, we fix this by replacing the ~SpecFullDouble with ~SpecDoubleReal. We also rename the `intCase` block to `intOrNaNCase` to document what it actually handles. * JSTests/stress/speculate-real-number-in-object-is.js: Added. (test.object_is_opt): (test): * Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): Canonical link: https://commits.webkit.org/252432.839@safari-7614-branch Canonical link: https://commits.webkit.org/245886.850@safari-7613.4.1.0-branch Compare: https://github.com/WebKit/WebKit/compare/906929f11e55%5E...9a529fd127ee _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes