Thanks for digging into this issue! Please sort out GenerateSnapshot sequence
and you are done.

https://chromiumcodereview.appspot.com/9594020/diff/1/src/profile-generator.cc
File src/profile-generator.cc (left):

https://chromiumcodereview.appspot.com/9594020/diff/1/src/profile-generator.cc#oldcode1674
src/profile-generator.cc:1674: } else if (object->IsJSGlobalObject()) {
Will this fall through down to the generic case that creates "object,
HeapEntry::kHidden"? Should you create a stub entry instead that you
will properly tag in the final pass?

https://chromiumcodereview.appspot.com/9594020/diff/1/src/profile-generator.cc
File src/profile-generator.cc (right):

https://chromiumcodereview.appspot.com/9594020/diff/1/src/profile-generator.cc#newcode3165
src/profile-generator.cc:3165: &&
v8_heap_explorer_.IterateAndSetObjectNames(&filler);
As we have discussed offline, please split GenerateSnapshot into 3
parts:

1. TagGlobalObjects and everything else that changes the heap
== Garbage collection ==
2. Local scope block protected by AssertNoAllocations, running
serialization code assuming that no heap modifications are made.
3. Code that can again can cause heap allocations / reallocations.

https://chromiumcodereview.appspot.com/9594020/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to