A lot of functionality is duplicated between GCActivityCallback and IncrementalSweeper. We should extract the common functionality out into a separate class that both of them can inherit from. This refactoring will be an even greater boon when we add the ability to shut these two things down in a thread-safe fashion (see bug 89123).
Created attachment 148202 [details] Patch
Comment on attachment 148202 [details] Patch Attachment 148202 [details] did not pass qt-wk2-ews (qt): Output: http://queues.webkit.org/results/12982201
Comment on attachment 148202 [details] Patch Attachment 148202 [details] did not pass win-ews (win): Output: http://queues.webkit.org/results/12978393
Comment on attachment 148202 [details] Patch Attachment 148202 [details] did not pass qt-ews (qt): Output: http://queues.webkit.org/results/12969868
Created attachment 148207 [details] Patch
Created attachment 148216 [details] Patch
Comment on attachment 148216 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=148216&action=review r=me > Source/JavaScriptCore/runtime/ExternalVMAgent.h:14 > +class ExternalVMAgent { This name seemed a bit vague to me. "External" isn't just says what you're not (i.e., not internal), and "VM" doesn't specifically convey "related to the GC heap". How about HeapTimer or ScheduledHeapAgent?
Created attachment 148363 [details] Checking builds
Created attachment 148364 [details] Checking builds
Re-uploading patch to make sure I didn't break any builds when renaming ExternalVMAgent to HeapTimer.
Comment on attachment 148364 [details] Checking builds Clearing flags on attachment: 148364 Committed r120742: <http://trac.webkit.org/changeset/120742>
All reviewed patches have been landed. Closing bug.