[webkit-changes] [WebKit/WebKit] b56ff5: [JSC] DataView constructor should check if byteOff...

2024-05-04 Thread SUZUKI Sosuke
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b56ff58373f19371af18fbb1a77833d898e80de9
  
https://github.com/WebKit/WebKit/commit/b56ff58373f19371af18fbb1a77833d898e80de9
  Author: sosukesuzuki 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M JSTests/stress/dataview-construct.js
M JSTests/test262/expectations.yaml
M Source/JavaScriptCore/runtime/JSGenericTypedArrayViewConstructorInlines.h

  Log Message:
  ---
  [JSC] DataView constructor should check if byteOffset exceeds source 
ArrayBuffer length before creating an instance
https://bugs.webkit.org/show_bug.cgi?id=273689

Reviewed by Yusuke Suzuki.

According to the spec[1], should check if byteOffset exceeds source ArrayBuffer 
length before
creating an instance. This patch fixes the test case that is failing in 
test262[2].

[1]: https://tc39.es/ecma262/#sec-dataview-buffer-byteoffset-bytelength
[2]: 
https://github.com/tc39/test262/blob/main/test/built-ins/DataView/byteOffset-validated-against-initial-buffer-length.js

* JSTests/stress/dataview-construct.js:
(shouldThrow):
* JSTests/test262/expectations.yaml:
* Source/JavaScriptCore/runtime/JSGenericTypedArrayViewConstructorInlines.h:
(JSC::constructGenericTypedArrayViewImpl):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] f941ea: https://bugs.webkit.org/show_bug.cgi?id=273660

2024-05-04 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f941ea9d5e9411a302f3d699966493a660ecc46c
  
https://github.com/WebKit/WebKit/commit/f941ea9d5e9411a302f3d699966493a660ecc46c
  Author: Alan Baradlay 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
A 
LayoutTests/fast/inline/dynamic-line-clamp-change-on-nested-content-expected.html
A LayoutTests/fast/inline/dynamic-line-clamp-change-on-nested-content.html
M Source/WebCore/rendering/RenderBlockFlow.cpp

  Log Message:
  ---
  https://bugs.webkit.org/show_bug.cgi?id=273660


Reviewed by Antti Koivisto.

RenderDeprecatedFlexibleBox marks direct children dirty when dealing with 
line-clamp, but
since this functionality gets propagated to nested block containers too, we 
need to make sure
descendant content gets laid out (in order to be able to figure out where to 
clamp inline content).

* 
LayoutTests/fast/inline/dynamic-line-clamp-change-on-nested-content-expected.html:
 Added.
* LayoutTests/fast/inline/dynamic-line-clamp-change-on-nested-content.html: 
Added.
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutBlock):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9e40c1: Optimize some usage of StringBuilder

2024-05-04 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9e40c12adba07ed27e7bd52bb32cfedcb1eef2aa
  
https://github.com/WebKit/WebKit/commit/9e40c12adba07ed27e7bd52bb32cfedcb1eef2aa
  Author: Chris Dumez 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.cpp
M Source/WTF/wtf/URL.cpp
M Source/WTF/wtf/text/WTFString.cpp
M Source/WebCore/Modules/encryptedmedia/MediaKeySession.cpp
M Source/WebCore/Modules/entriesapi/DOMFileSystem.cpp
M Source/WebCore/Modules/geolocation/Geolocation.cpp
M Source/WebCore/Modules/indexeddb/IDBKeyData.cpp
M Source/WebCore/Modules/indexeddb/IDBKeyPath.cpp
M Source/WebCore/Modules/push-api/PushSubscriptionIdentifier.cpp
M Source/WebCore/PAL/pal/text/DecodeEscapeSequences.h
M Source/WebCore/css/CSSCounterStyleDescriptors.cpp
M Source/WebCore/css/CSSStyleRule.cpp
M Source/WebCore/css/query/GenericMediaQuerySerialization.cpp
M Source/WebCore/css/typedom/CSSOMVariableReferenceValue.cpp
M Source/WebCore/css/typedom/transform/CSSMatrixComponent.cpp
M Source/WebCore/dom/FragmentDirectiveGenerator.cpp
M Source/WebCore/editing/FontShadow.cpp
M Source/WebCore/inspector/InspectorOverlay.cpp
M Source/WebCore/loader/ResourceLoadStatistics.cpp
M Source/WebCore/loader/archive/mhtml/MHTMLArchive.cpp
M Source/WebCore/platform/graphics/CodecUtilities.cpp
M Source/WebCore/platform/graphics/MediaPlayer.cpp
M Source/WebCore/platform/graphics/VP9Utilities.cpp
M Source/WebCore/platform/gtk/SelectionData.cpp
M Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.cpp
M Source/WebCore/platform/network/curl/NetworkStorageSessionCurl.cpp
M Source/WebCore/platform/text/win/LocaleWin.cpp
M Source/WebCore/testing/Internals.cpp
M Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp
M Source/WebGPU/WGSL/Parser.cpp
M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
M Source/WebKit/NetworkProcess/storage/CacheStorageManager.cpp
M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp

  Log Message:
  ---
  Optimize some usage of StringBuilder
https://bugs.webkit.org/show_bug.cgi?id=273728

Reviewed by Tim Nguyen.

Optimize some usage of StringBuilder. This is a follow-up to 278348@main
to address Darin's comments.

