WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
156732
Mark more classes as WTF_MAKE_FAST_ALLOCATED
https://bugs.webkit.org/show_bug.cgi?id=156732
Summary
Mark more classes as WTF_MAKE_FAST_ALLOCATED
Chris Dumez
Reported
2016-04-18 22:30:24 PDT
Mark more classes as WTF_MAKE_FAST_ALLOCATED.
Attachments
Patch
(26.08 KB, patch)
2016-04-18 22:32 PDT
,
Chris Dumez
no flags
Details
Formatted Diff
Diff
Patch
(26.17 KB, patch)
2016-04-19 09:03 PDT
,
Chris Dumez
no flags
Details
Formatted Diff
Diff
Patch
(26.30 KB, patch)
2016-04-19 09:20 PDT
,
Chris Dumez
no flags
Details
Formatted Diff
Diff
Patch
(26.88 KB, patch)
2016-04-19 09:36 PDT
,
Chris Dumez
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Chris Dumez
Comment 1
2016-04-18 22:32:04 PDT
Created
attachment 276695
[details]
Patch
Chris Dumez
Comment 2
2016-04-19 09:03:14 PDT
Created
attachment 276727
[details]
Patch
Darin Adler
Comment 3
2016-04-19 09:13:21 PDT
Comment on
attachment 276727
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=276727&action=review
Are these all classes that are actually allocated on the heap with new? The idea that we heap-allocate FloatQuad, FloatRoundedRect, and IntSize, for example, surprise me. Do we have some good system for catching when we forget to do one of these? In the past I had wanted to come up with some trick with global allocator new to catch in the debugger if we miss one of these.
> Source/WebCore/dom/ActiveDOMCallbackMicrotask.h:39 > - virtual ~ActiveDOMCallbackMicrotask(); > + WEBCORE_EXPORT virtual ~ActiveDOMCallbackMicrotask();
Why this change?
> Source/WebCore/dom/ScriptExecutionContext.cpp:60 > class ScriptExecutionContext::PendingException { > - WTF_MAKE_NONCOPYABLE(PendingException); > + WTF_MAKE_NONCOPYABLE(PendingException); WTF_MAKE_FAST_ALLOCATED; > public:
Looks like this class should be a struct.
> Source/WebCore/page/AutoscrollController.h:52 > // AutscrollController handels autoscroll and pan scroll for EventHandler.
"handels"
Chris Dumez
Comment 4
2016-04-19 09:18:28 PDT
Comment on
attachment 276727
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=276727&action=review
>> Source/WebCore/dom/ActiveDOMCallbackMicrotask.h:39 >> + WEBCORE_EXPORT virtual ~ActiveDOMCallbackMicrotask(); > > Why this change?
Trying to make Win-EWS happy: Creating library C:/cygwin/home/buildbot/WebKit/WebKitBuild/Release/lib32/DumpRenderTreeLib.lib and object C:/cygwin/home/buildbot/WebKit/WebKitBuild/Release/lib32/DumpRenderTreeLib.exp WebCoreTestSupport.lib(Internals.obj) : error LNK2019: unresolved external symbol "public: virtual __thiscall WebCore::ActiveDOMCallbackMicrotask::~ActiveDOMCallbackMicrotask(void)" (??1ActiveDOMCallbackMicrotask@WebCore@@UAE@XZ) referenced in function "public: virtual void * __thiscall WebCore::ActiveDOMCallbackMicrotask::`scalar deleting destructor'(unsigned int)" (??_GActiveDOMCallbackMicrotask@WebCore@@UAEPAXI@Z) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Tools\DumpRenderTree\DumpRenderTreeLib.vcxproj] C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\bin32\DumpRenderTreeLib.dll : fatal error LNK1120: 1 unresolved externals
>> Source/WebCore/dom/ScriptExecutionContext.cpp:60 >> public: > > Looks like this class should be a struct.
OK
>> Source/WebCore/page/AutoscrollController.h:52 >> // AutscrollController handels autoscroll and pan scroll for EventHandler. > > "handels"
OK
Chris Dumez
Comment 5
2016-04-19 09:20:31 PDT
Comment on
attachment 276727
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=276727&action=review
>>> Source/WebCore/dom/ActiveDOMCallbackMicrotask.h:39 >>> + WEBCORE_EXPORT virtual ~ActiveDOMCallbackMicrotask(); >> >> Why this change? > > Trying to make Win-EWS happy: > Creating library C:/cygwin/home/buildbot/WebKit/WebKitBuild/Release/lib32/DumpRenderTreeLib.lib and object C:/cygwin/home/buildbot/WebKit/WebKitBuild/Release/lib32/DumpRenderTreeLib.exp > WebCoreTestSupport.lib(Internals.obj) : error LNK2019: unresolved external symbol "public: virtual __thiscall WebCore::ActiveDOMCallbackMicrotask::~ActiveDOMCallbackMicrotask(void)" (??1ActiveDOMCallbackMicrotask@WebCore@@UAE@XZ) referenced in function "public: virtual void * __thiscall WebCore::ActiveDOMCallbackMicrotask::`scalar deleting destructor'(unsigned int)" (??_GActiveDOMCallbackMicrotask@WebCore@@UAEPAXI@Z) [C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\Tools\DumpRenderTree\DumpRenderTreeLib.vcxproj] > C:\cygwin\home\buildbot\WebKit\WebKitBuild\Release\bin32\DumpRenderTreeLib.dll : fatal error LNK1120: 1 unresolved externals
I assume this is because I finalized the class and the destructor now gets called directly at once of the call sites.
Chris Dumez
Comment 6
2016-04-19 09:20:47 PDT
Created
attachment 276728
[details]
Patch
Chris Dumez
Comment 7
2016-04-19 09:36:14 PDT
Created
attachment 276731
[details]
Patch
Chris Dumez
Comment 8
2016-04-19 11:38:51 PDT
Comment on
attachment 276731
[details]
Patch Clearing flags on attachment: 276731 Committed
r199735
: <
http://trac.webkit.org/changeset/199735
>
Chris Dumez
Comment 9
2016-04-19 11:38:58 PDT
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug