Sorry about the kSmiTagMask type (should be kSmiTag). New snapshot uploaded.
On Tue, Dec 22, 2009 at 2:07 PM, <[email protected]> wrote: > Reviewers: fschneider, > > Description: > Make the FastCloneShallowArrayStub a bit prettier. > > [email protected] > > Please review this at http://codereview.chromium.org/507069 > > SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/ > > Affected files: > M bleeding_edge/src/ia32/codegen-ia32.cc > > > Index: bleeding_edge/src/ia32/codegen-ia32.cc > =================================================================== > --- bleeding_edge/src/ia32/codegen-ia32.cc (revision 3516) > +++ bleeding_edge/src/ia32/codegen-ia32.cc (working copy) > @@ -6662,18 +6662,14 @@ > > // Load boilerplate object into ecx and check if we need to create a > // boilerplate. > + Label slow_case; > __ mov(ecx, Operand(esp, 3 * kPointerSize)); > __ mov(eax, Operand(esp, 2 * kPointerSize)); > - ASSERT(kPointerSize == 4); > - __ mov(ecx, FieldOperand(ecx, > - eax, > - times_2, > - FixedArray::kHeaderSize)); > + ASSERT((kPointerSize == 4) && (kSmiTagSize == 1) && (kSmiTagMask == 0)); > + __ mov(ecx, FieldOperand(ecx, eax, times_2, FixedArray::kHeaderSize)); > __ cmp(ecx, Factory::undefined_value()); > - Label slow_case; > __ j(equal, &slow_case); > > - > // Allocate both the JS array and the elements array in one big > // allocation. This avoids multiple limit checks. > __ AllocateInNewSpace(size, eax, ebx, edx, &slow_case, TAG_OBJECT); > > > -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
