[webkit-changes] [279977] trunk/Source/JavaScriptCore

2021-07-15 Thread keith_miller
Title: [279977] trunk/Source/_javascript_Core








Revision 279977
Author keith_mil...@apple.com
Date 2021-07-15 22:02:05 -0700 (Thu, 15 Jul 2021)


Log Message
Alias JSC graph dumping options
https://bugs.webkit.org/show_bug.cgi?id=228015

Reviewed by Yusuke Suzuki.

My brain seems to associate the phases with the tier we are compiling in
rather than the type of graph we are processing. At this point it's
probably easier to just add an alias rather than convince me otherwise.

* runtime/OptionsList.h:

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/runtime/OptionsList.h




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (279976 => 279977)

--- trunk/Source/_javascript_Core/ChangeLog	2021-07-16 04:10:49 UTC (rev 279976)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-07-16 05:02:05 UTC (rev 279977)
@@ -1,3 +1,16 @@
+2021-07-15  Keith Miller  
+
+Alias JSC graph dumping options
+https://bugs.webkit.org/show_bug.cgi?id=228015
+
+Reviewed by Yusuke Suzuki.
+
+My brain seems to associate the phases with the tier we are compiling in
+rather than the type of graph we are processing. At this point it's
+probably easier to just add an alias rather than convince me otherwise.
+
+* runtime/OptionsList.h:
+
 2021-07-15  Yusuke Suzuki  
 
 [JSC] SamplingProfiler should recognize RegExp execution


Modified: trunk/Source/_javascript_Core/runtime/OptionsList.h (279976 => 279977)

--- trunk/Source/_javascript_Core/runtime/OptionsList.h	2021-07-16 04:10:49 UTC (rev 279976)
+++ trunk/Source/_javascript_Core/runtime/OptionsList.h	2021-07-16 05:02:05 UTC (rev 279977)
@@ -565,6 +565,10 @@
 v(showDisassembly, dumpDisassembly, SameOption) \
 v(showDFGDisassembly, dumpDFGDisassembly, SameOption) \
 v(showFTLDisassembly, dumpFTLDisassembly, SameOption) \
+v(dumpGraphAtEachDFGFTLPhase, dumpDFGFTLGraphAtEachPhase, SameOption) \
+v(dumpGraphAtEachDFGPhase, dumpDFGGraphAtEachPhase, SameOption) \
+v(dumpGraphAtEachB3Phase, dumpB3GraphAtEachPhase, SameOption) \
+v(dumpGraphAtEachAirPhase, dumpAirGraphAtEachPhase, SameOption) \
 v(alwaysDoFullCollection, useGenerationalGC, InvertedOption) \
 v(enableOSREntryToDFG, useOSREntryToDFG, SameOption) \
 v(enableOSREntryToFTL, useOSREntryToFTL, SameOption) \






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [279976] trunk

2021-07-15 Thread ysuzuki
Title: [279976] trunk








Revision 279976
Author ysuz...@apple.com
Date 2021-07-15 21:10:49 -0700 (Thu, 15 Jul 2021)


Log Message
[JSC] SamplingProfiler should recognize RegExp execution
https://bugs.webkit.org/show_bug.cgi?id=201702

Reviewed by Saam Barati.

JSTests:

* stress/sampling-profiler-regexp.js: Added.
(platformSupportsSamplingProfiler.getText):
(platformSupportsSamplingProfiler.test):
(platformSupportsSamplingProfiler.baz):
(platformSupportsSamplingProfiler):
* stress/sampling-profiler/samplingProfiler.js: Extend samplingProfiler to show better error information when VERBOSE = true.
(doesTreeHaveStackTrace):

Source/_javascript_Core:

This patch extends SamplingProfiler to recognize RegExp execution. We record
executing RegExp in VM via MatchingContextHolder so that SamplingProfiler can detect it.
We use MatchingContextHolder even if the RegExp is interpreter mode so that we can still
catch non-JIT RegExp in SamplingProfiler.

The example output is the following.

Sampling rate: 1000.00 microseconds. Total samples: 1830
Top functions as 
   466'Exec#:4'
   225'/(^|[^\\])\"\\\/Qngr\((-?[0-9]+)\)\\\/\"/g#:-1'
   173'runBlock1#:4'
