drive by comments.
http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc File src/arm/code-stubs-arm.cc (right): http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc#newcode639 src/arm/code-stubs-arm.cc:639: __ vldr(double_scratch, FieldMemOperand(object, HeapNumber::kValueOffset)); Use Ldrd, it will be faster (no transfer VFP-ARM) and you don't need to require VFP3. http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc#newcode643 src/arm/code-stubs-arm.cc:643: // sign, exponent and mantissa. the and and mov could be rewritten as a Ubfx http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc#newcode678 src/arm/code-stubs-arm.cc:678: // scratch3 = 32 - scratch3. __ rsb(scratch3, scratch3, Operand(32), SetCC) can replace all the instruction below http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc#newcode684 src/arm/code-stubs-arm.cc:684: // Negate scratch3. __ rsb(scratch3, scratch3, Operand(0)) will neagete scratch3 http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc#newcode696 src/arm/code-stubs-arm.cc:696: // Restore sign if necessary. __ cmp(sign, Operand(0)); http://codereview.chromium.org/6658034/diff/2001/src/arm/code-stubs-arm.cc#newcode697 src/arm/code-stubs-arm.cc:697: __ tst(sign, sign); rsb again here. http://codereview.chromium.org/6658034/ -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