* Source/JavaScriptCore/runtime/FileBasedFuzzerAgentBase.cpp:
(JSC::FileBasedFuzzerAgentBase::createLookupKey):
* Source/WTF/wtf/URL.cpp:
(WTF::percentEncodeCharacters):
* Source/WTF/wtf/text/WTFString.cpp:
(asciiDebug):
* Source/WebCore/Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::updateKeyStatuses):
* Source/WebCore/Modules/entriesapi/DOMFileSystem.cpp:
(WebCore::resolveRelativeVirtualPath):
* Source/WebCore/Modules/geolocation/Geolocation.cpp:
(WebCore::logError):
* Source/WebCore/Modules/indexeddb/IDBKeyData.cpp:
(WebCore::IDBKeyData::loggingString const):
* Source/WebCore/Modules/indexeddb/IDBKeyPath.cpp:
(WebCore::loggingString):
* Source/WebCore/Modules/push-api/PushSubscriptionIdentifier.cpp:
(WebCore::PushSubscriptionSetIdentifier::debugDescription const):
* Source/WebCore/PAL/pal/text/DecodeEscapeSequences.h:
(PAL::decodeEscapeSequences):
* Source/WebCore/css/CSSCounterStyleDescriptors.cpp:
(WebCore::CSSCounterStyleDescriptors::symbolsCSSText const):
(WebCore::CSSCounterStyleDescriptors::additiveSymbolsCSSText const):
* Source/WebCore/css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::cssTextInternal const):
* Source/WebCore/css/query/GenericMediaQuerySerialization.cpp:
(WebCore::MQ::serialize):
* Source/WebCore/css/typedom/CSSOMVariableReferenceValue.cpp:
(WebCore::CSSOMVariableReferenceValue::serialize const):
* Source/WebCore/css/typedom/transform/CSSMatrixComponent.cpp:
(WebCore::CSSMatrixComponent::serialize const):
* Source/WebCore/dom/FragmentDirectiveGenerator.cpp:
(WebCore::FragmentDirectiveGenerator::generateFragmentDirective):
* Source/WebCore/editing/FontShadow.cpp:
(WebCore::serializationForCSS):
* Source/WebCore/inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::buildFlexOverlay):
* Source/WebCore/loader/ResourceLoadStatistics.cpp:
(WebCore::ResourceLoadStatistics::toString const):
* Source/WebCore/loader/archive/mhtml/MHTMLArchive.cpp:
(WebCore::MHTMLArchive::generateMHTMLData):
* Source/WebCore/platform/graphics/CodecUtilities.cpp:
(WebCore::humanReadableStringFromCodecString):
* Source/WebCore/platform/graphics/MediaPlayer.cpp:
(WebCore::SeekTarget::toString const):
* Source/WebCore/platform/graphics/VP9Utilities.cpp:
(WebCore::createVPCodecParametersString):
* Source/WebCore/platform/graphics/texmap/TextureMapperShaderProgram.cpp:
(WebCore::TextureMapperShaderProgram::create):
* Source/WebCore/platform/gtk/SelectionData.cpp:
(WebCore::SelectionData::setURL):
* Source/WebCore/platform/mediarecorder/MediaRecorderPrivateMock.cpp:
(WebCore::MediaRecorderPrivateMock::videoFrameAvailable):

[webkit-changes] [WebKit/WebKit] 35802b: Fix PS build following 278369@main

2024-05-04 Thread Ross Kirsling
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 35802bc724e45ce3cfc985151a2de4a62fb309ba
  
https://github.com/WebKit/WebKit/commit/35802bc724e45ce3cfc985151a2de4a62fb309ba
  Author: Ross Kirsling 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/JavaScriptCore/runtime/StructureID.h

  Log Message:
  ---
  Fix PS build following 278369@main
https://bugs.webkit.org/show_bug.cgi?id=273742

Unreviewed build fix.

* Source/JavaScriptCore/runtime/StructureID.h:
Add missing include.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 91285f: HTMLMediaElement::ensureMediaControls() should han...

2024-05-04 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 91285f2f6800e5031c656e2ccad4352fe88b1d3b
  
https://github.com/WebKit/WebKit/commit/91285f2f6800e5031c656e2ccad4352fe88b1d3b
  Author: Mark Lam 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/WebCore/html/HTMLMediaElement.cpp

  Log Message:
  ---
  HTMLMediaElement::ensureMediaControls() should handle its own exceptions.
https://bugs.webkit.org/show_bug.cgi?id=273706
rdar://126757731

Reviewed by Yusuke Suzuki and Jer Noble.

Ensure that setupAndCallJS() handles any uncaught exceptions before returning.  
This makes
it such that the tasks that it calls do not needs to deal with this.

* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::ensureMediaControls):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 5190cb: [RenderTreeBuilder] Subtree teardown should trigge...

2024-05-04 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5190cb5ad565483033b079b455accec21ee69a0d
  
https://github.com/WebKit/WebKit/commit/5190cb5ad565483033b079b455accec21ee69a0d
  Author: Alan Baradlay 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
M Source/WebCore/rendering/updating/RenderTreeUpdater.h

  Log Message:
  ---
  [RenderTreeBuilder] Subtree teardown should trigger repaint only on destroy 
root
https://bugs.webkit.org/show_bug.cgi?id=273210

Reviewed by Antti Koivisto.

1. Move repaint logic to RenderTreeUpdate so that we can issue repaint _before_ 
teardown.
2. Issue repaint on the destroy root and any descendants that are not part of 
visual overflow when needed.

* Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::resetRendererStateOnDetach):
(WebCore::RenderTreeBuilder::detachFromRenderElement):
(WebCore::resetRendererStateOnDetach): Deleted.
* Source/WebCore/rendering/updating/RenderTreeBuilder.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4223b7: When interpolating colors, analogous components mu...

2024-05-04 Thread Sam Weinig
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4223b7f3eb559e7f06c7fcbe5a4ce9831f891390
  
https://github.com/WebKit/WebKit/commit/4223b7f3eb559e7f06c7fcbe5a4ce9831f891390
  Author: Sam Weinig 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.txt