88'/NQ_VQ/g#:-1'
83'/d2/g#:-1'
78'/d1/g#:-1'
70'/\s?;\s?/#:-1'
68'replace#:3'
50'/(((\w+):\/\/)([^\/:]*)(:(\d+))?)?([^#?]*)(\?([^#]*))?(#(.*))?/#:-1'
49'runBlock0#:4'
46'#:-1'
24'/^\s*|\s*$/g#:-1'

Sampling rate: 1000.00 microseconds. Total samples: 1830

Tier breakdown:
---
LLInt:13  (0.710383%)
Baseline: 54  (2.950820%)
DFG: 187  (10.218579%)
FTL: 612  (33.442623%)
js builtin:   73  (3.989071%)
Wasm:  0  (0.00%)
Host:  0  (0.00%)
RegExp:  907  (49.562842%)
C/C++: 0  (0.00%)
Unknown Executable:   57  (3.114754%)

Hottest bytecodes as 
   378'Exec#:FTL:bc#27'
   225'/(^|[^\\])\"\\\/Qngr\((-?[0-9]+)\)\\\/\"/g#:RegExp:'
88'/NQ_VQ/g#:RegExp:'
83'/d2/g#:RegExp:'
78'/d1/g#:RegExp:'
70'/\s?;\s?/#:RegExp:'
62'replace#:FTL:bc#63'
53'Exec#:DFG:bc#27'
50'/(((\w+):\/\/)([^\/:]*)(:(\d+))?)?([^#?]*)(\?([^#]*))?(#(.*))?/#:RegExp:'
46'#:None:'
42'runBlock1#:FTL:bc#1795'
29'runBlock1#:FTL:bc#1849'
29'runBlock1#:FTL:bc#1741'
24'/^\s*|\s*$/g#:RegExp:'
17'runBlock1#:DFG:bc#1741'
17'runBlock1#:DFG:bc#1795'
16'/\b\w+\b/g#:RegExp:'
14'/TNQP=([^;]*)/i#:RegExp:'
13'/%\w?$/#:RegExp:'
12'/^ba/#:RegExp:'
11'/^\s*(\S*(\s+\S+)*)\s*$/#:RegExp:'
10'runBlock0#:FTL:bc#400'
10'runBlock1#:DFG:bc#1849'
10'Exec#:DFG:bc#16'
 9'/(?:ZFVR.(\d+\.\d+))|(?:(?:Sversbk|TenaCnenqvfb|Vprjrnfry).(\d+\.\d+))|(?:Bcren.(\d+\.\d+))|(?:NccyrJroXvg.(\d+(?:\.\d+)?))/#:RegExp:'
 8'/##yv18##/gi#:RegExp:'
 8'/([a-zA-Z]|\s)+/#:RegExp:'
 7'/JroXvg\/(\S+)/#:RegExp:'
 7'runBlock0#:FTL:bc#2671'
 7'/^([#.]?)((?:[\w\u0128-\u*_-]|\\.)*)/#:RegExp:'
 6'/##oe##/gi#:RegExp:'
 6'runBlock1#:FTL:bc#124'
 6'/[+, ]/#:RegExp:'
 6'runBlock1#:FTL:bc#1903'
 6'replace#:DFG:bc#63'
 5'runBlock0#:FTL:bc#3378'
 5'/'/g#:RegExp:'
 5'/##yv20##/gi#:RegExp:'
 4'/\?[\w\W]*(sevraqvq|punaaryvq|tebhcvq)=([^\&\?#]*)/i#:RegExp:'
 4'load#:None:'

* CMakeLists.txt:
* _javascript_Core.xcodeproj/project.pbxproj:
* runtime/RegExp.cpp:
(JSC::RegExp::matchCompareWithInterpreter):
(JSC::RegExp::dumpToStream):
(JSC::appendLineTerminatorEscape):
(JSC::appendLineTerminatorEscape):
(JSC::escapePattern):
(JSC::RegExp::escapedPattern const): Moved from RegExpPrototype.cpp to implement RegExp::toSourceString and RegExp::escapedPattern.
(JSC::RegExp::toSourceString const):
(JSC::regexpToSourceString): Deleted.
* runtime/RegExp.h:
* runtime/RegExpInlines.h:
(JSC::RegExp::matchInline):
* runtime/RegExpPrototype.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::appendLineTerminatorEscape): Deleted.
(JSC::appendLineTerminatorEscape): Deleted.
(JSC::regExpProtoGetterSourceInternal): Deleted.
* runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::takeSample):
(JSC::SamplingProfiler::processUnverifiedStackTraces):
(JSC::SamplingProfiler::StackFrame::nameFromCallee):
(JSC::SamplingProfiler::StackFrame::displayName):
(JSC::SamplingProfiler::StackFrame::displayNameForJSONTests):
(JSC::SamplingProfiler::StackFrame::functionStartLine):
(JSC::SamplingProfiler::StackFrame::functionStartColumn):

