Diff
Modified: trunk/Source/_javascript_Core/API/JSCallbackObject.h (187586 => 187587)
--- trunk/Source/_javascript_Core/API/JSCallbackObject.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/API/JSCallbackObject.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -79,6 +79,8 @@
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());
Modified: trunk/Source/_javascript_Core/API/ObjCCallbackFunction.mm (187586 => 187587)
--- trunk/Source/_javascript_Core/API/ObjCCallbackFunction.mm 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/API/ObjCCallbackFunction.mm 2015-07-30 16:25:36 UTC (rev 187587)
@@ -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 @@
};
class CallbackResult {
+ WTF_MAKE_FAST_ALLOCATED;
public:
virtual ~CallbackResult()
{
Modified: trunk/Source/_javascript_Core/ChangeLog (187586 => 187587)
--- trunk/Source/_javascript_Core/ChangeLog 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/ChangeLog 2015-07-30 16:25:36 UTC (rev 187587)
@@ -1,3 +1,33 @@
+2015-07-30 Chris Dumez <cdu...@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 <fpi...@apple.com>
DFG::ArgumentsEliminationPhase should emit a PutStack for all of the GetStacks that the ByteCodeParser emitted
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeKills.h (187586 => 187587)
--- trunk/Source/_javascript_Core/bytecode/BytecodeKills.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeKills.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -34,6 +34,7 @@
class BytecodeLivenessAnalysis;
class BytecodeKills {
+ WTF_MAKE_FAST_ALLOCATED;
public:
BytecodeKills()
: m_codeBlock(nullptr)
Modified: trunk/Source/_javascript_Core/bytecode/BytecodeLivenessAnalysis.h (187586 => 187587)
--- trunk/Source/_javascript_Core/bytecode/BytecodeLivenessAnalysis.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/bytecode/BytecodeLivenessAnalysis.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -38,6 +38,7 @@
class FullBytecodeLiveness;
class BytecodeLivenessAnalysis {
+ WTF_MAKE_FAST_ALLOCATED;
public:
BytecodeLivenessAnalysis(CodeBlock*);
Modified: trunk/Source/_javascript_Core/bytecode/CallLinkStatus.h (187586 => 187587)
--- trunk/Source/_javascript_Core/bytecode/CallLinkStatus.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/bytecode/CallLinkStatus.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -45,6 +45,7 @@
class CallLinkInfo;
class CallLinkStatus {
+ WTF_MAKE_FAST_ALLOCATED;
public:
CallLinkStatus()
: m_couldTakeSlowPath(false)
Modified: trunk/Source/_javascript_Core/bytecode/FullBytecodeLiveness.h (187586 => 187587)
--- trunk/Source/_javascript_Core/bytecode/FullBytecodeLiveness.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/bytecode/FullBytecodeLiveness.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -35,6 +35,7 @@
typedef HashMap<unsigned, FastBitVector, WTF::IntHash<unsigned>, WTF::UnsignedWithZeroKeyHashTraits<unsigned>> BytecodeToBitmapMap;
class FullBytecodeLiveness {
+ WTF_MAKE_FAST_ALLOCATED;
public:
const FastBitVector& getLiveness(unsigned bytecodeIndex) const
{
Modified: trunk/Source/_javascript_Core/bytecode/SamplingTool.h (187586 => 187587)
--- trunk/Source/_javascript_Core/bytecode/SamplingTool.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/bytecode/SamplingTool.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -227,6 +227,7 @@
};
class SamplingTool {
+ WTF_MAKE_FAST_ALLOCATED;
public:
friend struct CallRecord;
Modified: trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h (187586 => 187587)
--- trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/bytecompiler/BytecodeGenerator.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -102,6 +102,7 @@
};
class ForInContext {
+ WTF_MAKE_FAST_ALLOCATED;
public:
ForInContext(RegisterID* localRegister)
: m_localRegister(localRegister)
Modified: trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h (187586 => 187587)
--- trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/dfg/DFGBasicBlock.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -237,6 +237,8 @@
unsigned innerMostLoopIndices[numberOfInnerMostLoopIndices];
struct SSAData {
+ WTF_MAKE_FAST_ALLOCATED;
+ public:
AvailabilityMap availabilityAtHead;
AvailabilityMap availabilityAtTail;
Modified: trunk/Source/_javascript_Core/dfg/DFGBlockMap.h (187586 => 187587)
--- trunk/Source/_javascript_Core/dfg/DFGBlockMap.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/dfg/DFGBlockMap.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -36,6 +36,7 @@
template<typename T>
class BlockMap {
+ WTF_MAKE_FAST_ALLOCATED;
public:
BlockMap()
{
Modified: trunk/Source/_javascript_Core/dfg/DFGInPlaceAbstractState.h (187586 => 187587)
--- trunk/Source/_javascript_Core/dfg/DFGInPlaceAbstractState.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/dfg/DFGInPlaceAbstractState.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -37,6 +37,7 @@
namespace JSC { namespace DFG {
class InPlaceAbstractState {
+ WTF_MAKE_FAST_ALLOCATED;
public:
InPlaceAbstractState(Graph&);
Modified: trunk/Source/_javascript_Core/dfg/DFGThreadData.h (187586 => 187587)
--- trunk/Source/_javascript_Core/dfg/DFGThreadData.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/dfg/DFGThreadData.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -37,6 +37,7 @@
class Worklist;
class ThreadData {
+ WTF_MAKE_FAST_ALLOCATED;
public:
ThreadData(Worklist*);
~ThreadData();
Modified: trunk/Source/_javascript_Core/heap/HeapVerifier.h (187586 => 187587)
--- trunk/Source/_javascript_Core/heap/HeapVerifier.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/heap/HeapVerifier.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -66,6 +66,7 @@
};
class HeapVerifier {
+ WTF_MAKE_FAST_ALLOCATED;
public:
enum class Phase {
BeforeGC,
Modified: trunk/Source/_javascript_Core/heap/SlotVisitor.h (187586 => 187587)
--- trunk/Source/_javascript_Core/heap/SlotVisitor.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/heap/SlotVisitor.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -46,7 +46,7 @@
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:
Modified: trunk/Source/_javascript_Core/parser/Lexer.h (187586 => 187587)
--- trunk/Source/_javascript_Core/parser/Lexer.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/parser/Lexer.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -34,6 +34,7 @@
namespace JSC {
class Keywords {
+ WTF_MAKE_FAST_ALLOCATED;
public:
bool isKeyword(const Identifier& ident) const
{
Modified: trunk/Source/_javascript_Core/runtime/ControlFlowProfiler.h (187586 => 187587)
--- trunk/Source/_javascript_Core/runtime/ControlFlowProfiler.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/runtime/ControlFlowProfiler.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -90,6 +90,7 @@
};
class ControlFlowProfiler {
+ WTF_MAKE_FAST_ALLOCATED;
public:
ControlFlowProfiler();
~ControlFlowProfiler();
Modified: trunk/Source/_javascript_Core/runtime/TypeProfiler.h (187586 => 187587)
--- trunk/Source/_javascript_Core/runtime/TypeProfiler.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/runtime/TypeProfiler.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -94,6 +94,7 @@
};
class TypeProfiler {
+ WTF_MAKE_FAST_ALLOCATED;
public:
TypeProfiler();
void logTypesForTypeLocation(TypeLocation*, VM&);
Modified: trunk/Source/_javascript_Core/runtime/TypeProfilerLog.h (187586 => 187587)
--- trunk/Source/_javascript_Core/runtime/TypeProfilerLog.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/runtime/TypeProfilerLog.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -39,7 +39,7 @@
class TypeLocation;
class TypeProfilerLog {
-
+ WTF_MAKE_FAST_ALLOCATED;
public:
struct LogEntry {
public:
Modified: trunk/Source/_javascript_Core/runtime/Watchdog.h (187586 => 187587)
--- trunk/Source/_javascript_Core/runtime/Watchdog.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/_javascript_Core/runtime/Watchdog.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -36,6 +36,7 @@
class VM;
class Watchdog {
+ WTF_MAKE_FAST_ALLOCATED;
public:
class Scope;
Modified: trunk/Source/WTF/ChangeLog (187586 => 187587)
--- trunk/Source/WTF/ChangeLog 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WTF/ChangeLog 2015-07-30 16:25:36 UTC (rev 187587)
@@ -1,3 +1,17 @@
+2015-07-30 Chris Dumez <cdu...@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_clem...@apple.com>
Remove native call inlining
Modified: trunk/Source/WTF/wtf/Bag.h (187586 => 187587)
--- trunk/Source/WTF/wtf/Bag.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WTF/wtf/Bag.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -30,6 +30,7 @@
template<typename T>
class Bag {
+ WTF_MAKE_FAST_ALLOCATED;
private:
class Node {
WTF_MAKE_FAST_ALLOCATED;
Modified: trunk/Source/WTF/wtf/SegmentedVector.h (187586 => 187587)
--- trunk/Source/WTF/wtf/SegmentedVector.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WTF/wtf/SegmentedVector.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -91,6 +91,7 @@
class SegmentedVector {
friend class SegmentedVectorIterator<T, SegmentSize>;
WTF_MAKE_NONCOPYABLE(SegmentedVector);
+ WTF_MAKE_FAST_ALLOCATED;
public:
typedef SegmentedVectorIterator<T, SegmentSize> Iterator;
Modified: trunk/Source/WTF/wtf/SentinelLinkedList.h (187586 => 187587)
--- trunk/Source/WTF/wtf/SentinelLinkedList.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WTF/wtf/SentinelLinkedList.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -43,6 +43,7 @@
template<typename T>
class BasicRawSentinelNode {
+ WTF_MAKE_FAST_ALLOCATED;
public:
BasicRawSentinelNode(SentinelTag)
: m_next(0)
Modified: trunk/Source/WebCore/ChangeLog (187586 => 187587)
--- trunk/Source/WebCore/ChangeLog 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/ChangeLog 2015-07-30 16:25:36 UTC (rev 187587)
@@ -1,3 +1,32 @@
+2015-07-30 Chris Dumez <cdu...@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 <mcatanz...@igalia.com>
[GTK] Crashes when SoupSession is destroyed in exit handler
Modified: trunk/Source/WebCore/editing/Editor.h (187586 => 187587)
--- trunk/Source/WebCore/editing/Editor.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/editing/Editor.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -97,6 +97,7 @@
};
class Editor {
+ WTF_MAKE_FAST_ALLOCATED;
public:
explicit Editor(Frame&);
~Editor();
Modified: trunk/Source/WebCore/history/CachedFrame.h (187586 => 187587)
--- trunk/Source/WebCore/history/CachedFrame.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/history/CachedFrame.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -66,6 +66,7 @@
};
class CachedFrame : private CachedFrameBase {
+ WTF_MAKE_FAST_ALLOCATED;
public:
explicit CachedFrame(Frame&);
Modified: trunk/Source/WebCore/history/CachedPage.h (187586 => 187587)
--- trunk/Source/WebCore/history/CachedPage.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/history/CachedPage.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -35,6 +35,7 @@
class Page;
class CachedPage {
+ WTF_MAKE_FAST_ALLOCATED;
public:
explicit CachedPage(Page&);
~CachedPage();
Modified: trunk/Source/WebCore/html/parser/HTMLResourcePreloader.h (187586 => 187587)
--- trunk/Source/WebCore/html/parser/HTMLResourcePreloader.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/html/parser/HTMLResourcePreloader.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -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)
Modified: trunk/Source/WebCore/loader/PolicyChecker.h (187586 => 187587)
--- trunk/Source/WebCore/loader/PolicyChecker.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/loader/PolicyChecker.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -51,6 +51,7 @@
class PolicyChecker {
WTF_MAKE_NONCOPYABLE(PolicyChecker);
+ WTF_MAKE_FAST_ALLOCATED;
public:
explicit PolicyChecker(Frame&);
Modified: trunk/Source/WebCore/loader/SubresourceLoader.h (187586 => 187587)
--- trunk/Source/WebCore/loader/SubresourceLoader.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/loader/SubresourceLoader.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -106,6 +106,7 @@
};
class RequestCountTracker {
+ WTF_MAKE_FAST_ALLOCATED;
public:
RequestCountTracker(CachedResourceLoader&, CachedResource*);
~RequestCountTracker();
Modified: trunk/Source/WebCore/loader/cache/CachedResource.h (187586 => 187587)
--- trunk/Source/WebCore/loader/cache/CachedResource.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/loader/cache/CachedResource.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -348,6 +348,7 @@
};
class CachedResource::Callback {
+ WTF_MAKE_FAST_ALLOCATED;
public:
Callback(CachedResource&, CachedResourceClient&);
Modified: trunk/Source/WebCore/page/animation/AnimationController.h (187586 => 187587)
--- trunk/Source/WebCore/page/animation/AnimationController.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/page/animation/AnimationController.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -44,6 +44,7 @@
class RenderStyle;
class AnimationController {
+ WTF_MAKE_FAST_ALLOCATED;
public:
explicit AnimationController(Frame&);
~AnimationController();
Modified: trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h (187586 => 187587)
--- trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/page/scrolling/ScrollingConstraints.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -33,6 +33,7 @@
// 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,
Modified: trunk/Source/WebCore/page/scrolling/ScrollingStateTree.h (187586 => 187587)
--- trunk/Source/WebCore/page/scrolling/ScrollingStateTree.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/page/scrolling/ScrollingStateTree.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -41,6 +41,7 @@
// the scrolling thread, avoiding locking.
class ScrollingStateTree {
+ WTF_MAKE_FAST_ALLOCATED;
friend class ScrollingStateNode;
public:
WEBCORE_EXPORT ScrollingStateTree(AsyncScrollingCoordinator* = nullptr);
Modified: trunk/Source/WebCore/platform/graphics/Font.h (187586 => 187587)
--- trunk/Source/WebCore/platform/graphics/Font.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/platform/graphics/Font.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -267,6 +267,8 @@
Glyph m_zeroWidthSpaceGlyph;
struct DerivedFontData {
+ WTF_MAKE_FAST_ALLOCATED;
+ public:
explicit DerivedFontData(bool custom)
: forCustomFont(custom)
{
Modified: trunk/Source/WebCore/platform/graphics/GraphicsLayerUpdater.h (187586 => 187587)
--- trunk/Source/WebCore/platform/graphics/GraphicsLayerUpdater.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/platform/graphics/GraphicsLayerUpdater.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -47,6 +47,7 @@
: public DisplayRefreshMonitorClient
#endif
{
+ WTF_MAKE_FAST_ALLOCATED;
public:
GraphicsLayerUpdater(GraphicsLayerUpdaterClient&, PlatformDisplayID);
virtual ~GraphicsLayerUpdater();
Modified: trunk/Source/WebCore/rendering/FilterEffectRenderer.h (187586 => 187587)
--- trunk/Source/WebCore/rendering/FilterEffectRenderer.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/rendering/FilterEffectRenderer.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -55,6 +55,7 @@
};
class FilterEffectRendererHelper {
+ WTF_MAKE_FAST_ALLOCATED;
public:
FilterEffectRendererHelper(bool haveFilterEffect)
: m_renderLayer(0)
Modified: trunk/Source/WebCore/rendering/ImageQualityController.h (187586 => 187587)
--- trunk/Source/WebCore/rendering/ImageQualityController.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/rendering/ImageQualityController.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -39,7 +39,7 @@
class RenderView;
class ImageQualityController {
- WTF_MAKE_NONCOPYABLE(ImageQualityController)
+ WTF_MAKE_NONCOPYABLE(ImageQualityController); WTF_MAKE_FAST_ALLOCATED;
public:
explicit ImageQualityController(const RenderView&);
Modified: trunk/Source/WebCore/rendering/RenderLayerFilterInfo.h (187586 => 187587)
--- trunk/Source/WebCore/rendering/RenderLayerFilterInfo.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/rendering/RenderLayerFilterInfo.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -41,6 +41,7 @@
class Element;
class RenderLayer::FilterInfo final : private CachedSVGDocumentClient {
+ WTF_MAKE_FAST_ALLOCATED;
public:
static FilterInfo& get(RenderLayer&);
static FilterInfo* getIfExists(const RenderLayer&);
Modified: trunk/Source/WebCore/rendering/SimpleLineLayoutResolver.h (187586 => 187587)
--- trunk/Source/WebCore/rendering/SimpleLineLayoutResolver.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/rendering/SimpleLineLayoutResolver.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -50,6 +50,7 @@
};
class RunResolver {
+ WTF_MAKE_FAST_ALLOCATED;
public:
class Iterator;
Modified: trunk/Source/WebCore/rendering/shapes/RasterShape.h (187586 => 187587)
--- trunk/Source/WebCore/rendering/shapes/RasterShape.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/rendering/shapes/RasterShape.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -39,6 +39,7 @@
namespace WebCore {
class RasterShapeIntervals {
+ WTF_MAKE_FAST_ALLOCATED;
public:
RasterShapeIntervals(unsigned size, int offset = 0)
: m_offset(offset)
Modified: trunk/Source/WebCore/rendering/shapes/Shape.h (187586 => 187587)
--- trunk/Source/WebCore/rendering/shapes/Shape.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebCore/rendering/shapes/Shape.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -66,6 +66,7 @@
// physical coordinates.
class Shape {
+ WTF_MAKE_FAST_ALLOCATED;
public:
struct DisplayPaths {
Path shape;
Modified: trunk/Source/WebKit2/ChangeLog (187586 => 187587)
--- trunk/Source/WebKit2/ChangeLog 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebKit2/ChangeLog 2015-07-30 16:25:36 UTC (rev 187587)
@@ -1,3 +1,18 @@
+2015-07-30 Chris Dumez <cdu...@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 <thetalecraf...@gmail.com>
Implement basic types for ECMAScript Internationalization API
Modified: trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp (187586 => 187587)
--- trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp 2015-07-30 16:25:36 UTC (rev 187587)
@@ -49,6 +49,8 @@
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::WriteOperation {
+ WTF_MAKE_FAST_ALLOCATED;
+public:
WriteOperation(const Record& record, const MappedBodyHandler& mappedBodyHandler)
: record(record)
, mappedBodyHandler(mappedBodyHandler)
@@ -76,6 +80,8 @@
};
struct Storage::TraverseOperation {
+ WTF_MAKE_FAST_ALLOCATED;
+public:
TraverseOperation(TraverseFlags flags, const TraverseHandler& handler)
: flags(flags)
, handler(handler)
Modified: trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h (187586 => 187587)
--- trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -50,6 +50,8 @@
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;
Modified: trunk/Source/WebKit2/Platform/IPC/MessageRecorder.h (187586 => 187587)
--- trunk/Source/WebKit2/Platform/IPC/MessageRecorder.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebKit2/Platform/IPC/MessageRecorder.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -68,7 +68,7 @@
static bool isEnabled();
class MessageProcessingToken {
- WTF_MAKE_NONCOPYABLE(MessageProcessingToken);
+ WTF_MAKE_NONCOPYABLE(MessageProcessingToken); WTF_MAKE_FAST_ALLOCATED;
public:
explicit MessageProcessingToken(WebKitMessageRecord);
~MessageProcessingToken();
Modified: trunk/Source/WebKit2/Platform/mac/LayerHostingContext.h (187586 => 187587)
--- trunk/Source/WebKit2/Platform/mac/LayerHostingContext.h 2015-07-30 16:21:45 UTC (rev 187586)
+++ trunk/Source/WebKit2/Platform/mac/LayerHostingContext.h 2015-07-30 16:25:36 UTC (rev 187587)
@@ -41,7 +41,7 @@
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)