M Source/WebCore/css/color/CSSResolvedColorMix.cpp
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp
M Source/WebCore/platform/graphics/Color.h
M Source/WebCore/platform/graphics/ColorBlending.cpp
M Source/WebCore/platform/graphics/ColorConversion.h
M Source/WebCore/platform/graphics/ColorInterpolation.cpp
M Source/WebCore/platform/graphics/ColorModels.h
M Source/WebCore/platform/graphics/ColorSerialization.cpp
M Source/WebCore/platform/graphics/cg/GradientRendererCG.cpp

  Log Message:
  ---
  When interpolating colors, analogous components must be carried forward
https://bugs.webkit.org/show_bug.cgi?id=273033

Reviewed by Tim Nguyen.

Adds support for missing analogous component forwarding as described by
CSS Color 4 ยง 12. Color Interpolating. This allows missing components
to survive color space conversion in cases where the input and output
color spaces have analogous components. For example, when converting
`lch(10 20 none)` to HSL, the missing hue in the LCH would be carried
forward to the hue of the HSL.

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-color-mix-function-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-computed-relative-color-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-color/parsing/color-valid-relative-color-expected.txt:
- Update results for newly passing tests.

* Source/WebCore/platform/graphics/ColorModels.h:
- Add analogous component values to the ColorModel component descriptions.

* Source/WebCore/platform/graphics/ColorConversion.h:
(WebCore::analogousComponentIndex):
(WebCore::tryToCarryForwardComponentIfMissing):
(WebCore::convertColorCarryingForwardMissing):
- Implement support for the carrying using the analogous component
  descriptions now in ColorModels.

(WebCore::computeDeltaEOK):
(WebCore::ColorConversion::handleToFloatConversion):
(WebCore::ColorConversion::handleToByteConversion):
(WebCore::ColorConversion::toLinearEncoded):
(WebCore::ColorConversion::toGammaEncoded):
(WebCore::ColorConversion::toExtended):
(WebCore::ColorConversion::toBounded):
(WebCore::ColorConversion::handleRGBFamilyConversion):
(WebCore::ColorConversion::handleMatrixConversion):
- Remove some unnecessary "inline" annotations for template functions.

* Source/WebCore/platform/graphics/Color.h:
(WebCore::Color::toColorTypeLossyCarryingForwardMissing const):
- Add new helper on Color to invoke the new conversion function.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp:
(WebCore::CSSPropertyParserHelpers::consumeAndNormalizeRelativeComponents):
- Utilize the new conversion function.

* Source/WebCore/css/color/CSSResolvedColorMix.cpp:
(WebCore::mixColorComponentsUsingColorInterpolationMethod):
- Utilize the new conversion function.

* Source/WebCore/platform/graphics/ColorBlending.cpp:
(WebCore::blend):
- Utilize the new conversion function.

* Source/WebCore/platform/graphics/ColorInterpolation.cpp:
(WebCore::interpolateColors):
- Utilize the new conversion function.

* Source/WebCore/platform/graphics/ColorSerialization.cpp:
(WebCore::serializationForCSS):
- Utilize the new conversion function.

* Source/WebCore/platform/graphics/cg/GradientRendererCG.cpp:
(WebCore::GradientRendererCG::makeShading const):
- Utilize the new conversion function.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7754d9: [UnifiedPDF] Text jiggles between the low-res page...

2024-05-04 Thread Simon Fraser
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7754d9bf5ef54b9c4c58bdace2e3cd25da11df2c
  
https://github.com/WebKit/WebKit/commit/7754d9bf5ef54b9c4c58bdace2e3cd25da11df2c
  Author: Simon Fraser 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/AsyncPDFRenderer.mm

  Log Message:
  ---
  [UnifiedPDF] Text jiggles between the low-res page snapshots and 
high-resolution tiles
https://bugs.webkit.org/show_bug.cgi?id=273727
rdar://127523619

Reviewed by Tim Horton.

Fix two issues that caused text and other content to not be perfectly aligned 
between
page previews and high-resolution tiles.

First, the scale are always non-integral, so there was some slight scaling of 
the
page preview buffers in `AsyncPDFRenderer::paintPagePreview()` since the image 
buffer size
is an expanded integral value, and when painting without a sourceRect, it 
scales the whole
buffer to fit the destination rect. We can use the same rect for source and 
destination
to avoid this.

Second, turn off CG font subpixel quantization and positioning, both of which 
can cause
glyphs to snap when drawing into the scaled-down context used for page previews.

* Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/AsyncPDFRenderer.mm:
(WebKit::AsyncPDFRenderer::paintPDFPageIntoBuffer):
(WebKit::AsyncPDFRenderer::paintPagePreview):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d62fea: Fix find-in-page for words spanning display:contents

2024-05-04 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d62fea57b1cc71a3c91be926c749759ac3d1d446
  
https://github.com/WebKit/WebKit/commit/d62fea57b1cc71a3c91be926c749759ac3d1d446
  Author: Ahmad Saleem 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M LayoutTests/accessibility/display-contents/aria-grid-expected.txt
M LayoutTests/accessibility/display-contents/list-expected.txt
M LayoutTests/accessibility/display-contents/role-row-headers-expected.txt
M LayoutTests/accessibility/display-contents/table-expected.txt
M LayoutTests/accessibility/display-contents/tree-and-treeitems-expected.txt
M 
LayoutTests/accessibility/live-region-attributes-update-after-dynamic-change-expected.txt
M LayoutTests/accessibility/mac/aria-drag-drop-expected.txt
M LayoutTests/dom/html/document-renderobject-null-crash-expected.txt
M 
LayoutTests/fast/css/counters/findPlaceForCounter-display-content-sibling-crash-expected.txt
M LayoutTests/fast/events/ios/click-event-and-display-contents-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-display/accessibility/display-contents-role-and-label-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/getter-expected.txt
M 
LayoutTests/platform/glib/accessibility/display-contents/aria-grid-expected.txt
M 
LayoutTests/platform/glib/accessibility/display-contents/table-expected.txt
M 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-display/accessibility/display-contents-role-and-label-expected.txt
M LayoutTests/platform/ios/accessibility/display-contents/table-expected.txt
M Source/WebCore/editing/TextIterator.cpp

  Log Message:
  ---
  Fix find-in-page for words spanning display:contents

https://bugs.webkit.org/show_bug.cgi?id=273686

Reviewed by Simon Fraser.

This aligns WebKit with Gecko / Firefox and Blink / Chromium.

Merge; 
https://source.chromium.org/chromium/chromium/src/+/2698ab2e0135bd4b62a4e472eceb3174592bf605

This patch is to ensure that 'TextIerator' does not emit lines before/after
display:contents elements.

* Source/WebCore/editing/TextIterator.cpp:
(shouldEmitNewlinesBeforeAndAfterNode):
* 
LayoutTests/imported/w3c/web-platform-tests/html/dom/elements/the-innertext-and-outertext-properties/getter-expected.txt:
 Rebaselined
* LayoutTests/accessibility/display-contents/aria-grid-expected.txt: Ditto
* LayoutTests/accessibility/display-contents/list-expected.txt: Ditto
* LayoutTests/accessibility/display-contents/role-row-headers-expected.txt: 
Ditto
* LayoutTests/accessibility/display-contents/table-expected.txt: Ditto
* LayoutTests/accessibility/display-contents/tree-and-treeitems-expected.txt: 
Ditto
* 
LayoutTests/accessibility/live-region-attributes-update-after-dynamic-change-expected.txt:
 Ditto
* LayoutTests/accessibility/mac/aria-drag-drop-expected.txt: Ditto
* LayoutTests/dom/html/document-renderobject-null-crash-expected.txt: Ditto
* 
LayoutTests/fast/css/counters/findPlaceForCounter-display-content-sibling-crash-expected.txt:
 Ditto
* LayoutTests/fast/events/ios/click-event-and-display-contents-expected.txt: 
Ditto
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-display/accessibility/display-contents-role-and-label-expected.txt:
 Ditto
* 
LayoutTests/platform/glib/accessibility/display-contents/aria-grid-expected.txt:
 Ditto
* LayoutTests/platform/glib/accessibility/display-contents/table-expected.txt: 
Ditto
* LayoutTests/platform/ios/accessibility/display-contents/table-expected.txt: 
Ditto
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/css/css-display/accessibility/display-contents-role-and-label-expected.txt:
 Ditto

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b675dc: AX: Map AccessibilityRole::TabList to UIAccessibil...

2024-05-04 Thread Tyler Wilcock
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b675dc6863ca418dafb534d00cc5b39c505210b9
  
https://github.com/WebKit/WebKit/commit/b675dc6863ca418dafb534d00cc5b39c505210b9
  Author: Tyler Wilcock 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
A LayoutTests/accessibility/ios-simulator/menu-item-trait-expected.txt
A LayoutTests/accessibility/ios-simulator/menu-item-trait.html
A LayoutTests/accessibility/ios-simulator/tab-bar-trait-expected.txt
A LayoutTests/accessibility/ios-simulator/tab-bar-trait.html
M Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm
M Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp
M Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h
M Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl
M Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm

  Log Message:
  ---
  AX: Map AccessibilityRole::TabList to UIAccessibilityTabBarTrait equivalent, 
remove usage of _axTabButtonTrait
https://bugs.webkit.org/show_bug.cgi?id=273707
rdar://problem/127510709

Reviewed by Chris Fleizach.

_axTabButtonTrait is a private trait, so we shouldn't use it. It's possible to 
achieve the same functionality by
mapping the role="tablist" container to UIAccessibilityTabBarTrait (a public 
trait), so this patch does that.

* LayoutTests/accessibility/ios-simulator/menu-item-trait-expected.txt: Added.
* LayoutTests/accessibility/ios-simulator/menu-item-trait.html: Added.
* LayoutTests/accessibility/ios-simulator/tab-bar-trait-expected.txt: Added.
* LayoutTests/accessibility/ios-simulator/tab-bar-trait.html: Added.
* Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityTraits]):
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
(WTR::AccessibilityUIElement::hasTabBarTrait):
(WTR::AccessibilityUIElement::hasMenuItemTrait):
* Tools/WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* Tools/WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* Tools/WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::hasTabBarTrait):
(WTR::AccessibilityUIElement::hasMenuItemTrait):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 06293e: AX: Moving testing only attributes in WebAccessibi...

2024-05-04 Thread Tyler Wilcock
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 06293e14f6192bc94fb109fa00fbc16a22e4f024
  
https://github.com/WebKit/WebKit/commit/06293e14f6192bc94fb109fa00fbc16a22e4f024
  Author: Tyler Wilcock 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm

  Log Message:
  ---
  AX: Moving testing only attributes in WebAccessibilityObjectWrapperMac.mm to 
attributeValueForTesting
https://bugs.webkit.org/show_bug.cgi?id=273711
rdar://problem/127512021

Reviewed by Chris Fleizach.

This is a tiny performance improvement and code cleanup.

This patch also includes another performance improvement in 
AXObjectCache::handleTextChanged. Prior to this patch,
it used to fire notification AXTextUnderElementChanged when text changed 
underneath an AccessibilityRole::ListItem,
in turn causing expensive isolated tree property updates for the list item. 
This is completely unnecessary, as
AccessibilityRole::ListItem does not return true for 
dependsOnTextUnderElement().

* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::handleTextChanged):
* Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
(attributeValueForTesting):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e96d0e: Add a few rules about spaces around lambdas and te...

2024-05-04 Thread Sam Weinig
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e96d0ed0cc8243f4e80b8b44e8bbbe2c9365856a
  
https://github.com/WebKit/WebKit/commit/e96d0ed0cc8243f4e80b8b44e8bbbe2c9365856a
  Author: Sam Weinig 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Websites/webkit.org/code-style.md

  Log Message:
  ---
  Add a few rules about spaces around lambdas and templates to the style guide
https://bugs.webkit.org/show_bug.cgi?id=273724

Reviewed by Chris Dumez and Darin Adler.

Fleshes out the rules spaces in and around lambdas and templates.

* Websites/webkit.org/code-style.md:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b25db3: Unreviewed, reverting 278366@main (fc1560b)

2024-05-04 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b25db3d22863bfa96a16aaf3b9aa74a2df2f0b08
  
https://github.com/WebKit/WebKit/commit/b25db3d22863bfa96a16aaf3b9aa74a2df2f0b08
  Author: Yusuke Suzuki 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/JavaScriptCore/CMakeLists.txt
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M Source/JavaScriptCore/assembler/MacroAssembler.h
M Source/JavaScriptCore/assembler/MacroAssemblerARM64.cpp
M Source/JavaScriptCore/assembler/MacroAssemblerARMv7.cpp
M Source/JavaScriptCore/assembler/MacroAssemblerRISCV64.cpp
M Source/JavaScriptCore/assembler/MacroAssemblerX86Common.cpp
M Source/JavaScriptCore/b3/B3Type.h
M Source/JavaScriptCore/b3/B3Validate.cpp
M Source/JavaScriptCore/b3/air/AirCCallingConvention.cpp
M Source/JavaScriptCore/b3/testb3.h
M Source/JavaScriptCore/b3/testb3_5.cpp
M Source/JavaScriptCore/b3/testb3_6.cpp
M Source/JavaScriptCore/b3/testb3_7.cpp
M Source/JavaScriptCore/dfg/DFGAbstractInterpreter.h
M Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h
M Source/JavaScriptCore/dfg/DFGArithMode.h
M Source/JavaScriptCore/dfg/DFGArrayifySlowPathGenerator.h
M Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
M Source/JavaScriptCore/dfg/DFGCallArrayAllocatorSlowPathGenerator.h
M Source/JavaScriptCore/dfg/DFGCallCreateDirectArgumentsSlowPathGenerator.h
M Source/JavaScriptCore/dfg/DFGJITCompiler.h
M Source/JavaScriptCore/dfg/DFGOSRExit.cpp
M Source/JavaScriptCore/dfg/DFGOSRExit.h
M Source/JavaScriptCore/dfg/DFGOperations.cpp
M Source/JavaScriptCore/dfg/DFGOperations.h
M Source/JavaScriptCore/dfg/DFGSaneStringGetByValSlowPathGenerator.h
M Source/JavaScriptCore/dfg/DFGSlowPathGenerator.h
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp
M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
M Source/JavaScriptCore/ftl/FTLOSRExitCompiler.cpp
M Source/JavaScriptCore/ftl/FTLOSRExitCompiler.h
M Source/JavaScriptCore/ftl/FTLOperations.cpp
M Source/JavaScriptCore/ftl/FTLOperations.h
M Source/JavaScriptCore/ftl/FTLOutput.cpp
M Source/JavaScriptCore/ftl/FTLOutput.h
M Source/JavaScriptCore/jit/AssemblyHelpers.cpp
M Source/JavaScriptCore/jit/AssemblyHelpers.h
M Source/JavaScriptCore/jit/CCallHelpers.h
M Source/JavaScriptCore/jit/JIT.h
M Source/JavaScriptCore/jit/JITCall.cpp
M Source/JavaScriptCore/jit/JITInlines.h
M Source/JavaScriptCore/jit/JITOperations.cpp
M Source/JavaScriptCore/jit/JITOperations.h
R Source/JavaScriptCore/jit/OperationResult.h
M Source/JavaScriptCore/llint/LLIntThunks.h
M Source/JavaScriptCore/runtime/AtomicsObject.cpp
M Source/JavaScriptCore/runtime/CommonSlowPaths.h
M Source/JavaScriptCore/runtime/ExceptionScope.h
M Source/JavaScriptCore/runtime/HashMapImplInlines.h
M Source/JavaScriptCore/runtime/MathCommon.cpp
M Source/JavaScriptCore/runtime/MathCommon.h
M Source/JavaScriptCore/runtime/StringPrototype.cpp
M Source/JavaScriptCore/tools/JSDollarVM.cpp
M Source/JavaScriptCore/wasm/WasmOperations.cpp
M Source/JavaScriptCore/wasm/WasmOperations.h
M Source/JavaScriptCore/yarr/YarrJIT.cpp
M Source/WTF/wtf/PlatformCallingConventions.h
M Source/WTF/wtf/Threading.cpp
M Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
M Source/WebCore/bindings/scripts/test/JS/JSTestDOMJIT.cpp
M Source/WebCore/cssjit/SelectorCompiler.cpp
M Source/WebCore/domjit/JSDocumentDOMJIT.cpp

  Log Message:
  ---
  Unreviewed, reverting 278366@main (fc1560b)
https://bugs.webkit.org/show_bug.cgi?id=273732
rdar://127536653

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 8251b5: ASAN_SEGV | WebCore::RenderFragmentedFlow::objectS...