[webkit-changes] [279975] trunk/Source/WebKit

2021-07-15 Thread wenson_hsieh
Title: [279975] trunk/Source/WebKit








Revision 279975
Author wenson_hs...@apple.com
Date 2021-07-15 21:01:38 -0700 (Thu, 15 Jul 2021)


Log Message
[iOS] WKMouseGestureRecognizer should not have failure requirements on WKDeferringGestureRecognizer
https://bugs.webkit.org/show_bug.cgi?id=228013
rdar://80342462

Reviewed by Tim Horton.

Avoid adding a gesture failure requirement between any WKDeferringGestureRecognizers and
WKMouseGestureRecognizer; It doesn't make sense to claim that WKMouseGestureRecognizer should only recognize
once active touch events have been handled by the web page. Under normal circumstances, this gesture failure
requirement is actually completely benign, since touch events should never be received by
WKMouseGestureRecognizer in the first place, and when using a trackpad, deferring gesture recognizers are not
triggered.

However, if an app were to (hypothetically) swizzle out `-gestureRecognizer:shouldReceiveTouch:` to force
WKMouseGestureRecognizer to receive normal (non-trackpad) touch events, this could cause nearly all gesture
recognizers in the window to become unresponsive, since WKMouseGestureRecognizer would be stuck in Changed state
long after other gestures in the same subgraph have transitioned to Ended or Failed state, thereby preventing
all of these gestures from being reset to Possible state.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (279974 => 279975)

--- trunk/Source/WebKit/ChangeLog	2021-07-16 02:09:39 UTC (rev 279974)
+++ trunk/Source/WebKit/ChangeLog	2021-07-16 04:01:38 UTC (rev 279975)
@@ -1,3 +1,27 @@
+2021-07-15  Wenson Hsieh  
+
+[iOS] WKMouseGestureRecognizer should not have failure requirements on WKDeferringGestureRecognizer
+https://bugs.webkit.org/show_bug.cgi?id=228013
+rdar://80342462
+
+Reviewed by Tim Horton.
+
+Avoid adding a gesture failure requirement between any WKDeferringGestureRecognizers and
+WKMouseGestureRecognizer; It doesn't make sense to claim that WKMouseGestureRecognizer should only recognize
+once active touch events have been handled by the web page. Under normal circumstances, this gesture failure
+requirement is actually completely benign, since touch events should never be received by
+WKMouseGestureRecognizer in the first place, and when using a trackpad, deferring gesture recognizers are not
+triggered.
+
+However, if an app were to (hypothetically) swizzle out `-gestureRecognizer:shouldReceiveTouch:` to force
+WKMouseGestureRecognizer to receive normal (non-trackpad) touch events, this could cause nearly all gesture
+recognizers in the window to become unresponsive, since WKMouseGestureRecognizer would be stuck in Changed state
+long after other gestures in the same subgraph have transitioned to Ended or Failed state, thereby preventing
+all of these gestures from being reset to Possible state.
+
+* UIProcess/ios/WKContentViewInteraction.mm:
+(-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]):
+
 2021-07-15  Jean-Yves Avenard  
 
 [Wk1] media/media-source/media-webm-opus-partial.html is a consistent failure (Enable VP8/VP9/Vorbis/Opus in WebKitLegacy)


Modified: trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm (279974 => 279975)

--- trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm	2021-07-16 02:09:39 UTC (rev 279974)
+++ trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm	2021-07-16 04:01:38 UTC (rev 279975)
@@ -8006,6 +8006,11 @@
 if (gestureRecognizer == _touchEventGestureRecognizer)
 return NO;
 
+#if HAVE(UIKIT_WITH_MOUSE_SUPPORT)
+if (gestureRecognizer == _mouseGestureRecognizer)
+return NO;
+#endif
+
 #if ENABLE(IMAGE_ANALYSIS)
 if (deferringGestureRecognizer == _imageAnalysisDeferringGestureRecognizer)
 return [self shouldDeferGestureDueToImageAnalysis:gestureRecognizer];






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [279974] trunk/Source

