Almost looks good to me. A few comments below.
http://codereview.chromium.org/4735003/diff/1/src/arm/stub-cache-arm.cc File src/arm/stub-cache-arm.cc (right): http://codereview.chromium.org/4735003/diff/1/src/arm/stub-cache-arm.cc#newcode1734 src/arm/stub-cache-arm.cc:1734: __ Ldrd(r4, r5, MemOperand(r0, HeapNumber::kValueOffset - kHeapObjectTag)); Use FieldMemOperand for this. http://codereview.chromium.org/4735003/diff/1/src/arm/stub-cache-arm.cc#newcode1744 src/arm/stub-cache-arm.cc:1744: __ bic(r9, r3, Operand((1 << 22) | 0xf | (1 << 24))); This should be with named constants. For example bic(r9, r3, Operand(kVFPExceptionMask | kVFPRoundingModeMask | kWhateverBit24Means) orr(r9, r9, Operand(kVFPRoundToZeroBits)) http://codereview.chromium.org/4735003/diff/1/src/arm/stub-cache-arm.cc#newcode1758 src/arm/stub-cache-arm.cc:1758: __ tst(r9, Operand(0xf)); Named constant here too. http://codereview.chromium.org/4735003/diff/1/src/arm/stub-cache-arm.cc#newcode1805 src/arm/stub-cache-arm.cc:1805: This non-VFP code makes testing difficult and it only catches trivial inputs. I think it is actually preferable to just return undefined if there is no VFP. This has the advantage of being 'obviously correct'. http://codereview.chromium.org/4735003/ -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
