LGTM with the 'flat' naming fixed.
http://codereview.chromium.org/6991007/diff/6001/src/objects-inl.h File src/objects-inl.h (right): http://codereview.chromium.org/6991007/diff/6001/src/objects-inl.h#newcode183 src/objects-inl.h:183: uint32_t type = HeapObject::cast(this)->map()->instance_type(); Assert that the flat string enum is zero. http://codereview.chromium.org/6991007/diff/6001/src/objects-inl.h#newcode2029 src/objects-inl.h:2029: if (this->IsFlat()) { There is some name confusion here. Until now the nomenclature has been that a cons string that has been flattened is a flat string (ie the second part has length 0). But now with the introduction of a new FlatString class it makes no sense to ask whether a cons string is flat. Do we need an 'almostflat' concept? Or should we not use IsFlat here or anywhere else. It will not make use of the fact that we know it is a cons string, so it will probably be wasting time querying the shape of the string before looking at the second part. I think we need to search the VM for the word flat and rename one of the concepts. http://codereview.chromium.org/6991007/ -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