2021-07-15 Thread jya
Title: [279974] trunk/Source








Revision 279974
Author j...@apple.com
Date 2021-07-15 19:09:39 -0700 (Thu, 15 Jul 2021)


Log Message
[Wk1] media/media-source/media-webm-opus-partial.html is a consistent failure (Enable VP8/VP9/Vorbis/Opus in WebKitLegacy)
https://bugs.webkit.org/show_bug.cgi?id=228005
rdar://80346720

Reviewed by Jer Noble.

Source/WebCore:

There are already tests running under Wk1 that will exercise this code (and will no longer fail)

* page/RuntimeEnabledFeatures.cpp:
(WebCore::RuntimeEnabledFeatures::setVorbisDecoderEnabled):
Carry settings to PlatformMediaSessionManager
(WebCore::RuntimeEnabledFeatures::setOpusDecoderEnabled):
Carry settings to PlatformMediaSessionManager
* page/RuntimeEnabledFeatures.h:

Source/WebKit:

* Shared/WebPreferencesDefaultValues.cpp:
* Shared/WebPreferencesDefaultValues.h: Don't make webm parser conditional on VP9
being enabled; it's used with other codecs too and is codec-agnostic to start with.

Source/WebKitLegacy/mac:

* WebView/WebPreferencesDefaultValues.h: Add relevant settings getter methods.
* WebView/WebPreferencesDefaultValues.mm:
(WebKit::defaultWebMParserEnabled):
(WebKit::defaultVP8DecoderEnabled):
(WebKit::defaultVP9DecoderEnabled):

Source/WTF:

* Scripts/Preferences/WebPreferencesExperimental.yaml: Enable VP8/VP9/Vorbis/Opus
codecs for WebKitLegacy, no reasons they weren't already enabled.

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/page/RuntimeEnabledFeatures.cpp
trunk/Source/WebCore/page/RuntimeEnabledFeatures.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp
trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.h
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/WebView/WebPreferencesDefaultValues.h
trunk/Source/WebKitLegacy/mac/WebView/WebPreferencesDefaultValues.mm




Diff

Modified: trunk/Source/WTF/ChangeLog (279973 => 279974)

--- trunk/Source/WTF/ChangeLog	2021-07-16 02:07:47 UTC (rev 279973)
+++ trunk/Source/WTF/ChangeLog	2021-07-16 02:09:39 UTC (rev 279974)
@@ -1,3 +1,14 @@
+2021-07-15  Jean-Yves Avenard  
+
+[Wk1] media/media-source/media-webm-opus-partial.html is a consistent failure (Enable VP8/VP9/Vorbis/Opus in WebKitLegacy)
+https://bugs.webkit.org/show_bug.cgi?id=228005
+rdar://80346720
+
+Reviewed by Jer Noble.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml: Enable VP8/VP9/Vorbis/Opus
+codecs for WebKitLegacy, no reasons they weren't already enabled.
+
 2021-07-15  Joonghun Park  
 
 Unreviewed. Fix the build warning below since r279895.


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (279973 => 279974)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2021-07-16 02:07:47 UTC (rev 279973)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2021-07-16 02:09:39 UTC (rev 279974)
@@ -1082,10 +1082,11 @@
   webcoreBinding: none
   condition: ENABLE(VP9)
   defaultValue:
+WebKitLegacy:
+  default: WebKit::defaultVP8DecoderEnabled()
 WebKit:
   default: WebKit::defaultVP8DecoderEnabled()
 
-# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely.
 VP9DecoderEnabled:
   type: bool
   humanReadableName: "VP9 decoder"
@@ -1095,7 +1096,7 @@
 WebCore:
   default: false
 WebKitLegacy:
-  default: false
+  default: WebKit::defaultVP9DecoderEnabled()
 WebKit:
   default: WebKit::defaultVP9DecoderEnabled()
 
@@ -1253,10 +1254,10 @@
   webcoreBinding: RuntimeEnabledFeatures
   humanReadableName: "WebM MSE parser"
   humanReadableDescription: "Enable WebM MSE parser"
-  condition: ENABLE(MEDIA_SOURCE) && ENABLE(VP9)
+  condition: ENABLE(MEDIA_SOURCE)
   defaultValue:
 WebKitLegacy:
