Reviewers: Yang, Message: PTAL.
Most of the changes are simple renamings to increase sanity levels; but there
are also no less than four real bug fixes :-) https://codereview.chromium.org/11413014/diff/1/src/arm/code-stubs-arm.cc File src/arm/code-stubs-arm.cc (right): https://codereview.chromium.org/11413014/diff/1/src/arm/code-stubs-arm.cc#newcode870 src/arm/code-stubs-arm.cc:870: __ bic(scratch1, dst_exponent, Operand(HeapNumber::kSignMask)); Bug fix 1: This code cleared the mantissa's sign bit! https://codereview.chromium.org/11413014/diff/1/src/arm/code-stubs-arm.cc#newcode878 src/arm/code-stubs-arm.cc:878: DoubleIs32BitInteger(masm, dst_exponent, dst_mantissa, scratch1, scratch2, Bug fix 2: This call passed in the exponent/mantissa registers in the wrong order. https://codereview.chromium.org/11413014/diff/1/src/arm/code-stubs-arm.cc#newcode883 src/arm/code-stubs-arm.cc:883: __ Pop(dst_exponent, dst_mantissa); Bug fix 3: Restore the "object" register before reloading the double value from it. https://codereview.chromium.org/11413014/diff/1/src/arm/code-stubs-arm.cc#newcode891 src/arm/code-stubs-arm.cc:891: __ Pop(dst_exponent, dst_mantissa); Bug fix 4: Restore original inputs before calling the runtime. Description: Fix register confusion in non-VFP3 BinaryOpStubs on ARM Please review this at https://codereview.chromium.org/11413014/ SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge Affected files: M src/arm/code-stubs-arm.cc M src/arm/stub-cache-arm.cc -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
