On 2012/11/15 17:28:42, Jakob wrote:
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.
LGTM. Nice catch!
https://codereview.chromium.org/11413014/
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev