[webkit-changes] [219286] trunk/Tools
Title: [219286] trunk/Tools Revision 219286 Author zandober...@gmail.com Date 2017-07-09 22:58:57 -0700 (Sun, 09 Jul 2017) Log Message Add WebGL2 configuration option to build-webkit https://bugs.webkit.org/show_bug.cgi?id=174251 Reviewed by Michael Catanzaro. * Scripts/webkitperl/FeatureList.pm: Add the 'webgl2' option, making it possible to enable the ENABLE_WEBGL2 flag through the build-webkit script. The feature is marked as enabled for the Apple Cocoa ports. Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitperl/FeatureList.pm Diff Modified: trunk/Tools/ChangeLog (219285 => 219286) --- trunk/Tools/ChangeLog 2017-07-10 02:34:55 UTC (rev 219285) +++ trunk/Tools/ChangeLog 2017-07-10 05:58:57 UTC (rev 219286) @@ -1,3 +1,14 @@ +2017-07-09 Zan Dobersek+ +Add WebGL2 configuration option to build-webkit +https://bugs.webkit.org/show_bug.cgi?id=174251 + +Reviewed by Michael Catanzaro. + +* Scripts/webkitperl/FeatureList.pm: Add the 'webgl2' option, making it possible +to enable the ENABLE_WEBGL2 flag through the build-webkit script. The feature +is marked as enabled for the Apple Cocoa ports. + 2017-07-08 Chris Dumez Simplify WebResourceLoadStatisticsStore / ResourceLoadStatisticsStore Modified: trunk/Tools/Scripts/webkitperl/FeatureList.pm (219285 => 219286) --- trunk/Tools/Scripts/webkitperl/FeatureList.pm 2017-07-10 02:34:55 UTC (rev 219285) +++ trunk/Tools/Scripts/webkitperl/FeatureList.pm 2017-07-10 05:58:57 UTC (rev 219286) @@ -139,6 +139,7 @@ $webTimingSupport, $writableStreamAPISupport, $webglSupport, +$webgl2Support, $xsltSupport, ); @@ -400,6 +401,9 @@ { option => "webgl", desc => "Toggle WebGL support", define => "ENABLE_WEBGL", default => (isAppleCocoaWebKit() || isGtk() || isWPE()), value => \$webglSupport }, +{ option => "webgl2", desc => "Toggle WebGL2 support", + define => "ENABLE_WEBGL2", default => isAppleCocoaWebKit(), value => \$webgl2Support }, + { option => "writableStreamAPI", desc => "Toggle WritableStream API support", define => "ENABLE_WRITABLE_STREAM_API", default => 1, value => \$writableStreamAPISupport }, ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [219285] trunk/Source/JavaScriptCore
Title: [219285] trunk/Source/_javascript_Core Revision 219285 Author utatane@gmail.com Date 2017-07-09 19:34:55 -0700 (Sun, 09 Jul 2017) Log Message [JSC] Drop LineNumberAdder since we no longer treat (not ) as one line terminator https://bugs.webkit.org/show_bug.cgi?id=174296 Reviewed by Mark Lam. Previously, we treat as one line terminator. So we increase line number by one. It caused a problem in scanning template literals. While template literals normalize to , we still needed to increase line number by only one. To handle it correctly, LineNumberAdder is introduced. As of r219263, is counted as two line terminators. So we do not need to have LineNumberAdder. Let's just use shiftLineTerminator() instead. * parser/Lexer.cpp: (JSC::Lexer::parseTemplateLiteral): (JSC::LineNumberAdder::LineNumberAdder): Deleted. (JSC::LineNumberAdder::clear): Deleted. (JSC::LineNumberAdder::add): Deleted. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/parser/Lexer.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (219284 => 219285) --- trunk/Source/_javascript_Core/ChangeLog 2017-07-10 02:18:56 UTC (rev 219284) +++ trunk/Source/_javascript_Core/ChangeLog 2017-07-10 02:34:55 UTC (rev 219285) @@ -1,3 +1,24 @@ +2017-07-09 Yusuke Suzuki+ +[JSC] Drop LineNumberAdder since we no longer treat (not ) as one line terminator +https://bugs.webkit.org/show_bug.cgi?id=174296 + +Reviewed by Mark Lam. + +Previously, we treat as one line terminator. So we increase line number by one. +It caused a problem in scanning template literals. While template literals normalize + to , we still needed to increase line number by only one. +To handle it correctly, LineNumberAdder is introduced. + +As of r219263, is counted as two line terminators. So we do not need to have +LineNumberAdder. Let's just use shiftLineTerminator() instead. + +* parser/Lexer.cpp: +(JSC::Lexer::parseTemplateLiteral): +(JSC::LineNumberAdder::LineNumberAdder): Deleted. +(JSC::LineNumberAdder::clear): Deleted. +(JSC::LineNumberAdder::add): Deleted. + 2017-07-09 Dan Bernstein [Xcode] ICU headers aren’t treated as system headers after r219155 Modified: trunk/Source/_javascript_Core/parser/Lexer.cpp (219284 => 219285) --- trunk/Source/_javascript_Core/parser/Lexer.cpp 2017-07-10 02:18:56 UTC (rev 219284) +++ trunk/Source/_javascript_Core/parser/Lexer.cpp 2017-07-10 02:34:55 UTC (rev 219285) @@ -1375,54 +1375,6 @@ return StringParsedSuccessfully; } -// While the lexer accepts (not ) sequence -// as one line terminator and increments one line number, -// TemplateLiteral considers it as two line terminators and . -// -// TemplateLiteral normalizes line terminators as follows. -// -// => -// => -// => -// <\u2028> => <\u2028> -// <\u2029> => <\u2029> -// -// So, should be normalized to . -// However, the lexer should increment the line number only once for . -// -// To achieve this, LineNumberAdder holds the current status of line terminator sequence. -// When TemplateLiteral lexer encounters a line terminator, it notifies to LineNumberAdder. -// LineNumberAdder maintains the status and increments the line number when it's necessary. -// For example, LineNumberAdder increments the line number only once for and . -template -class LineNumberAdder { -public: -LineNumberAdder(int& lineNumber) -: m_lineNumber(lineNumber) -{ -} - -void clear() -{ -m_previous = 0; -} - -void add(CharacterType character) -{ -ASSERT(Lexer::isLineTerminator(character)); -if (m_previous == '\r' && character == '\n') -m_previous = 0; -else { -++m_lineNumber; -m_previous = character; -} -} - -private: -int& m_lineNumber; -CharacterType m_previous { 0 }; -}; - template typename Lexer::StringParseResult Lexer::parseTemplateLiteral(JSTokenData* tokenData, RawStringsBuildMode rawStringsBuildMode) { @@ -1430,11 +1382,8 @@ const T* stringStart = currentSourcePtr(); const T* rawStringStart = currentSourcePtr(); -LineNumberAdder lineNumberAdder(m_lineNumber); - while (m_current != '`') { if (UNLIKELY(m_current == '\\')) { -lineNumberAdder.clear(); if (stringStart != currentSourcePtr()) append16(stringStart, currentSourcePtr() - stringStart); shift(); @@ -1455,18 +1404,10 @@ m_bufferForRawTemplateString16.append('\n'); } -lineNumberAdder.add(m_current); -shift(); -if (m_current == '\n') { -lineNumberAdder.add(m_current); -shift(); -} - +
[webkit-changes] [219284] trunk
Title: [219284] trunk Revision 219284 Author bfulg...@apple.com Date 2017-07-09 19:18:56 -0700 (Sun, 09 Jul 2017) Log Message Resource Load Statistics: User interaction should always go to top document https://bugs.webkit.org/show_bug.cgi?id=174120 Patch by John Wilanderon 2017-07-08 Reviewed by Chris Dumez. Source/WebCore: Test: http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame.html * dom/UserGestureIndicator.cpp: (WebCore::UserGestureIndicator::UserGestureIndicator): Now logs user interaction for the top document. * loader/ResourceLoadObserver.cpp: (WebCore::ResourceLoadObserver::setThrottledObserverNotifications): Test infrastructure. (WebCore::ResourceLoadObserver::setNotificationCallback): Callback now takes a ResourceLoadObserver::NotificationType. (WebCore::ResourceLoadObserver::logFrameNavigation): Submits the configured ResourceLoadObserver::NotificationType. (WebCore::ResourceLoadObserver::logSubresourceLoading): Submits the configured ResourceLoadObserver::NotificationType. (WebCore::ResourceLoadObserver::logWebSocketLoading): Submits the configured ResourceLoadObserver::NotificationType. (WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution): Submits the configured ResourceLoadObserver::NotificationType. * loader/ResourceLoadObserver.h: * testing/Internals.cpp: (WebCore::Internals::resetToConsistentState): Resets to throttled notifications. (WebCore::Internals::setResourceLoadStatisticsThrottledObserverNotifications): Test infrastructure. * testing/Internals.h: * testing/Internals.idl: Added internals.setResourceLoadStatisticsThrottledObserverNotifications(). LayoutTests: * http/tests/loading/resourceLoadStatistics/resources/dummy.html: Added. * http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame-expected.txt: Added. * http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame.html: Added. * platform/mac-wk2/TestExpectations: Added as [ Pass ]. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-wk2/TestExpectations trunk/LayoutTests/platform/mac-wk2/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/UserGestureIndicator.cpp trunk/Source/WebCore/loader/ResourceLoadObserver.cpp trunk/Source/WebCore/loader/ResourceLoadObserver.h trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl Added Paths trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/dummy.html trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame-expected.txt trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame.html Diff Modified: trunk/LayoutTests/ChangeLog (219283 => 219284) --- trunk/LayoutTests/ChangeLog 2017-07-09 21:26:15 UTC (rev 219283) +++ trunk/LayoutTests/ChangeLog 2017-07-10 02:18:56 UTC (rev 219284) @@ -1,3 +1,17 @@ +2017-07-08 John Wilander + +Resource Load Statistics: User interaction should always go to top document +https://bugs.webkit.org/show_bug.cgi?id=174120 + + +Reviewed by Chris Dumez. + +* http/tests/loading/resourceLoadStatistics/resources/dummy.html: Added. +* http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame-expected.txt: Added. +* http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame.html: Added. +* platform/mac-wk2/TestExpectations: +Added as [ Pass ]. + 2017-07-08 Antoine Quint REGRESSION: "visibility:hidden" does not hide play button for video elements Added: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/dummy.html (0 => 219284) --- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/dummy.html (rev 0) +++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/resources/dummy.html 2017-07-10 02:18:56 UTC (rev 219284) @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file Added: trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame-expected.txt (0 => 219284) --- trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/loading/resourceLoadStatistics/user-interaction-in-cross-origin-sub-frame-expected.txt 2017-07-10 02:18:56 UTC (rev 219284) @@ -0,0 +1,24 @@ +main frame - didStartProvisionalLoadForFrame +main frame - didCommitLoadForFrame +frame "testFrame" - didStartProvisionalLoadForFrame +main frame - didFinishDocumentLoadForFrame +frame "testFrame" - didCommitLoadForFrame +frame "testFrame" - didFinishDocumentLoadForFrame
[webkit-changes] [219283] trunk/Source
Title: [219283] trunk/Source Revision 219283 Author beid...@apple.com Date 2017-07-09 14:26:15 -0700 (Sun, 09 Jul 2017) Log Message Remove some obsolete WebKitVersionChecks. https://bugs.webkit.org/show_bug.cgi?id=174294 Reviewed by Dan Bernstein. Source/WebCore: No new tests (No change to testable behavior) * dom/ScriptExecutionContext.cpp: (WebCore::ScriptExecutionContext::dispatchErrorEvent): * page/Settings.in: * platform/RuntimeApplicationChecks.h: * platform/cocoa/RuntimeApplicationChecksCocoa.mm: (WebCore::IOSApplication::isOkCupid): Deleted. (WebCore::IOSApplication::isFacebook): Deleted. * rendering/RenderBox.cpp: (WebCore::RenderBox::layoutOverflowRectForPropagation): Source/WebKit/ios: * WebView/WebPDFViewIOS.mm: (-[WebPDFView drawPage:]): Source/WebKit/mac: * Misc/WebKitVersionChecks.h: * WebView/WebHTMLView.mm: (-[WebHTMLView hitTest:]): * WebView/WebView.mm: (shouldRespectPriorityInCSSAttributeSetters): (-[WebView _commonInitializationWithFrameName:groupName:]): (-[WebView _preferencesChanged:]): (shouldTransformsAffectOverflow): Deleted. (shouldDispatchJavaScriptWindowOnErrorEvents): Deleted. Source/WebKit2: * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updatePreferences): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ScriptExecutionContext.cpp trunk/Source/WebCore/page/Settings.in trunk/Source/WebCore/platform/RuntimeApplicationChecks.h trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm trunk/Source/WebCore/rendering/RenderBox.cpp trunk/Source/WebKit/ios/ChangeLog trunk/Source/WebKit/ios/WebView/WebPDFViewIOS.mm trunk/Source/WebKit/mac/ChangeLog trunk/Source/WebKit/mac/Misc/WebKitVersionChecks.h trunk/Source/WebKit/mac/WebView/WebHTMLView.mm trunk/Source/WebKit/mac/WebView/WebView.mm trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (219282 => 219283) --- trunk/Source/WebCore/ChangeLog 2017-07-09 20:19:47 UTC (rev 219282) +++ trunk/Source/WebCore/ChangeLog 2017-07-09 21:26:15 UTC (rev 219283) @@ -1,3 +1,25 @@ +2017-07-09 Brady Eidson+ +Remove some obsolete WebKitVersionChecks. +https://bugs.webkit.org/show_bug.cgi?id=174294 + +Reviewed by Dan Bernstein. + +No new tests (No change to testable behavior) + +* dom/ScriptExecutionContext.cpp: +(WebCore::ScriptExecutionContext::dispatchErrorEvent): + +* page/Settings.in: + +* platform/RuntimeApplicationChecks.h: +* platform/cocoa/RuntimeApplicationChecksCocoa.mm: +(WebCore::IOSApplication::isOkCupid): Deleted. +(WebCore::IOSApplication::isFacebook): Deleted. + +* rendering/RenderBox.cpp: +(WebCore::RenderBox::layoutOverflowRectForPropagation): + 2017-07-08 Brady Eidson Remove some obsolete RuntimeApplicationChecks. Modified: trunk/Source/WebCore/dom/ScriptExecutionContext.cpp (219282 => 219283) --- trunk/Source/WebCore/dom/ScriptExecutionContext.cpp 2017-07-09 20:19:47 UTC (rev 219282) +++ trunk/Source/WebCore/dom/ScriptExecutionContext.cpp 2017-07-09 21:26:15 UTC (rev 219283) @@ -417,13 +417,6 @@ if (!target) return false; -#if PLATFORM(IOS) -if (target->toDOMWindow() && is(*this)) { -if (!downcast(*this).settings().shouldDispatchJavaScriptWindowOnErrorEvents()) -return false; -} -#endif - String message = errorMessage; int line = lineNumber; int column = columnNumber; Modified: trunk/Source/WebCore/page/Settings.in (219282 => 219283) --- trunk/Source/WebCore/page/Settings.in 2017-07-09 20:19:47 UTC (rev 219282) +++ trunk/Source/WebCore/page/Settings.in 2017-07-09 21:26:15 UTC (rev 219283) @@ -224,8 +224,6 @@ standalone initial=false telephoneNumberParsingEnabled initial=false mediaDataLoadsAutomatically initial=defaultMediaDataLoadsAutomatically -shouldTransformsAffectOverflow initial=true -shouldDispatchJavaScriptWindowOnErrorEvents initial=false alwaysUseAcceleratedOverflowScroll initial=false imageControlsEnabled initial=false, conditional=SERVICE_CONTROLS Modified: trunk/Source/WebCore/platform/RuntimeApplicationChecks.h (219282 => 219283) --- trunk/Source/WebCore/platform/RuntimeApplicationChecks.h 2017-07-09 20:19:47 UTC (rev 219282) +++ trunk/Source/WebCore/platform/RuntimeApplicationChecks.h 2017-07-09 21:26:15 UTC (rev 219283) @@ -71,8 +71,6 @@ bool isDumpRenderTree(); bool isMobileStore(); WEBCORE_EXPORT bool isWebApp(); -WEBCORE_EXPORT bool isOkCupid(); -WEBCORE_EXPORT bool isFacebook(); WEBCORE_EXPORT bool isWebProcess(); bool isIBooks(); WEBCORE_EXPORT bool isTheSecretSocietyHiddenMystery(); Modified: trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm (219282 => 219283) --- trunk/Source/WebCore/platform/cocoa/RuntimeApplicationChecksCocoa.mm 2017-07-09 20:19:47 UTC (rev 219282) +++
[webkit-changes] [219282] trunk/Source/JavaScriptCore
Title: [219282] trunk/Source/_javascript_Core Revision 219282 Author m...@apple.com Date 2017-07-09 13:19:47 -0700 (Sun, 09 Jul 2017) Log Message [Xcode] ICU headers aren’t treated as system headers after r219155 https://bugs.webkit.org/show_bug.cgi?id=174299 Reviewed by Sam Weinig. * Configurations/_javascript_Core.xcconfig: Pass --system-header-prefix=unicode/ to the C and C++ compilers. Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig trunk/Source/_javascript_Core/runtime/IntlCollator.cpp trunk/Source/_javascript_Core/runtime/IntlDateTimeFormat.cpp trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp trunk/Source/_javascript_Core/runtime/StringPrototype.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (219281 => 219282) --- trunk/Source/_javascript_Core/ChangeLog 2017-07-09 12:22:58 UTC (rev 219281) +++ trunk/Source/_javascript_Core/ChangeLog 2017-07-09 20:19:47 UTC (rev 219282) @@ -1,3 +1,18 @@ +2017-07-09 Dan Bernstein+ +[Xcode] ICU headers aren’t treated as system headers after r219155 +https://bugs.webkit.org/show_bug.cgi?id=174299 + +Reviewed by Sam Weinig. + +* Configurations/_javascript_Core.xcconfig: Pass --system-header-prefix=unicode/ to the C and + C++ compilers. + +* runtime/IntlCollator.cpp: Removed documentation warning suppression. +* runtime/IntlDateTimeFormat.cpp: Ditto. +* runtime/JSGlobalObject.cpp: Ditto. +* runtime/StringPrototype.cpp: Ditto. + 2017-07-09 Yusuke Suzuki [JSC] Use fastMalloc / fastFree for STL containers Modified: trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig (219281 => 219282) --- trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig 2017-07-09 12:22:58 UTC (rev 219281) +++ trunk/Source/_javascript_Core/Configurations/_javascript_Core.xcconfig 2017-07-09 20:19:47 UTC (rev 219282) @@ -47,6 +47,8 @@ GCC_PREFIX_HEADER = _javascript_CorePrefix.h; GCC_SYMBOLS_PRIVATE_EXTERN = YES; +OTHER_CFLAGS = $(inherited) --system-header-prefix=unicode/; +OTHER_CPLUSPLUSFLAGS = $(inherited) --system-header-prefix=unicode/; HEADER_SEARCH_PATHS = "${BUILT_PRODUCTS_DIR}/DerivedSources/_javascript_Core" $(HEADER_SEARCH_PATHS); INFOPLIST_FILE = Info.plist; INSTALL_PATH = $(_javascript_CORE_FRAMEWORKS_DIR); Modified: trunk/Source/_javascript_Core/runtime/IntlCollator.cpp (219281 => 219282) --- trunk/Source/_javascript_Core/runtime/IntlCollator.cpp 2017-07-09 12:22:58 UTC (rev 219281) +++ trunk/Source/_javascript_Core/runtime/IntlCollator.cpp 2017-07-09 20:19:47 UTC (rev 219282) @@ -39,14 +39,7 @@ #include "ObjectConstructor.h" #include "SlotVisitorInlines.h" #include "StructureInlines.h" -#if COMPILER(CLANG) -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdocumentation" -#endif #include -#if COMPILER(CLANG) -#pragma clang diagnostic pop -#endif #include namespace JSC { Modified: trunk/Source/_javascript_Core/runtime/IntlDateTimeFormat.cpp (219281 => 219282) --- trunk/Source/_javascript_Core/runtime/IntlDateTimeFormat.cpp 2017-07-09 12:22:58 UTC (rev 219281) +++ trunk/Source/_javascript_Core/runtime/IntlDateTimeFormat.cpp 2017-07-09 20:19:47 UTC (rev 219282) @@ -37,14 +37,7 @@ #include "JSCInlines.h" #include "ObjectConstructor.h" #include -#if COMPILER(CLANG) -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdocumentation" -#endif #include -#if COMPILER(CLANG) -#pragma clang diagnostic pop -#endif #include #include Modified: trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp (219281 => 219282) --- trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp 2017-07-09 12:22:58 UTC (rev 219281) +++ trunk/Source/_javascript_Core/runtime/JSGlobalObject.cpp 2017-07-09 20:19:47 UTC (rev 219282) @@ -169,14 +169,7 @@ #if ENABLE(INTL) #include "IntlObject.h" -#if COMPILER(CLANG) -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdocumentation" -#endif #include -#if COMPILER(CLANG) -#pragma clang diagnostic pop -#endif #include #include #endif // ENABLE(INTL) Modified: trunk/Source/_javascript_Core/runtime/StringPrototype.cpp (219281 => 219282) --- trunk/Source/_javascript_Core/runtime/StringPrototype.cpp 2017-07-09 12:22:58 UTC (rev 219281) +++ trunk/Source/_javascript_Core/runtime/StringPrototype.cpp 2017-07-09 20:19:47 UTC (rev 219282) @@ -46,14 +46,7 @@ #include "SuperSampler.h" #include #include -#if COMPILER(CLANG) -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wdocumentation" -#endif #include -#if COMPILER(CLANG) -#pragma clang diagnostic pop -#endif #include #include #include ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [219281] trunk/Source
Title: [219281] trunk/Source Revision 219281 Author utatane@gmail.com Date 2017-07-09 05:22:58 -0700 (Sun, 09 Jul 2017) Log Message [JSC] Use fastMalloc / fastFree for STL containers https://bugs.webkit.org/show_bug.cgi?id=174297 Reviewed by Sam Weinig. Source/_javascript_Core: In some places, we intentionally use STL containers over WTF containers. For example, we sometimes use std::unordered_{set,map} instead of WTF::Hash{Set,Map} because we do not have effective empty / deleted representations in the space of key's value. But just using STL container means using libc's malloc instead of our fast malloc (bmalloc if it is enabled). We introduce WTF::FastAllocator. This is C++ allocator implementation using fastMalloc and fastFree. We specify this allocator to STL containers' template parameter to allocate memory from fastMalloc. This WTF::FastAllocator gives us a chance to use STL containers if it is necessary without compromising memory allocation throughput. * dfg/DFGGraph.h: * dfg/DFGIntegerCheckCombiningPhase.cpp: * ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::switchStringSlow): * runtime/FunctionHasExecutedCache.h: * runtime/TypeLocationCache.h: Source/WTF: * wtf/FastMalloc.h: (WTF::FastAllocator::FastAllocator): (WTF::FastAllocator::allocate): (WTF::FastAllocator::deallocate): (WTF::FastAllocator::operator==): (WTF::FastAllocator::operator!=): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/dfg/DFGGraph.h trunk/Source/_javascript_Core/dfg/DFGIntegerCheckCombiningPhase.cpp trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp trunk/Source/_javascript_Core/runtime/FunctionHasExecutedCache.h trunk/Source/_javascript_Core/runtime/TypeLocationCache.h trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/FastMalloc.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (219280 => 219281) --- trunk/Source/_javascript_Core/ChangeLog 2017-07-09 05:05:41 UTC (rev 219280) +++ trunk/Source/_javascript_Core/ChangeLog 2017-07-09 12:22:58 UTC (rev 219281) @@ -1,3 +1,28 @@ +2017-07-09 Yusuke Suzuki+ +[JSC] Use fastMalloc / fastFree for STL containers +https://bugs.webkit.org/show_bug.cgi?id=174297 + +Reviewed by Sam Weinig. + +In some places, we intentionally use STL containers over WTF containers. +For example, we sometimes use std::unordered_{set,map} instead of WTF::Hash{Set,Map} +because we do not have effective empty / deleted representations in the space of key's value. +But just using STL container means using libc's malloc instead of our fast malloc (bmalloc if it is enabled). + +We introduce WTF::FastAllocator. This is C++ allocator implementation using fastMalloc and fastFree. +We specify this allocator to STL containers' template parameter to allocate memory from fastMalloc. + +This WTF::FastAllocator gives us a chance to use STL containers if it is necessary +without compromising memory allocation throughput. + +* dfg/DFGGraph.h: +* dfg/DFGIntegerCheckCombiningPhase.cpp: +* ftl/FTLLowerDFGToB3.cpp: +(JSC::FTL::DFG::LowerDFGToB3::switchStringSlow): +* runtime/FunctionHasExecutedCache.h: +* runtime/TypeLocationCache.h: + 2017-07-08 Yusuke Suzuki Drop NOSNIFF compile flag Modified: trunk/Source/_javascript_Core/dfg/DFGGraph.h (219280 => 219281) --- trunk/Source/_javascript_Core/dfg/DFGGraph.h 2017-07-09 05:05:41 UTC (rev 219280) +++ trunk/Source/_javascript_Core/dfg/DFGGraph.h 2017-07-09 12:22:58 UTC (rev 219281) @@ -997,7 +997,7 @@ HashMap m_copiedStrings; #if USE(JSVALUE32_64) -std::unordered_map m_doubleConstantsMap; +std::unordered_map > m_doubleConstantsMap; std::unique_ptr m_doubleConstants; #endif Modified: trunk/Source/_javascript_Core/dfg/DFGIntegerCheckCombiningPhase.cpp (219280 => 219281) --- trunk/Source/_javascript_Core/dfg/DFGIntegerCheckCombiningPhase.cpp 2017-07-09 05:05:41 UTC (rev 219280) +++ trunk/Source/_javascript_Core/dfg/DFGIntegerCheckCombiningPhase.cpp 2017-07-09 12:22:58 UTC (rev 219281) @@ -396,7 +396,7 @@ nodeIndex, origin, jsNumber(addend), source.useKind())); } -typedef std::unordered_map RangeMap; +using RangeMap = std::unordered_map >; RangeMap m_map; InsertionSet m_insertionSet; Modified: trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp (219280 => 219281) --- trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp 2017-07-09 05:05:41 UTC (rev 219280) +++ trunk/Source/_javascript_Core/ftl/FTLLowerDFGToB3.cpp 2017-07-09 12:22:58 UTC (rev 219281) @@ -11849,7 +11849,8 @@ StringJumpTable& table =