-  default: false
+  default: WebKit::defaultWebMParserEnabled()
 WebKit:
   default: WebKit::defaultWebMParserEnabled()
 


Modified: trunk/Source/WebCore/ChangeLog (279973 => 279974)

--- trunk/Source/WebCore/ChangeLog	2021-07-16 02:07:47 UTC (rev 279973)
+++ trunk/Source/WebCore/ChangeLog	2021-07-16 02:09:39 UTC (rev 279974)
@@ -1,5 +1,22 @@
 2021-07-15  Jean-Yves Avenard  
 
+[Wk1] media/media-source/media-webm-opus-partial.html is a consistent failure (Enable VP8/VP9/Vorbis/Opus in WebKitLegacy)
+https://bugs.webkit.org/show_bug.cgi?id=228005
+rdar://80346720
+
+Reviewed by Jer Noble.
+
+There are already tests running under Wk1 that will exercise this code (and will no longer fail)
+
+* page/RuntimeEnabledFeatures.cpp:
+(WebCore::RuntimeEnabledFeatures::setVorbisDecoderEnabled):
+Carry settings to PlatformMediaSessionManager
+(WebCore::RuntimeEnabledFeatures::setOpusDecoderEnabled):
+Carry settings to PlatformMediaSessionManager
+  

[webkit-changes] [279973] trunk

2021-07-15 Thread jya
Title: [279973] trunk








Revision 279973
Author j...@apple.com
Date 2021-07-15 19:07:47 -0700 (Thu, 15 Jul 2021)


Log Message
[MSE] sequence mode is broken if GPU Process is enabled
https://bugs.webkit.org/show_bug.cgi?id=227864


Reviewed by Jer Noble.

Source/WebCore:

When the source buffer's mode is set to sequence, the timestampOffset attribute
should be updated after each appendBuffer operation. However, when the GPU process
is enabled, the timestampOffset calculations are all done in the GPU process and
its result wasn't communicated back to the WebContent process leading its value
to always be 0 on read.
Fly-by fix: the timestamp offset calculation was incorrect, per spec
https://w3c.github.io/media-source/#sourcebuffer-coded-frame-processing
step 3.5.8.3.1 we read:
// Set timestampOffset equal to group start timestamp - presentation timestamp.
but the code did otherwise.

Test: media/media-source/media-mp4-h264-sequence-mode.html

* platform/graphics/SourceBufferPrivate.cpp:
(WebCore::SourceBufferPrivate::didReceiveSample): Offset m_timestampOffset by
the sample's presentation timestamp

Source/WebKit:

 When the source buffer's mode is set to sequence, the timestampOffset attribute
should be updated after each appendBuffer operation. However, when the GPU process
is enabled, the timestampOffset calculations are all done in the GPU process and
its result wasn't communicated back to the WebContent process leading its value
to always be 0 on read.

* GPUProcess/media/RemoteSourceBufferProxy.cpp:
(WebKit::RemoteSourceBufferProxy::sourceBufferPrivateAppendComplete): Add value of
the potentially updated timestamp offset back to the content process.
* WebProcess/GPU/media/SourceBufferPrivateRemote.cpp:
(WebKit::SourceBufferPrivateRemote::sourceBufferPrivateAppendComplete):
* WebProcess/GPU/media/SourceBufferPrivateRemote.h:
* WebProcess/GPU/media/SourceBufferPrivateRemote.messages.in: Add extra timestampOffset
parameter.

LayoutTests:

Note: we had tests checking on the correctness of the operation; however it's
using a mock SourceBuffer which doesn't run in the GPU process. Doing bug 225367
should be a priority so we get better code coverage and such bugs don't skip
under the radar.
To get around this issue, we write a new test that uses a mp4 and a h264 video track.

* media/media-source/media-mp4-h264-sequence-mode-expected.txt: Added.
* media/media-source/media-mp4-h264-sequence-mode.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/platform/graphics/SourceBufferPrivate.cpp
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.cpp
trunk/Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.cpp
trunk/Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.h
trunk/Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.messages.in


Added Paths

trunk/LayoutTests/media/media-source/media-mp4-h264-sequence-mode-expected.txt
trunk/LayoutTests/media/media-source/media-mp4-h264-sequence-mode.html




Diff

Modified: trunk/LayoutTests/ChangeLog (279972 => 279973)