2024-05-04 Thread lericaa
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8251b5c26b6d9ddd3ac1268c2d8c7940094a49af
  
https://github.com/WebKit/WebKit/commit/8251b5c26b6d9ddd3ac1268c2d8c7940094a49af
  Author: Erica Li 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
A 
LayoutTests/fast/css-grid-layout/out-of-flow-positioned-dialog-showModal-crash-expected.txt
A 
LayoutTests/fast/css-grid-layout/out-of-flow-positioned-dialog-showModal-crash.html
M Source/WebCore/dom/FullscreenManager.cpp
M Source/WebCore/html/HTMLDialogElement.cpp
M Source/WebCore/rendering/RenderBox.cpp
M Source/WebCore/rendering/RenderElement.cpp
M Source/WebCore/rendering/RenderElement.h

  Log Message:
  ---
  ASAN_SEGV | WebCore::RenderFragmentedFlow::objectShouldFragmentInFlowFragment.
rdar://125183911
https://bugs.webkit.org/show_bug.cgi?id=272301

Reviewed by Alan Baradlay.

This is another case where we can not dectect containing block change
in styledid/willchange like what was fixed in 266309@main,
moved markRendererDirtyAfterTopLayerChange to Element as common API
which can be used by FullscreenManager and HTMLDialogElement.

* 
LayoutTests/fast/css-grid-layout/out-of-flow-positioned-dialog-showModal-crash-expected.txt:
 Added.
* 
LayoutTests/fast/css-grid-layout/out-of-flow-positioned-dialog-showModal-crash.html:
 Added.
* Source/WebCore/dom/FullscreenManager.cpp:
(WebCore::FullscreenManager::willEnterFullscreen):
(WebCore::markRendererDirtyAfterTopLayerChange): Deleted.
* Source/WebCore/html/HTMLDialogElement.cpp:
(WebCore::HTMLDialogElement::showModal):
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::gridStyleHasNotChanged): mini refactoring to make criteria looks more 
clear.
(WebCore::RenderBox::updateGridPositionAfterStyleChange):
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::RenderElement::markRendererDirtyAfterTopLayerChange):
* Source/WebCore/rendering/RenderElement.h:

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 2775f5: [InteractionRegions] Generated clip paths are some...

2024-05-04 Thread Etienne Segonzac
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2775f5bf7c3e8aeb9b44090c7a277aedcdb7d0e4
  
https://github.com/WebKit/WebKit/commit/2775f5bf7c3e8aeb9b44090c7a277aedcdb7d0e4
  Author: Etienne Segonzac 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M LayoutTests/interaction-region/clip-path-expected.txt
M LayoutTests/interaction-region/clip-path.html
M LayoutTests/interaction-region/icon-masking-expected.txt
M LayoutTests/interaction-region/icon-masking.html
M LayoutTests/interaction-region/svg-expected.txt
M LayoutTests/interaction-region/svg.html
M Source/WebCore/page/InteractionRegion.cpp
M Source/WebCore/page/InteractionRegion.h
M Source/WebCore/rendering/EventRegion.cpp
M Source/WebCore/rendering/EventRegion.h

  Log Message:
  ---
  [InteractionRegions] Generated clip paths are sometimes offset from their 
element
https://bugs.webkit.org/show_bug.cgi?id=273428


Reviewed by Simon Fraser.

When generating Interaction Regions, the paths we build to match
shapes are complete and relative to the element's bounds.
But the Interaction Region's bounds respect clipping.
Provide the offset between the two to `interactionRegionForRenderedRegion`
so we can adjust the paths location if needed.
(Effectively moving the path in the mask layer on the UI-side.)

Also provide the current transform to skip shape generation for
rotations / skew (unsupported) and also to  avoid having to go through
`absoluteQuads` just to get a bounding size.

This applies to SVG elements, icons and CSS clip-paths.

For SVG icons (using image tags), always use the image from the
SVGImageCache to match what was just painted.

* Source/WebCore/page/InteractionRegion.h:
* Source/WebCore/page/InteractionRegion.cpp:
(WebCore::boundingSize):
(WebCore::absoluteBoundingRect): Deleted.
Don't use `absoluteQuads` to get the bounding size.
(WebCore::findIconImage):
Use `imageForRenderer` to make sure icon masking is based on what was
just painted (and potentially cached in the SVGImageCache).
(WebCore::interactionRegionForRenderedRegion):
For icons, generate the raster shape at 0x0 directly instead of doing an
extra translation.
For SVG elements, use the full viewBoxTransform instead of just the
scale.
Use the new `clipOffset`.

* Source/WebCore/rendering/EventRegion.h:
* Source/WebCore/rendering/EventRegion.cpp:
(WebCore::EventRegionContext::unite):
(WebCore::EventRegionContext::uniteInteractionRegions):
Pass an optional transform and the clip offset to
`interactionRegionForRenderedRegion`.

* LayoutTests/interaction-region/icon-masking.html:
Add test cases clipping on the top left corner (bitmap and SVG).
Add test cases with nested transforms (with and without compositing
layers).
Add a test case with rotation (no clip-path).
* LayoutTests/interaction-region/icon-masking-expected.txt:
New interaction regions, new guards on the SVG logo now matching the "is
complex shape" check, and floating point diff.
* LayoutTests/interaction-region/svg.html:
Add a test case clipping on the top left corner.
* LayoutTests/interaction-region/svg-expected.txt:
New interaction regions and floating point diff.
* LayoutTests/interaction-region/clip-path-expected.txt:
Add a test case clipping on the left and right edge.
Add test cases with rotation / skew (no clip-path).
* LayoutTests/interaction-region/clip-path.html:
New interaction regions.

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9bcbb8: Restructure CSS color parsing to be more declarative

