lgtm



https://chromiumcodereview.appspot.com/10381053/diff/1/src/mark-compact.cc
File src/mark-compact.cc (left):

https://chromiumcodereview.appspot.com/10381053/diff/1/src/mark-compact.cc#oldcode683
src/mark-compact.cc:683: if (collect_maps_) CreateBackPointers();
side effect of always having back pointer and always treating it as a
strong reference is that map trees will never be able to die from the
root (which could previously happen when running V8 with
--nocollect-maps).

We have seen obscure cases when this would lead to OOM.

Consider making back pointer weak when appropriate to fully mimic old
--collect-maps behavior.

https://chromiumcodereview.appspot.com/10381053/diff/1/src/objects.cc
File src/objects.cc (right):

https://chromiumcodereview.appspot.com/10381053/diff/1/src/objects.cc#newcode5172
src/objects.cc:5172: Object* header = *Header();
is this change really required?

https://chromiumcodereview.appspot.com/10381053/diff/1/src/objects.cc#newcode5174
src/objects.cc:5174: proto_trans_->length() >=
Map::kProtoTransitionHeaderSize);
should not this just be >?

https://chromiumcodereview.appspot.com/10381053/diff/1/src/objects.h
File src/objects.h (right):

https://chromiumcodereview.appspot.com/10381053/diff/1/src/objects.h#newcode4729
src/objects.h:4729: DECL_ACCESSORS(back_pointer, Object)
I would prefer if this was declared as GetBackPointer() and
SetBackPointer() to show that this is not a trivial getter/setter.

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

https://chromiumcodereview.appspot.com/10381053/diff/1/src/profile-generator.cc#newcode2155
src/profile-generator.cc:2155: SetInternalReference(map, entry,
You might also want to include back pointer as a strong reference (which
it is).

https://chromiumcodereview.appspot.com/10381053/

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

Reply via email to