--- trunk/LayoutTests/ChangeLog	2021-07-16 01:25:20 UTC (rev 279972)
+++ trunk/LayoutTests/ChangeLog	2021-07-16 02:07:47 UTC (rev 279973)
@@ -1,3 +1,20 @@
+2021-07-15  Jean-Yves Avenard  
+
+[MSE] sequence mode is broken if GPU Process is enabled
+https://bugs.webkit.org/show_bug.cgi?id=227864
+
+
+Reviewed by Jer Noble.
+
+Note: we had tests checking on the correctness of the operation; however it's
+using a mock SourceBuffer which doesn't run in the GPU process. Doing bug 225367
+should be a priority so we get better code coverage and such bugs don't skip
+under the radar.
+To get around this issue, we write a new test that uses a mp4 and a h264 video track.
+
+* media/media-source/media-mp4-h264-sequence-mode-expected.txt: Added.
+* media/media-source/media-mp4-h264-sequence-mode.html: Added.
+
 2021-07-15  Chris Dumez  
 
 Add initial support for BroadcastChannel behind a runtime flag


Added: trunk/LayoutTests/media/media-source/media-mp4-h264-sequence-mode-expected.txt (0 => 279973)

--- trunk/LayoutTests/media/media-source/media-mp4-h264-sequence-mode-expected.txt	(rev 0)
+++ trunk/LayoutTests/media/media-source/media-mp4-h264-sequence-mode-expected.txt	2021-07-16 02:07:47 UTC (rev 279973)
@@ -0,0 +1,22 @@
+
+RUN(video.src = ""
+EVENT(sourceopen)
+Append the init segment
+RUN(sourceBuffer = source.addSourceBuffer(loader.type()))
+RUN(sourceBuffer.appendBuffer(loader.initSegment()))
+EVENT(update)
+EXPECTED (sourceBuffer.timestampOffset == '0') OK
+RUN(sourceBuffer.appendBuffer(loader.mediaSegment(1)))
+EVENT(update)
+EXPECTED (sourceBuffer.timestampOffset == '0') OK
+EXPECTED (sourceBuffer.buffered.length == '1') OK
+EXPECTED (sourceBuffer.buffered.start(0) == '1') OK
+EXPECTED 

[webkit-changes] [279972] trunk/Source/WTF

2021-07-15 Thread jh718 . park
Title: [279972] trunk/Source/WTF








Revision 279972
Author jh718.p...@samsung.com
Date 2021-07-15 18:25:20 -0700 (Thu, 15 Jul 2021)


Log Message
Unreviewed. Fix the build warning below since r279895.
warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]

* wtf/URL.cpp:
(WTF::URL::setPath):

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/URL.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (279971 => 279972)

--- trunk/Source/WTF/ChangeLog	2021-07-16 00:36:39 UTC (rev 279971)
+++ trunk/Source/WTF/ChangeLog	2021-07-16 01:25:20 UTC (rev 279972)
@@ -1,3 +1,11 @@
+2021-07-15  Joonghun Park  
+
+Unreviewed. Fix the build warning below since r279895.
+warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
+
+* wtf/URL.cpp:
+(WTF::URL::setPath):
+
 2021-07-15  Chris Dumez  
 
 Add initial support for BroadcastChannel behind a runtime flag


Modified: trunk/Source/WTF/wtf/URL.cpp (279971 => 279972)

