RESOLVED FIXED 160053
Teach MarkedSpace how to allocate auxiliary storage
https://bugs.webkit.org/show_bug.cgi?id=160053
Summary Teach MarkedSpace how to allocate auxiliary storage
Filip Pizlo
Reported 2016-07-21 14:47:56 PDT
Patch forthcoming.
Attachments
it begins (31.36 KB, patch)
2016-07-21 15:18 PDT, Filip Pizlo
no flags
maybe done (43.84 KB, patch)
2016-07-21 16:33 PDT, Filip Pizlo
no flags
it seems to work! (45.08 KB, patch)
2016-07-21 17:21 PDT, Filip Pizlo
sam: review+
Filip Pizlo
Comment 1 2016-07-21 15:18:53 PDT
Created attachment 284266 [details] it begins
Filip Pizlo
Comment 2 2016-07-21 16:33:53 PDT
Created attachment 284280 [details] maybe done
Filip Pizlo
Comment 3 2016-07-21 17:21:07 PDT
Created attachment 284288 [details] it seems to work!
WebKit Commit Bot
Comment 4 2016-07-21 17:23:32 PDT
Attachment 284288 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/heap/MarkedSpace.cpp:206: Place brace on its own line for function definitions. [whitespace/braces] [4] Total errors found: 1 in 14 files If any of these errors are false positives, please file a bug against check-webkit-style.
Sam Weinig
Comment 5 2016-07-22 14:36:44 PDT
Comment on attachment 284288 [details] it seems to work! View in context: https://bugs.webkit.org/attachment.cgi?id=284288&action=review > Source/JavaScriptCore/ChangeLog:20 > + To make this somewhat nice, this change also fixes how we describe subspaces. Intead of a Intead -> Instead.
Filip Pizlo
Comment 6 2016-07-22 15:16:12 PDT
Saam Barati
Comment 7 2016-07-22 16:14:22 PDT
Comment on attachment 284288 [details] it seems to work! View in context: https://bugs.webkit.org/attachment.cgi?id=284288&action=review > Source/JavaScriptCore/ChangeLog:26 > + with DestructionMode::Needed and DestructionMode::NotNeeded, but I felt like that involves FWIW, I think this is nicer style. > Source/JavaScriptCore/heap/MarkedSpace.cpp:132 > + if (functor(subspace.largeAllocator, 0, attributes) == IterationStatus::Done) It's sort of confusing to use 0 to indicate to the functor that the allocator is the large allocator. Could we indicate this in another way? Maybe Optional<size_t> or something else? Or has this been the paradigm for a while?
Filip Pizlo
Comment 8 2016-07-22 16:31:58 PDT
(In reply to comment #7) > Comment on attachment 284288 [details] > it seems to work! > > View in context: > https://bugs.webkit.org/attachment.cgi?id=284288&action=review > > > Source/JavaScriptCore/ChangeLog:26 > > + with DestructionMode::Needed and DestructionMode::NotNeeded, but I felt like that involves > > FWIW, I think this is nicer style. > > > Source/JavaScriptCore/heap/MarkedSpace.cpp:132 > > + if (functor(subspace.largeAllocator, 0, attributes) == IterationStatus::Done) > > It's sort of confusing to use 0 to indicate to the functor that the > allocator is the large allocator. > Could we indicate this in another way? Maybe Optional<size_t> or something > else? > Or has this been the paradigm for a while? This particular code has always initialized cellSize to 0 for large allocators.
Note You need to log in before you can comment on or make changes to this bug.