[webkit-changes] [219286] trunk/Tools

2017-07-09 Thread zandobersek
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

2017-07-09 Thread utatane . tea
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

2017-07-09 Thread bfulgham
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 Wilander  on 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

2017-07-09 Thread beidson
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

2017-07-09 Thread mitz
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

2017-07-09 Thread utatane . tea
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 =