--- trunk/Source/WTF/wtf/URL.cpp	2021-07-16 00:36:39 UTC (rev 279971)
+++ trunk/Source/WTF/wtf/URL.cpp	2021-07-16 01:25:20 UTC (rev 279972)
@@ -682,7 +682,7 @@
 
 parse(makeString(
 StringView(m_string).left(pathStart()),
-path.startsWith('/') || (path.startsWith('\\') && (hasSpecialScheme() || protocolIs("file"))) || (!hasSpecialScheme() && path.isEmpty() && m_schemeEnd + 1 < pathStart()) ? "" : "/",
+path.startsWith('/') || (path.startsWith('\\') && (hasSpecialScheme() || protocolIs("file"))) || (!hasSpecialScheme() && path.isEmpty() && m_schemeEnd + 1U < pathStart()) ? "" : "/",
 !hasSpecialScheme() && host().isEmpty() && path.startsWith("//") && path.length() > 2 ? "/." : "",
 escapePathWithoutCopying(path),
 StringView(m_string).substring(m_pathEnd)






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [279970] trunk/LayoutTests

2021-07-15 Thread jenner
Title: [279970] trunk/LayoutTests








Revision 279970
Author jen...@apple.com
Date 2021-07-15 17:35:37 -0700 (Thu, 15 Jul 2021)


Log Message
inspector/canvas/setRecordingAutoCaptureFrameCount.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=228011.

Unreviewed test gardening.

Patch by Eric Hutchison  on 2021-07-15

* platform/mac/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/mac/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (279969 => 279970)

--- trunk/LayoutTests/ChangeLog	2021-07-15 23:24:52 UTC (rev 279969)
+++ trunk/LayoutTests/ChangeLog	2021-07-16 00:35:37 UTC (rev 279970)
@@ -1,3 +1,12 @@
+2021-07-15  Eric Hutchison  
+
+inspector/canvas/setRecordingAutoCaptureFrameCount.html is flaky failing.
+https://bugs.webkit.org/show_bug.cgi?id=228011.
+
+Unreviewed test gardening.
+
+* platform/mac/TestExpectations:
+
 2021-07-15  Kyle Piddington  
 
 WebGL2 demo doesn't work due to failing compilation to metal backend


Modified: trunk/LayoutTests/platform/mac/TestExpectations (279969 => 279970)

--- trunk/LayoutTests/platform/mac/TestExpectations	2021-07-15 23:24:52 UTC (rev 279969)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2021-07-16 00:35:37 UTC (rev 279970)
@@ -2325,5 +2325,7 @@
 
 webkit.org/b/227877 imported/w3c/web-platform-tests/navigation-timing/test_timing_attributes_order.html [ Pass Failure ]
 
+webkit.org/b/228011 inspector/canvas/setRecordingAutoCaptureFrameCount.html [ Pass Failure ]
+
 webkit.org/b/227998 imported/w3c/web-platform-tests/html/semantics/embedded-content/the-embed-element/embed-network-error.sub.html [ Pass Failure ]
 






___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [279969] trunk

2021-07-15 Thread cdumez
Title: [279969] trunk








Revision 279969
Author cdu...@apple.com
Date 2021-07-15 16:24:52 -0700 (Thu, 15 Jul 2021)


Log Message
FetchResponse.formData() should reject promise with a TypeError if the body is null
https://bugs.webkit.org/show_bug.cgi?id=228007

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

Rebaseline WPT tests now that more checks are passing.

* web-platform-tests/fetch/api/request/request-consume-empty.any-expected.txt:
* web-platform-tests/fetch/api/request/request-consume-empty.any.worker-expected.txt:
* web-platform-tests/fetch/api/response/response-consume-empty.any-expected.txt:
* web-platform-tests/fetch/api/response/response-consume-empty.any.worker-expected.txt:

Source/WebCore:

FetchResponse.formData() should reject promise with a TypeError if the body is null, to match
the behavior of Chrome and Firefox.

No new tests, rebaselined existing tests.

* Modules/fetch/FetchBodyOwner.cpp:
(WebCore::FetchBodyOwner::formData):

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any.worker-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-consume-empty.any-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/response/response-consume-empty.any.worker-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Modules/fetch/FetchBodyOwner.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (279968 => 279969)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-07-15 22:56:57 UTC (rev 279968)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-07-15 23:24:52 UTC (rev 279969)
@@ -1,5 +1,19 @@
 2021-07-15  Chris Dumez  
 
+FetchResponse.formData() should reject promise with a TypeError if the body is null
+https://bugs.webkit.org/show_bug.cgi?id=228007
+
+Reviewed by Alex Christensen.
+
+Rebaseline WPT tests now that more checks are passing.
+
+* web-platform-tests/fetch/api/request/request-consume-empty.any-expected.txt:
+* web-platform-tests/fetch/api/request/request-consume-empty.any.worker-expected.txt:
+* web-platform-tests/fetch/api/response/response-consume-empty.any-expected.txt:
+* web-platform-tests/fetch/api/response/response-consume-empty.any.worker-expected.txt:
+
+2021-07-15  Chris Dumez  
+
 Sync XHR 'load' event is always has total/loaded=0
 https://bugs.webkit.org/show_bug.cgi?id=228004
 


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any-expected.txt (279968 => 279969)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any-expected.txt	2021-07-15 22:56:57 UTC (rev 279968)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any-expected.txt	2021-07-15 23:24:52 UTC (rev 279969)
@@ -3,9 +3,9 @@
 PASS Consume request's body as blob
 PASS Consume request's body as arrayBuffer
 PASS Consume request's body as json (error case)
-FAIL Consume request's body as formData with correct multipart type (error case) promise_rejects_js: function "function () { throw e }" threw undefined with type "undefined", not an object
-FAIL Consume request's body as formData with correct urlencoded type promise_test: Unhandled rejection with value: undefined
-FAIL Consume request's body as formData without correct type (error case) promise_rejects_js: function "function () { throw e }" threw undefined with type "undefined", not an object
+PASS Consume request's body as formData with correct multipart type (error case)
+FAIL Consume request's body as formData with correct urlencoded type promise_test: Unhandled rejection with value: object "TypeError: Type error"
+PASS Consume request's body as formData without correct type (error case)
 PASS Consume empty blob request body as arrayBuffer
 PASS Consume empty text request body as arrayBuffer
 PASS Consume empty blob request body as text


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any.worker-expected.txt (279968 => 279969)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any.worker-expected.txt	2021-07-15 22:56:57 UTC (rev 279968)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/fetch/api/request/request-consume-empty.any.worker-expected.txt	2021-07-15 23:24:52 UTC (rev 279969)
@@ -3,9 +3,9 @@
 PASS Consume request's body as blob
 PASS Consume request's body as arrayBuffer
 PASS Consume request's body as json (error case)
-FAIL Consume request's body as formData with correct multipart type (error case) promise_rejects_js: function "function () { throw e }" threw undefined with type "undefined", not an object
-FAIL Consume request's body as 

[webkit-changes] [279968] trunk

2021-07-15 Thread kpiddington
Title: [279968] trunk








Revision 279968
Author kpidding...@apple.com
Date 2021-07-15 15:56:57 -0700 (Thu, 15 Jul 2021)


Log Message
WebGL2 demo doesn't work due to failing compilation to metal backend
https://bugs.webkit.org/show_bug.cgi?id=226865
Source/ThirdParty/ANGLE:

Fix translation of struct-arrays to contain the array type as well.
Reviewed by Dean Jackson.

* src/compiler/translator/TranslatorMetalDirect/SeparateCompoundStructDeclarations.cpp:

LayoutTests:

Fix translation of struct-arrays to contain the array type as well.
Reviewed by Dean Jackson.

* fast/canvas/webgl/shader-with-struct-array.html: Added.
* fast/canvas/webgl/shader-with-struct-array-expected.txt: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/ThirdParty/ANGLE/ChangeLog
trunk/Source/ThirdParty/ANGLE/src/compiler/translator/TranslatorMetalDirect/SeparateCompoundStructDeclarations.cpp


Added Paths

trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array-expected.txt
trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array.html




Diff

Modified: trunk/LayoutTests/ChangeLog (279967 => 279968)

--- trunk/LayoutTests/ChangeLog	2021-07-15 22:52:51 UTC (rev 279967)
+++ trunk/LayoutTests/ChangeLog	2021-07-15 22:56:57 UTC (rev 279968)
@@ -1,3 +1,14 @@
+2021-07-15  Kyle Piddington  
+
+WebGL2 demo doesn't work due to failing compilation to metal backend
+https://bugs.webkit.org/show_bug.cgi?id=226865
+
+Fix translation of struct-arrays to contain the array type as well.
+Reviewed by Dean Jackson.
+
+* fast/canvas/webgl/shader-with-struct-array.html: Added.
+* fast/canvas/webgl/shader-with-struct-array-expected.txt: Added.
+
 2021-07-15  Ayumi Kojima  
 
 [Big Sur wk1 Debug] imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audiobuffersourcenode-interface/audiobuffersource-duration-loop.html is a flaky failure.


Added: trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array-expected.txt (0 => 279968)

--- trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array-expected.txt	2021-07-15 22:56:57 UTC (rev 279968)
@@ -0,0 +1,10 @@
+Tests that program compiling/linking with a struct-array construct.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS getError was expected value: NO_ERROR : no error for struct array in program
+PASS successfullyParsed is true
+
+TEST COMPLETE
+


Added: trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array.html (0 => 279968)

--- trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array.html	(rev 0)
+++ trunk/LayoutTests/fast/canvas/webgl/shader-with-struct-array.html	2021-07-15 22:56:57 UTC (rev 279968)
@@ -0,0 +1,55 @@
+
+
+
+
+
+
+
+
+
+
+