Thanks a lot, Kevin! Looping Lasse in (if you don't mind, Lasse.)
http://codereview.chromium.org/1563005/diff/2001/3005 File src/heap.h (right): http://codereview.chromium.org/1563005/diff/2001/3005#newcode896 src/heap.h:896: // Allocate unitialized fixed array. On 2010/04/07 13:34:36, Kevin Millikin wrote:
There's a typo in this comment: unitialized ==> uninitialized.
Done. http://codereview.chromium.org/1563005/diff/2001/3005#newcode898 src/heap.h:898: static Object* AllocateRawFixedArray(int length, On 2010/04/07 13:34:36, Kevin Millikin wrote:
The other functions have a default PretenureFlag argument. Why is
this one
overloaded?
Those have slight semantic difference formerly hidden in callers---the first one only allocates in new and large object (if fixed array is too big) spaces. The new one, as it could try to allocate in old space, needs a special check if fixed array still fits into old space. http://codereview.chromium.org/1563005/diff/2001/3006 File src/ia32/codegen-ia32.cc (right): http://codereview.chromium.org/1563005/diff/2001/3006#newcode6508 src/ia32/codegen-ia32.cc:6508: cache.ToRegister(); On 2010/04/07 13:34:36, Kevin Millikin wrote:
key and cache could be the same register (if we had JS code
%_GetFromCache(x,
x)). Since that shouldn't be the case (we control the call site),
maybe assert
that !key.reg().is(cache.reg()).
Kevin, I quite agree that they always should be different. However, way assert that? It looks like the rest of the code doesn't depend on this assumption. Still adding ASSERT. http://codereview.chromium.org/1563005 -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev To unsubscribe, reply using "remove me" as the subject.
