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()) {
On 2012/03/05 16:21:58, Mikhail Naganov (Chromium) wrote:
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?
It should fall into JSObject at 1703 which is the superclass for
JSGLobalObject. The code for both cases seems to be the same now, so I
killed this one.

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);
On 2012/03/05 16:21:58, Mikhail Naganov (Chromium) wrote:
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.
I checked the AssertNoAllocation class and it doesn't seem to make any
difference here.
The code that failed does not make any new allocations, it instead
reassigns a reference from one object to another. But it was enough to
fail, because the number of retainers has changed between count and fill
passes.
So I think it's ok to leave it as is, and keep the AssertNoAllocation
cover the region it currently covers. WDYT?

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

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

Reply via email to