Bug 89400 - GCActivityCallback and IncrementalSweeper should share code
Summary: GCActivityCallback and IncrementalSweeper should share code
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Mark Hahnenberg
URL:
Keywords:
Depends on: 89516
Blocks:
  Show dependency treegraph
 
Reported: 2012-06-18 16:07 PDT by Mark Hahnenberg
Modified: 2012-06-19 14:35 PDT (History)
6 users (show)

See Also:


Attachments
Patch (28.07 KB, patch)
2012-06-18 16:34 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff
Patch (28.95 KB, patch)
2012-06-18 17:23 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff
Patch (29.13 KB, patch)
2012-06-18 17:50 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff
Checking builds (28.60 KB, patch)
2012-06-19 11:09 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff
Checking builds (28.59 KB, patch)
2012-06-19 11:10 PDT, Mark Hahnenberg
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Hahnenberg 2012-06-18 16:07:08 PDT
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).
Comment 1 Mark Hahnenberg 2012-06-18 16:34:08 PDT
Created attachment 148202 [details]
Patch
Comment 2 Early Warning System Bot 2012-06-18 17:10:53 PDT
Comment on attachment 148202 [details]
Patch

Attachment 148202 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/12982201
Comment 3 Build Bot 2012-06-18 17:13:36 PDT
Comment on attachment 148202 [details]
Patch

Attachment 148202 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/12978393
Comment 4 Early Warning System Bot 2012-06-18 17:19:18 PDT
Comment on attachment 148202 [details]
Patch

Attachment 148202 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/12969868
Comment 5 Mark Hahnenberg 2012-06-18 17:23:06 PDT
Created attachment 148207 [details]
Patch
Comment 6 Mark Hahnenberg 2012-06-18 17:50:19 PDT
Created attachment 148216 [details]
Patch
Comment 7 Geoffrey Garen 2012-06-18 19:48:42 PDT
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?
Comment 8 Mark Hahnenberg 2012-06-19 11:09:14 PDT
Created attachment 148363 [details]
Checking builds
Comment 9 Mark Hahnenberg 2012-06-19 11:10:18 PDT
Created attachment 148364 [details]
Checking builds
Comment 10 Mark Hahnenberg 2012-06-19 11:10:43 PDT
Re-uploading patch to make sure I didn't break any builds when renaming ExternalVMAgent to HeapTimer.
Comment 11 WebKit Review Bot 2012-06-19 12:17:50 PDT
Comment on attachment 148364 [details]
Checking builds

Clearing flags on attachment: 148364

Committed r120742: <http://trac.webkit.org/changeset/120742>
Comment 12 WebKit Review Bot 2012-06-19 12:17:55 PDT
All reviewed patches have been landed.  Closing bug.