[iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources
https://bugs.webkit.org/show_bug.cgi?id=139921

Reviewed by Gavin Barraclough and Alexey Proskuryakov.

Source/WebCore:

Log better using FeatureCounter why PageCache is failing due to pruned
resources. In particular, we now distinguish if the resource was pruned
due to:
- Memory pressure
- Page cache capacity reached
- WebProcess suspended (WK2)

* WebCore.exp.in:
* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
* history/HistoryItem.h:
* history/PageCache.cpp:
(WebCore::PageCache::pruneToCapacityNow):
(WebCore::PageCache::setCapacity):
(WebCore::pruningReasonToFeatureCounterKey):
(WebCore::PageCache::add):
(WebCore::PageCache::take):
(WebCore::PageCache::get):
(WebCore::PageCache::prune):
* history/PageCache.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
* platform/FeatureCounterKeys.h:
* platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::releaseCriticalMemory):

Source/WebKit2:

Call PageCache::pruneToCapacityNow() instead of multiple calls to
setCapacity() as it does exactly what we want. Also pass the new
PrunedReason argument so help us do better logging.

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::releasePageCache):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177738 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Bring the state of WEBCORE_EXPORT annotations closer to what the exports file specifies.
https://bugs.webkit.org/show_bug.cgi?id=136172

Reviewed by Darin Adler.

* bridge/NP_jsobject.cpp: Give functions from npruntime_impl.h defined in this file default
using a compiler pragma, in lieu of introducing WebCore-specific macros into that header.
* bridge/npruntime.cpp: Ditto.

* platform/mac/WebCoreSystemInterface.mm: Similarly for WebCoreSystemInterface.h.

Added or removed WEBCORE_EXPORT in these files as necessary to match what is currently in
the exports file:

* Modules/mediasource/SourceBuffer.h:
* bindings/js/JSDOMBinding.h:
* css/CSSComputedStyleDeclaration.h:
* dom/ContainerNode.h:
* dom/Document.h:
* dom/MouseEvent.h:
* dom/Range.h:
* dom/SecurityContext.h:
* editing/Editor.h:
* editing/mac/DictionaryLookup.h:
* loader/FrameLoaderClient.h:
* loader/LoaderStrategy.h:
* loader/icon/IconDatabaseBase.h:
* page/ChromeClient.h:
* page/EventHandler.h:
* page/FrameSnapshotting.h:
* page/Page.h:
* page/PageOverlay.h:
* page/PageOverlayController.h:
* page/TextIndicator.h:
* page/UserContentController.h:
* page/WheelEventDeltaTracker.h:
* page/mac/TextIndicatorWindow.h:
* platform/DatabaseStrategy.h:
* platform/ScrollableArea.h:
* platform/SuddenTermination.h:
* platform/URL.h:
* platform/animation/Animation.h:
* platform/cocoa/MachSendRight.h:
* platform/graphics/FloatRoundedRect.h:
* platform/graphics/GraphicsContext.h:
* platform/graphics/GraphicsLayer.h:
* platform/graphics/Path.h:
* platform/graphics/TextRun.h:
* platform/graphics/ca/TileController.h:
* platform/graphics/cocoa/IOSurface.h:
* platform/graphics/mac/ColorMac.h:
* platform/mac/SoftLinking.h:
* platform/mac/WebCoreNSStringExtras.h:
* platform/mock/mediasource/MockMediaPlayerMediaSource.h:
* platform/network/BlobRegistry.h:
* platform/network/ResourceRequestBase.h:
* platform/network/ResourceResponseBase.h:
* rendering/HitTestResult.h:
* rendering/RenderInline.h:
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
* rendering/RenderView.h:
* storage/StorageNamespaceImpl.h:
* storage/StorageNamespaceProvider.h:
* testing/Internals.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177739 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Try to fix the Windows build after r177733.

* wtf/Ref.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@177740 268f45cc-cd09-0410-ab3c-d52691b4dbfc