2024-05-04 Thread Sam Weinig
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9bcbb8f9e5ddd017b61405c4b528aeb0bceb2b70
  
https://github.com/WebKit/WebKit/commit/9bcbb8f9e5ddd017b61405c4b528aeb0bceb2b70
  Author: Sam Weinig 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
A Source/WebCore/css/color/CSSColorDescriptors.h
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Angle.h
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Meta.h
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Number.h
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.cpp
M Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.h

  Log Message:
  ---
  Restructure CSS color parsing to be more declarative
https://bugs.webkit.org/show_bug.cgi?id=273372

Reviewed by Tim Nguyen.

Restructures CSS color parsing and normalization to use be driven
by a set of constexpr descriptors of the various different color
function types. This reduces redundancy, but the main goal is to
make late resolution of relative colors easier, needed for currentColor
support, easier in a forthcoming change.

* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
- Added CSSColorDescriptors.h.

* Source/WebCore/css/color/CSSColorDescriptors.h: Added.
(WebCore::RGBFunctionLegacy):
(WebCore::RGBFunctionModernAbsolute):
(WebCore::RGBFunctionModernRelative):
(WebCore::HSLFunctionLegacy):
(WebCore::HSLFunctionModern):
(WebCore::HWBFunction):
(WebCore::LabFunction):
(WebCore::LCHFunction):
(WebCore::OKLabFunction):
(WebCore::OKLCHFunction):
(WebCore::ColorRGBFunction):
(WebCore::ColorXYZFunction):
- Added descriptors for all the CSS color functions that directly
  describe a color. The descriptors contain enough information to
  parse and normalize the the absolute and relative forms.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Angle.h:
(WebCore::CSSPropertyParserHelpers::ConsumerLookup::operator()):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Meta.h:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Number.h:
(WebCore::CSSPropertyParserHelpers::ConsumerLookup::operator()):
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.cpp:
* Source/WebCore/css/parser/CSSPropertyParserConsumer+Percent.h:
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentRaw):
(WebCore::CSSPropertyParserHelpers::consumeNumberOrPercentOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::consumePercentOrNoneRaw):
(WebCore::CSSPropertyParserHelpers::ConsumerLookup::operator()):
(WebCore::CSSPropertyParserHelpers::ConsumerLookup::operator()):
(WebCore::CSSPropertyParserHelpers::ConsumerLookup::operator()):
- Add support for invoking a consumer from a generic context based on
  the result type. For instance, if you want to consume a 
NumberOrPercentRaw,
  a caller now use `ConsumerLookup()(args)` to call
  `consumeNumberOrPercentRaw(args)`.

* Source/WebCore/css/parser/CSSPropertyParserConsumer+Color.cpp:
(WebCore::CSSPropertyParserHelpers::outsideSRGBGamut):
(WebCore::CSSPropertyParserHelpers::convertAbsoluteFunctionToColor):
(WebCore::CSSPropertyParserHelpers::convertRelativeFunctionToColor):
(WebCore::CSSPropertyParserHelpers::normalizeComponent):
(WebCore::CSSPropertyParserHelpers::normalizeAbsoluteComponents):
(WebCore::CSSPropertyParserHelpers::normalizeRelativeComponents):
(WebCore::CSSPropertyParserHelpers::consumeComponent):
(WebCore::CSSPropertyParserHelpers::consumeAlphaDelimiter):
(WebCore::CSSPropertyParserHelpers::consumeAbsoluteComponents):
(WebCore::CSSPropertyParserHelpers::consumeRelativeComponents):
(WebCore::CSSPropertyParserHelpers::consumeAndNormalizeAbsoluteComponents):
(WebCore::CSSPropertyParserHelpers::consumeAndNormalizeRelativeComponents):
(WebCore::CSSPropertyParserHelpers::parseGenericAbsoluteFunctionParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseGenericRelativeFunctionParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseGenericFunctionParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseRGBFunctionParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseHSLFunctionParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionParametersRaw):
(WebCore::CSSPropertyParserHelpers::parseColorFunctionRaw):
(WebCore::CSSPropertyParserHelpers::parseColorFunction):
(WebCore::CSSPropertyParserHelpers::normalizeLightnessPercent): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeABPercent): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeChromaPercent): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeXYZPercent): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeRGBPercent): Deleted.
(WebCore::CSSPropertyParserHelpers::normalizeAlphaPercent): Deleted.
(WebCore::CSSPropertyParserHelpers::consumeOriginColorRaw): Deleted.

[webkit-changes] [WebKit/WebKit] 13455c: [JSC] Reland Handler IC

2024-05-04 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 13455c7affe3713294333e8fa829a3089f36f2e4
  
https://github.com/WebKit/WebKit/commit/13455c7affe3713294333e8fa829a3089f36f2e4
  Author: Yusuke Suzuki 
  Date:   2024-05-04 (Sat, 04 May 2024)

  Changed paths:
M Source/JavaScriptCore/bytecode/AccessCase.cpp
M Source/JavaScriptCore/bytecode/AccessCase.h
M Source/JavaScriptCore/bytecode/CodeBlock.cpp
M Source/JavaScriptCore/bytecode/GetByStatus.cpp
M Source/JavaScriptCore/bytecode/GetterSetterAccessCase.cpp
M Source/JavaScriptCore/bytecode/GetterSetterAccessCase.h
M Source/JavaScriptCore/bytecode/InlineAccess.cpp
M Source/JavaScriptCore/bytecode/InlineAccess.h
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp
M Source/JavaScriptCore/bytecode/InlineCacheCompiler.h
M Source/JavaScriptCore/bytecode/PutByStatus.cpp
M Source/JavaScriptCore/bytecode/Repatch.cpp
M Source/JavaScriptCore/bytecode/SharedJITStubSet.h
M Source/JavaScriptCore/bytecode/StructureStubInfo.cpp
M Source/JavaScriptCore/bytecode/StructureStubInfo.h
M Source/JavaScriptCore/dfg/DFGJITCode.cpp
M Source/JavaScriptCore/heap/JITStubRoutineSet.cpp
M Source/JavaScriptCore/jit/GCAwareJITStubRoutine.cpp
M Source/JavaScriptCore/jit/GCAwareJITStubRoutine.h
M Source/JavaScriptCore/runtime/StructureID.h
M Source/WTF/wtf/FixedVector.h
M Source/WTF/wtf/HashCountedSet.h

  Log Message:
  ---
  [JSC] Reland Handler IC
