Bug 121239 - IncrementalSweeper should not require an entire Vector to do its job
Summary: IncrementalSweeper should not require an entire Vector to do its job
Status: NEW
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:
Blocks: 121074
  Show dependency treegraph
 
Reported: 2013-09-12 10:55 PDT by Mark Hahnenberg
Modified: 2013-09-12 10:56 PDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Hahnenberg 2013-09-12 10:55:37 PDT
Right now during every collection we fill a Vector with pointers to all the MarkedBlocks in the Heap just so the IncrementalSweeper can iterate over them later without getting confused about newly added blocks. This is too expensive to do during every GC, especially with a generational collector. We should instead create a special iterator that the IncrementalSweeper can use that iterates the blocks in place and handles any weird corner cases internally.