Mark more classes as fast allocated
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 30 Jul 2015 16:25:36 +0000 (16:25 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 30 Jul 2015 16:25:36 +0000 (16:25 +0000)
https://bugs.webkit.org/show_bug.cgi?id=147440

Reviewed by Sam Weinig.

Mark more classes as fast allocated for performance. We heap-allocate
objects of those types throughout the code base.

Source/JavaScriptCore:

* API/JSCallbackObject.h:
* API/ObjCCallbackFunction.mm:
* bytecode/BytecodeKills.h:
* bytecode/BytecodeLivenessAnalysis.h:
* bytecode/CallLinkStatus.h:
* bytecode/FullBytecodeLiveness.h:
* bytecode/SamplingTool.h:
* bytecompiler/BytecodeGenerator.h:
* dfg/DFGBasicBlock.h:
* dfg/DFGBlockMap.h:
* dfg/DFGInPlaceAbstractState.h:
* dfg/DFGThreadData.h:
* heap/HeapVerifier.h:
* heap/SlotVisitor.h:
* parser/Lexer.h:
* runtime/ControlFlowProfiler.h:
* runtime/TypeProfiler.h:
* runtime/TypeProfilerLog.h:
* runtime/Watchdog.h:

Source/WebCore:

* editing/Editor.h:
* history/CachedFrame.h:
* history/CachedPage.h:
* html/parser/HTMLResourcePreloader.h:
* loader/PolicyChecker.h:
* loader/SubresourceLoader.h:
* loader/cache/CachedResource.h:
* page/animation/AnimationController.h:
* page/scrolling/ScrollingConstraints.h:
* page/scrolling/ScrollingStateTree.h:
* platform/graphics/Font.h:
* platform/graphics/GraphicsLayerUpdater.h:
* rendering/FilterEffectRenderer.h:
* rendering/ImageQualityController.h:
* rendering/RenderLayerFilterInfo.h:
* rendering/SimpleLineLayoutResolver.h:
* rendering/shapes/RasterShape.h:
* rendering/shapes/Shape.h:

Source/WebKit2:

* NetworkProcess/cache/NetworkCacheStorage.cpp:
* NetworkProcess/cache/NetworkCacheStorage.h:
* Platform/IPC/MessageRecorder.h:
* Platform/mac/LayerHostingContext.h:

Source/WTF:

* wtf/Bag.h:
* wtf/SegmentedVector.h:
* wtf/SentinelLinkedList.h:

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

48 files changed:
Source/JavaScriptCore/API/JSCallbackObject.h
Source/JavaScriptCore/API/ObjCCallbackFunction.mm
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/bytecode/BytecodeKills.h
Source/JavaScriptCore/bytecode/BytecodeLivenessAnalysis.h
Source/JavaScriptCore/bytecode/CallLinkStatus.h
Source/JavaScriptCore/bytecode/FullBytecodeLiveness.h
Source/JavaScriptCore/bytecode/SamplingTool.h
Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
Source/JavaScriptCore/dfg/DFGBasicBlock.h
Source/JavaScriptCore/dfg/DFGBlockMap.h
Source/JavaScriptCore/dfg/DFGInPlaceAbstractState.h
Source/JavaScriptCore/dfg/DFGThreadData.h
Source/JavaScriptCore/heap/HeapVerifier.h
Source/JavaScriptCore/heap/SlotVisitor.h
Source/JavaScriptCore/parser/Lexer.h
Source/JavaScriptCore/runtime/ControlFlowProfiler.h
Source/JavaScriptCore/runtime/TypeProfiler.h
Source/JavaScriptCore/runtime/TypeProfilerLog.h
Source/JavaScriptCore/runtime/Watchdog.h
Source/WTF/ChangeLog
Source/WTF/wtf/Bag.h
Source/WTF/wtf/SegmentedVector.h
Source/WTF/wtf/SentinelLinkedList.h
Source/WebCore/ChangeLog
Source/WebCore/editing/Editor.h
Source/WebCore/history/CachedFrame.h
Source/WebCore/history/CachedPage.h
Source/WebCore/html/parser/HTMLResourcePreloader.h
Source/WebCore/loader/PolicyChecker.h
Source/WebCore/loader/SubresourceLoader.h
Source/WebCore/loader/cache/CachedResource.h
Source/WebCore/page/animation/AnimationController.h
Source/WebCore/page/scrolling/ScrollingConstraints.h
Source/WebCore/page/scrolling/ScrollingStateTree.h
Source/WebCore/platform/graphics/Font.h
Source/WebCore/platform/graphics/GraphicsLayerUpdater.h
Source/WebCore/rendering/FilterEffectRenderer.h
Source/WebCore/rendering/ImageQualityController.h
Source/WebCore/rendering/RenderLayerFilterInfo.h
Source/WebCore/rendering/SimpleLineLayoutResolver.h
Source/WebCore/rendering/shapes/RasterShape.h
Source/WebCore/rendering/shapes/Shape.h
Source/WebKit2/ChangeLog
Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp
Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h
Source/WebKit2/Platform/IPC/MessageRecorder.h
Source/WebKit2/Platform/mac/LayerHostingContext.h

index 33b4262..a1a77fd 100644 (file)
@@ -79,6 +79,8 @@ public:
     void* privateData;
     JSClassRef jsClass;
     struct JSPrivatePropertyMap {
+        WTF_MAKE_FAST_ALLOCATED;
+    public:
         JSValue getPrivateProperty(const Identifier& propertyName) const
         {
             PrivatePropertyMap::const_iterator location = m_propertyMap.find(propertyName.impl());
index bba9294..c7d8685 100644 (file)
@@ -43,6 +43,7 @@
 #import <wtf/RetainPtr.h>
 
 class CallbackArgument {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     virtual ~CallbackArgument();
     virtual void set(NSInvocation *, NSInteger, JSContext *, JSValueRef, JSValueRef*) = 0;
@@ -257,6 +258,7 @@ public:
 };
 
 class CallbackResult {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     virtual ~CallbackResult()
     {
index 89e2c39..dcaeb72 100644 (file)
@@ -1,3 +1,33 @@
+2015-07-30  Chris Dumez  <cdumez@apple.com>
+
+        Mark more classes as fast allocated
+        https://bugs.webkit.org/show_bug.cgi?id=147440
+
+        Reviewed by Sam Weinig.
+
+        Mark more classes as fast allocated for performance. We heap-allocate
+        objects of those types throughout the code base.
+
+        * API/JSCallbackObject.h:
+        * API/ObjCCallbackFunction.mm:
+        * bytecode/BytecodeKills.h:
+        * bytecode/BytecodeLivenessAnalysis.h:
+        * bytecode/CallLinkStatus.h:
+        * bytecode/FullBytecodeLiveness.h:
+        * bytecode/SamplingTool.h:
+        * bytecompiler/BytecodeGenerator.h:
+        * dfg/DFGBasicBlock.h:
+        * dfg/DFGBlockMap.h:
+        * dfg/DFGInPlaceAbstractState.h:
+        * dfg/DFGThreadData.h:
+        * heap/HeapVerifier.h:
+        * heap/SlotVisitor.h:
+        * parser/Lexer.h:
+        * runtime/ControlFlowProfiler.h:
+        * runtime/TypeProfiler.h:
+        * runtime/TypeProfilerLog.h:
+        * runtime/Watchdog.h:
+
 2015-07-29  Filip Pizlo  <fpizlo@apple.com>
 
         DFG::ArgumentsEliminationPhase should emit a PutStack for all of the GetStacks that the ByteCodeParser emitted
index 6e504a6..d073ded 100644 (file)
@@ -34,6 +34,7 @@ namespace JSC {
 class BytecodeLivenessAnalysis;
 
 class BytecodeKills {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     BytecodeKills()
         : m_codeBlock(nullptr)
index 3f42c44..3134e79 100644 (file)
@@ -38,6 +38,7 @@ class CodeBlock;
 class FullBytecodeLiveness;
 
 class BytecodeLivenessAnalysis {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     BytecodeLivenessAnalysis(CodeBlock*);
     
index a307ca0..271d8b6 100644 (file)
@@ -45,6 +45,7 @@ class Structure;
 class CallLinkInfo;
 
 class CallLinkStatus {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     CallLinkStatus()
         : m_couldTakeSlowPath(false)
index 864af75..b22198a 100644 (file)
@@ -35,6 +35,7 @@ class BytecodeLivenessAnalysis;
 typedef HashMap<unsigned, FastBitVector, WTF::IntHash<unsigned>, WTF::UnsignedWithZeroKeyHashTraits<unsigned>> BytecodeToBitmapMap;
 
 class FullBytecodeLiveness {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     const FastBitVector& getLiveness(unsigned bytecodeIndex) const
     {
index 7d9c54f..44714c6 100644 (file)
@@ -227,6 +227,7 @@ namespace JSC {
     };
 
     class SamplingTool {
+        WTF_MAKE_FAST_ALLOCATED;
     public:
         friend struct CallRecord;
         
index 723fcda..05d306a 100644 (file)
@@ -102,6 +102,7 @@ namespace JSC {
     };
 
     class ForInContext {
+        WTF_MAKE_FAST_ALLOCATED;
     public:
         ForInContext(RegisterID* localRegister)
             : m_localRegister(localRegister)
index 420ff51..f63ebf7 100644 (file)
@@ -237,6 +237,8 @@ struct BasicBlock : RefCounted<BasicBlock> {
     unsigned innerMostLoopIndices[numberOfInnerMostLoopIndices];
 
     struct SSAData {
+        WTF_MAKE_FAST_ALLOCATED;
+    public:
         AvailabilityMap availabilityAtHead;
         AvailabilityMap availabilityAtTail;
         
index aaf343c..a52546a 100644 (file)
@@ -36,6 +36,7 @@ class Graph;
 
 template<typename T>
 class BlockMap {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     BlockMap()
     {
index 297418f..201444c 100644 (file)
@@ -37,6 +37,7 @@
 namespace JSC { namespace DFG {
 
 class InPlaceAbstractState {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     InPlaceAbstractState(Graph&);
     
index 2d229c5..e9fc565 100644 (file)
@@ -37,6 +37,7 @@ class Safepoint;
 class Worklist;
 
 class ThreadData {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     ThreadData(Worklist*);
     ~ThreadData();
index f6ec1d9..ebeef28 100644 (file)
@@ -66,6 +66,7 @@ struct LiveObjectList {
 };
 
 class HeapVerifier {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     enum class Phase {
         BeforeGC,
index 5152be2..b8295ed 100644 (file)
@@ -46,7 +46,7 @@ class WeakReferenceHarvester;
 template<typename T> class WriteBarrierBase;
 
 class SlotVisitor {
-    WTF_MAKE_NONCOPYABLE(SlotVisitor);
+    WTF_MAKE_NONCOPYABLE(SlotVisitor); WTF_MAKE_FAST_ALLOCATED;
     friend class HeapRootVisitor; // Allowed to mark a JSValue* or JSCell** directly.
 
 public:
index 20dcf30..3e6a0cb 100644 (file)
@@ -34,6 +34,7 @@
 namespace JSC {
 
 class Keywords {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     bool isKeyword(const Identifier& ident) const
     {
index e745b2d..81749dc 100644 (file)
@@ -90,6 +90,7 @@ struct BasicBlockRange {
 };
 
 class ControlFlowProfiler {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     ControlFlowProfiler();
     ~ControlFlowProfiler();
index 34f1b8d..6b27bd4 100644 (file)
@@ -94,6 +94,7 @@ enum TypeProfilerSearchDescriptor {
 };
 
 class TypeProfiler {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     TypeProfiler();
     void logTypesForTypeLocation(TypeLocation*, VM&);
index 46eeaec..b3a1948 100644 (file)
@@ -39,7 +39,7 @@ namespace JSC {
 class TypeLocation;
 
 class TypeProfilerLog {
-
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     struct LogEntry {
     public:
index 91d8d64..02fb741 100644 (file)
@@ -36,6 +36,7 @@ class ExecState;
 class VM;
 
 class Watchdog {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     class Scope;
 
index 89fc8f5..a2db1ab 100644 (file)
@@ -1,3 +1,17 @@
+2015-07-30  Chris Dumez  <cdumez@apple.com>
+
+        Mark more classes as fast allocated
+        https://bugs.webkit.org/show_bug.cgi?id=147440
+
+        Reviewed by Sam Weinig.
+
+        Mark more classes as fast allocated for performance. We heap-allocate
+        objects of those types throughout the code base.
+
+        * wtf/Bag.h:
+        * wtf/SegmentedVector.h:
+        * wtf/SentinelLinkedList.h:
+
 2015-07-29  Basile Clement  <basile_clement@apple.com>
 
         Remove native call inlining
index fcb0335..a4fcec1 100644 (file)
@@ -30,6 +30,7 @@ namespace WTF {
 
 template<typename T>
 class Bag {
+    WTF_MAKE_FAST_ALLOCATED;
 private:
     class Node {
         WTF_MAKE_FAST_ALLOCATED;
index 8cade75..e602948 100644 (file)
@@ -91,6 +91,7 @@ namespace WTF {
     class SegmentedVector {
         friend class SegmentedVectorIterator<T, SegmentSize>;
         WTF_MAKE_NONCOPYABLE(SegmentedVector);
+        WTF_MAKE_FAST_ALLOCATED;
 
     public:
         typedef SegmentedVectorIterator<T, SegmentSize> Iterator;
index 134ce80..c68ee70 100644 (file)
@@ -43,6 +43,7 @@ enum SentinelTag { Sentinel };
 
 template<typename T>
 class BasicRawSentinelNode {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     BasicRawSentinelNode(SentinelTag)
         : m_next(0)
index e5f673a..968e120 100644 (file)
@@ -1,3 +1,32 @@
+2015-07-30  Chris Dumez  <cdumez@apple.com>
+
+        Mark more classes as fast allocated
+        https://bugs.webkit.org/show_bug.cgi?id=147440
+
+        Reviewed by Sam Weinig.
+
+        Mark more classes as fast allocated for performance. We heap-allocate
+        objects of those types throughout the code base.
+
+        * editing/Editor.h:
+        * history/CachedFrame.h:
+        * history/CachedPage.h:
+        * html/parser/HTMLResourcePreloader.h:
+        * loader/PolicyChecker.h:
+        * loader/SubresourceLoader.h:
+        * loader/cache/CachedResource.h:
+        * page/animation/AnimationController.h:
+        * page/scrolling/ScrollingConstraints.h:
+        * page/scrolling/ScrollingStateTree.h:
+        * platform/graphics/Font.h:
+        * platform/graphics/GraphicsLayerUpdater.h:
+        * rendering/FilterEffectRenderer.h:
+        * rendering/ImageQualityController.h:
+        * rendering/RenderLayerFilterInfo.h:
+        * rendering/SimpleLineLayoutResolver.h:
+        * rendering/shapes/RasterShape.h:
+        * rendering/shapes/Shape.h:
+
 2015-07-30  Michael Catanzaro  <mcatanzaro@igalia.com>
 
         [GTK] Crashes when SoupSession is destroyed in exit handler
index 010e34d..8a82f3d 100644 (file)
@@ -97,6 +97,7 @@ enum class MailBlockquoteHandling {
 };
 
 class Editor {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     explicit Editor(Frame&);
     ~Editor();
index ae3b58e..e65e609 100644 (file)
@@ -66,6 +66,7 @@ protected:
 };
 
 class CachedFrame : private CachedFrameBase {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     explicit CachedFrame(Frame&);
 
index ed58fcd..f935864 100644 (file)
@@ -35,6 +35,7 @@ class DocumentLoader;
 class Page;
 
 class CachedPage {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     explicit CachedPage(Page&);
     ~CachedPage();
index a036de3..bc2f4fa 100644 (file)
@@ -32,6 +32,7 @@
 namespace WebCore {
 
 class PreloadRequest {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     PreloadRequest(const String& initiator, const String& resourceURL, const URL& baseURL, CachedResource::Type resourceType, const String& mediaAttribute)
         : m_initiator(initiator)
index 5283ad4..47b144c 100644 (file)
@@ -51,6 +51,7 @@ class ResourceResponse;
 
 class PolicyChecker {
     WTF_MAKE_NONCOPYABLE(PolicyChecker);
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     explicit PolicyChecker(Frame&);
 
index a08901b..c80791c 100644 (file)
@@ -106,6 +106,7 @@ private:
     };
 
     class RequestCountTracker {
+        WTF_MAKE_FAST_ALLOCATED;
     public:
         RequestCountTracker(CachedResourceLoader&, CachedResource*);
         ~RequestCountTracker();
index d6f93f6..1b9e93a 100644 (file)
@@ -348,6 +348,7 @@ private:
 };
 
 class CachedResource::Callback {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     Callback(CachedResource&, CachedResourceClient&);
 
index 3350b19..d69af92 100644 (file)
@@ -44,6 +44,7 @@ class RenderElement;
 class RenderStyle;
 
 class AnimationController {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     explicit AnimationController(Frame&);
     ~AnimationController();
index e461199..323b564 100644 (file)
@@ -33,6 +33,7 @@ namespace WebCore {
 // ViewportConstraints classes encapsulate data and logic required to reposition elements whose layout
 // depends on the viewport rect (positions fixed and sticky), when scrolling and zooming.
 class ViewportConstraints {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     enum ConstraintType {
         FixedPositionConstraint,
index ee7d692..79a65a5 100644 (file)
@@ -41,6 +41,7 @@ class AsyncScrollingCoordinator;
 // the scrolling thread, avoiding locking. 
 
 class ScrollingStateTree {
+    WTF_MAKE_FAST_ALLOCATED;
     friend class ScrollingStateNode;
 public:
     WEBCORE_EXPORT ScrollingStateTree(AsyncScrollingCoordinator* = nullptr);
index b04b0da..041897d 100644 (file)
@@ -267,6 +267,8 @@ private:
     Glyph m_zeroWidthSpaceGlyph;
 
     struct DerivedFontData {
+        WTF_MAKE_FAST_ALLOCATED;
+    public:
         explicit DerivedFontData(bool custom)
             : forCustomFont(custom)
         {
index 8671f16..f795d65 100644 (file)
@@ -47,6 +47,7 @@ class GraphicsLayerUpdater
     : public DisplayRefreshMonitorClient
 #endif
 {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     GraphicsLayerUpdater(GraphicsLayerUpdaterClient&, PlatformDisplayID);
     virtual ~GraphicsLayerUpdater();
index 5ff898b..beb3f77 100644 (file)
@@ -55,6 +55,7 @@ enum FilterConsumer {
 };
 
 class FilterEffectRendererHelper {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     FilterEffectRendererHelper(bool haveFilterEffect)
         : m_renderLayer(0)
index dcee0f9..25d7ee9 100644 (file)
@@ -39,7 +39,7 @@ class RenderBoxModelObject;
 class RenderView;
 
 class ImageQualityController {
-    WTF_MAKE_NONCOPYABLE(ImageQualityController)
+    WTF_MAKE_NONCOPYABLE(ImageQualityController); WTF_MAKE_FAST_ALLOCATED;
 public:
     explicit ImageQualityController(const RenderView&);
 
index 21c43f2..dc0e54a 100644 (file)
@@ -41,6 +41,7 @@ class CachedSVGDocument;
 class Element;
 
 class RenderLayer::FilterInfo final : private CachedSVGDocumentClient {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     static FilterInfo& get(RenderLayer&);
     static FilterInfo* getIfExists(const RenderLayer&);
index 361b52a..467217f 100644 (file)
@@ -50,6 +50,7 @@ private:
 };
 
 class RunResolver {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     class Iterator;
 
index c09b52e..9215894 100644 (file)
@@ -39,6 +39,7 @@
 namespace WebCore {
 
 class RasterShapeIntervals {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     RasterShapeIntervals(unsigned size, int offset = 0)
         : m_offset(offset)
index 93e879a..c70c6d9 100644 (file)
@@ -66,6 +66,7 @@ class RoundedRect;
 // physical coordinates.
 
 class Shape {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     struct DisplayPaths {
         Path shape;
index 6ffa72f..95121e5 100644 (file)
@@ -1,3 +1,18 @@
+2015-07-30  Chris Dumez  <cdumez@apple.com>
+
+        Mark more classes as fast allocated
+        https://bugs.webkit.org/show_bug.cgi?id=147440
+
+        Reviewed by Sam Weinig.
+
+        Mark more classes as fast allocated for performance. We heap-allocate
+        objects of those types throughout the code base.
+
+        * NetworkProcess/cache/NetworkCacheStorage.cpp:
+        * NetworkProcess/cache/NetworkCacheStorage.h:
+        * Platform/IPC/MessageRecorder.h:
+        * Platform/mac/LayerHostingContext.h:
+
 2015-07-29  Andy VanWagoner  <thetalecrafter@gmail.com>
 
         Implement basic types for ECMAScript Internationalization API
index e149215..16942ac 100644 (file)
@@ -49,6 +49,8 @@ static const char bodyPostfix[] = "-body";
 static double computeRecordWorth(FileTimes);
 
 struct Storage::ReadOperation {
+    WTF_MAKE_FAST_ALLOCATED;
+public:
     ReadOperation(const Key& key, const RetrieveCompletionHandler& completionHandler)
         : key(key)
         , completionHandler(completionHandler)
@@ -64,6 +66,8 @@ struct Storage::ReadOperation {
 };
 
 struct Storage::WriteOperation {
+    WTF_MAKE_FAST_ALLOCATED;
+public:
     WriteOperation(const Record& record, const MappedBodyHandler& mappedBodyHandler)
         : record(record)
         , mappedBodyHandler(mappedBodyHandler)
@@ -76,6 +80,8 @@ struct Storage::WriteOperation {
 };
 
 struct Storage::TraverseOperation {
+    WTF_MAKE_FAST_ALLOCATED;
+public:
     TraverseOperation(TraverseFlags flags, const TraverseHandler& handler)
         : flags(flags)
         , handler(handler)
index 1a8b5a1..0cc70aa 100644 (file)
@@ -50,6 +50,8 @@ public:
     static std::unique_ptr<Storage> open(const String& cachePath);
 
     struct Record {
+        WTF_MAKE_FAST_ALLOCATED;
+    public:
         Key key;
         std::chrono::system_clock::time_point timeStamp;
         Data header;
index 539c068..253c6b2 100644 (file)
@@ -68,7 +68,7 @@ public:
     static bool isEnabled();
 
     class MessageProcessingToken {
-        WTF_MAKE_NONCOPYABLE(MessageProcessingToken);
+        WTF_MAKE_NONCOPYABLE(MessageProcessingToken); WTF_MAKE_FAST_ALLOCATED;
     public:
         explicit MessageProcessingToken(WebKitMessageRecord);
         ~MessageProcessingToken();
index 6f1cb1a..9549b9f 100644 (file)
@@ -41,7 +41,7 @@ class MachSendRight;
 namespace WebKit {
 
 class LayerHostingContext {
-    WTF_MAKE_NONCOPYABLE(LayerHostingContext);
+    WTF_MAKE_NONCOPYABLE(LayerHostingContext); WTF_MAKE_FAST_ALLOCATED;
 public:
     static std::unique_ptr<LayerHostingContext> createForPort(const WebCore::MachSendRight& serverPort);
 #if HAVE(OUT_OF_PROCESS_LAYER_HOSTING)