https://bugs.webkit.org/show_bug.cgi?id=273693
rdar://127496851

Reviewed by Keith Miller.

This patch enables limited variant of Handler IC. The limitation means,

1. Only enabled for Baseline JIT.
2. Getter and Setter are not supported yet.
3. We are caching entire code as an one handler. This is not the final form we 
would like to have.
   Next step is splitting them into one per AccessCase and chain them.
4. After (3) gets done, we would like to put more data into InlineCacheHandler 
itself so that code
   can be more and more sharable.

But even with this limited form, we are already observing good cache hit rate. 
So we take an approach starting with this,
and further extending Handler IC based on the above milestones.

We enable Handler IC, which is only enabled for Baseline JIT right now.
The IC is hash-consed via SharedJITStubSet. And InlineCacheCompiler first 
search for an already compiled stub, if it finds it,
we register watchpoint to this stub and use it without new compilation. If it 
is not found, we compile a new stub and register it to this table if possible.
When nobody uses this stub, then refCount becomes zero, and it automatically 
unregister itself from the table.
Each StructureStubInfo site's access cases is always subsumes stub's access 
cases. So GC will check validity via this StructureStubInfo's access cases, and
drop stub when it is no longer valid (as the same to the current IC).

The major difference from the last patch is adding multiple owners to the 
shared JIT IC.
Stubs are unregistering themselves from SharedJITStubSet when it reaches to 
zero-ref-count.
But this does not work well since CodeBlock can be destroyed lazily: if 
CodeBlock is dead, during that,
no GC scanning happens to this stub while ref-count is still non-zero.
For normal JIT stubs, we have owner concept for JIT stub. At GC end phase, we 
iterate stubs and check whether the owner is already dead.
And if it is dead, we mark it m_ownerIsDead. But shared JIT stub does not have 
this concept.
Instead, we have HashCountedSet for shared JIT stub, and register multiple 
owners for shared JIT stub. And at GC end phase, we scan owners
to wipe dead owners, and when live owners become zero, we mark the stub as 
m_ownerIsDead too.

* Source/JavaScriptCore/bytecode/AccessCase.cpp:
(JSC::AccessCase::tryGetAlternateBaseImpl const):
(JSC::AccessCase::canBeShared):
(JSC::AccessCase::tryGetAlternateBase const):
(JSC::AccessCase::hasAlternateBaseImpl const): Deleted.
(JSC::AccessCase::alternateBaseImpl const): Deleted.
(JSC::AccessCase::hasAlternateBase const): Deleted.
(JSC::AccessCase::alternateBase const): Deleted.
* Source/JavaScriptCore/bytecode/AccessCase.h:
(JSC::AccessCase::identifier const):
(JSC::AccessCase::dumpImpl const):
(JSC::AccessCase::updateIdentifier): Deleted.
* Source/JavaScriptCore/bytecode/GetByStatus.cpp:
(JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
* Source/JavaScriptCore/bytecode/GetterSetterAccessCase.cpp:
(JSC::GetterSetterAccessCase::tryGetAlternateBaseImpl const):
(JSC::GetterSetterAccessCase::hasAlternateBaseImpl const): Deleted.
(JSC::GetterSetterAccessCase::alternateBaseImpl const): Deleted.
* Source/JavaScriptCore/bytecode/GetterSetterAccessCase.h:
* Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp:
(JSC::InlineCacheCompiler::generateImpl):
(JSC::InlineCacheCompiler::regenerate):
(JSC::isMegamorphicById): Deleted.
* Source/JavaScriptCore/bytecode/PutByStatus.cpp:

[webkit-changes] [WebKit/WebKit] 2b3f00: Add more smart pointers to lazy load observers

2024-05-04 Thread Rob Buis
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2b3f00e89aabd3a238b70e5153315344e8ac73e1
  
https://github.com/WebKit/WebKit/commit/2b3f00e89aabd3a238b70e5153315344e8ac73e1
  Author: Rob Buis 
  Date:   2024-05-03 (Fri, 03 May 2024)

  Changed paths:
M Source/WebCore/html/LazyLoadFrameObserver.cpp
M Source/WebCore/html/LazyLoadFrameObserver.h
M Source/WebCore/html/LazyLoadImageObserver.cpp

  Log Message:
  ---
  Add more smart pointers to lazy load observers
https://bugs.webkit.org/show_bug.cgi?id=273321

Reviewed by Chris Dumez.

Add more smart pointers to lazy load observers, by both replacing raw member
variables and fixing [alpha.webkit.UncountedCallArgsChecker] warnings.

* Source/WebCore/html/LazyLoadFrameObserver.cpp:
(WebCore::LazyLoadFrameObserver::observe):
(WebCore::LazyLoadFrameObserver::unobserve):
* Source/WebCore/html/LazyLoadFrameObserver.h:
* Source/WebCore/html/LazyLoadImageObserver.cpp:
(WebCore::LazyLoadImageObserver::observe):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes