Title: [249025] trunk/Source/WebCore
Revision
249025
Author
[email protected]
Date
2019-08-22 12:25:48 -0700 (Thu, 22 Aug 2019)

Log Message

Make ImageBuffer and SVG's FilterData isoheap'ed
https://bugs.webkit.org/show_bug.cgi?id=201029

Reviewed by Simon Fraser.

Made ImageBuffer and RenderSVGResourceFilter use IsoHeap.

* platform/graphics/ImageBuffer.cpp:
* platform/graphics/ImageBuffer.h:
* rendering/svg/RenderSVGResourceFilter.cpp:
* rendering/svg/RenderSVGResourceFilter.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (249024 => 249025)


--- trunk/Source/WebCore/ChangeLog	2019-08-22 19:09:55 UTC (rev 249024)
+++ trunk/Source/WebCore/ChangeLog	2019-08-22 19:25:48 UTC (rev 249025)
@@ -1,3 +1,17 @@
+2019-08-22  Ryosuke Niwa  <[email protected]>
+
+        Make ImageBuffer and SVG's FilterData isoheap'ed
+        https://bugs.webkit.org/show_bug.cgi?id=201029
+
+        Reviewed by Simon Fraser.
+
+        Made ImageBuffer and RenderSVGResourceFilter use IsoHeap.
+
+        * platform/graphics/ImageBuffer.cpp:
+        * platform/graphics/ImageBuffer.h:
+        * rendering/svg/RenderSVGResourceFilter.cpp:
+        * rendering/svg/RenderSVGResourceFilter.h:
+
 2019-08-22  Adrian Perez de Castro  <[email protected]>
 
         [GTK][WPE] Fixes for non-unified builds after r248547

Modified: trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp (249024 => 249025)


--- trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp	2019-08-22 19:09:55 UTC (rev 249024)
+++ trunk/Source/WebCore/platform/graphics/ImageBuffer.cpp	2019-08-22 19:25:48 UTC (rev 249025)
@@ -31,6 +31,7 @@
 #include "ColorUtilities.h"
 #include "GraphicsContext.h"
 #include "IntRect.h"
+#include <wtf/IsoMallocInlines.h>
 #include <wtf/MathExtras.h>
 
 namespace WebCore {
@@ -38,6 +39,8 @@
 static const float MaxClampedLength = 4096;
 static const float MaxClampedArea = MaxClampedLength * MaxClampedLength;
 
+WTF_MAKE_ISO_ALLOCATED_IMPL(ImageBuffer);
+
 std::unique_ptr<ImageBuffer> ImageBuffer::create(const FloatSize& size, RenderingMode renderingMode, float resolutionScale, ColorSpace colorSpace, const HostWindow* hostWindow)
 {
     bool success = false;

Modified: trunk/Source/WebCore/platform/graphics/ImageBuffer.h (249024 => 249025)


--- trunk/Source/WebCore/platform/graphics/ImageBuffer.h	2019-08-22 19:09:55 UTC (rev 249024)
+++ trunk/Source/WebCore/platform/graphics/ImageBuffer.h	2019-08-22 19:25:48 UTC (rev 249025)
@@ -37,6 +37,7 @@
 #include <_javascript_Core/Uint8ClampedArray.h>
 #include <memory>
 #include <wtf/Forward.h>
+#include <wtf/IsoMalloc.h>
 #include <wtf/RefPtr.h>
 #include <wtf/Vector.h>
 
@@ -62,7 +63,8 @@
 };
 
 class ImageBuffer {
-    WTF_MAKE_NONCOPYABLE(ImageBuffer); WTF_MAKE_FAST_ALLOCATED;
+    WTF_MAKE_ISO_ALLOCATED_EXPORT(ImageBuffer, WEBCORE_EXPORT);
+    WTF_MAKE_NONCOPYABLE(ImageBuffer);
     friend class IOSurface;
 public:
     // Will return a null pointer on allocation failure.

Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp (249024 => 249025)


--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp	2019-08-22 19:09:55 UTC (rev 249024)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.cpp	2019-08-22 19:25:48 UTC (rev 249025)
@@ -45,6 +45,7 @@
 
 namespace WebCore {
 
+WTF_MAKE_ISO_ALLOCATED_IMPL(FilterData);
 WTF_MAKE_ISO_ALLOCATED_IMPL(RenderSVGResourceFilter);
 
 RenderSVGResourceFilter::RenderSVGResourceFilter(SVGFilterElement& element, RenderStyle&& style)

Modified: trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.h (249024 => 249025)


--- trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.h	2019-08-22 19:09:55 UTC (rev 249024)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGResourceFilter.h	2019-08-22 19:25:48 UTC (rev 249025)
@@ -29,12 +29,13 @@
 #include "SVGFilterBuilder.h"
 #include "SVGFilterElement.h"
 #include "SVGUnitTypes.h"
+#include <wtf/IsoMalloc.h>
 #include <wtf/RefPtr.h>
 
 namespace WebCore {
 
 struct FilterData {
-    WTF_MAKE_FAST_ALLOCATED;
+    WTF_MAKE_ISO_ALLOCATED(FilterData);
     WTF_MAKE_NONCOPYABLE(FilterData);
 public:
     enum FilterDataState { PaintingSource, Applying, Built, CycleDetected, MarkedForRemoval };
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to