LGTM if bug fixed.

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc
File src/x64/code-stubs-x64.cc (right):

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc#newcode1535
src/x64/code-stubs-x64.cc:1535: __ subq(rsp, Immediate(kPointerSize));
Use kDoubleSize instead (id it exists, otherwise introduce it first).

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc#newcode1546
src/x64/code-stubs-x64.cc:1546: __ Move(rbx,
Factory::heap_number_map());
Use LoadRoot.

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc#newcode1558
src/x64/code-stubs-x64.cc:1558: __ movq(rdx, rbx);
Use movq(rdx,xmm1) to avoid dependencies.

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc#newcode1561
src/x64/code-stubs-x64.cc:1561: // ST[0] == double value
The untagged case haven't pushed the value on the FPU stack here. It
only will if we miss the cache.

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc#newcode1658
src/x64/code-stubs-x64.cc:1658: // we cause a scavenging GC so that
future allocations will succeed.
Why don't we just allocate the size of a HeapNumber, set its map,  and
jump back to just after the failed allocation?

http://codereview.chromium.org/6580032/diff/1/src/x64/code-stubs-x64.cc#newcode1730
src/x64/code-stubs-x64.cc:1730: __ fld_d(Operand(rsp, 0));
Can't you just fld_d(FieldOperand(kScratchRegister, ...)) directly?

http://codereview.chromium.org/6580032/diff/1/src/x64/codegen-x64.cc
File src/x64/codegen-x64.cc (right):

http://codereview.chromium.org/6580032/diff/1/src/x64/codegen-x64.cc#newcode7034
src/x64/codegen-x64.cc:7034: TranscendentalCacheStub::UNTAGGED);
Should these really be UNTAGGED?

http://codereview.chromium.org/6580032/diff/1/src/x64/full-codegen-x64.cc
File src/x64/full-codegen-x64.cc (right):

http://codereview.chromium.org/6580032/diff/1/src/x64/full-codegen-x64.cc#newcode2891
src/x64/full-codegen-x64.cc:2891: TranscendentalCacheStub::UNTAGGED);
And should these be UNTAGGED in the full compiler? Doesn't seem right!

http://codereview.chromium.org/6580032/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to