LGTM
http://codereview.chromium.org/151142/diff/1/5 File src/x64/codegen-x64.cc (right): http://codereview.chromium.org/151142/diff/1/5#newcode5765 Line 5765: __ movq(rax, Operand(rsp, 2 * kPointerSize)); // 2 ~ return address, function Is there no constant that can be used here? The comment is not immediately understandable. Perhaps add a section at the top: /* * Implements "value instanceof function" operator. * Expected input state: * rsp[0] : return address * rsp[1] : function pointer * rsp[2] : value */ http://codereview.chromium.org/151142/diff/1/5#newcode5795 Line 5795: __ Cmp(rcx, Factory::null_value()); Could you store Factory::null_value() in kScratchRegister outside the loop? Should save an instruction. http://codereview.chromium.org/151142/diff/1/5#newcode5802 Line 5802: __ Set(rax, 0); use __ xor_(rax, rax) instead? It affects some flags, which is why it's not done automatically by Set, but that doesn't matter here. http://codereview.chromium.org/151142/diff/1/2 File src/x64/macro-assembler-x64.cc (right): http://codereview.chromium.org/151142/diff/1/2#newcode416 Line 416: testb(kScratchRegister, Immediate(1 << Map::kHasNonInstancePrototype)); Why not use testb(Operand,Immediate). Should be: F6 /0 ib TEST r/m8, imm8 http://codereview.chromium.org/151142/diff/1/2#newcode421 Line 421: FieldOperand(function, JSFunction::kPrototypeOrInitialMapOffset)); Indentation. http://codereview.chromium.org/151142/diff/1/4 File src/x64/macro-assembler-x64.h (right): http://codereview.chromium.org/151142/diff/1/4#newcode179 Line 179: // They may be the same register. And map may be kScratchRegister, since it isn't used by the macro otherwise. http://codereview.chromium.org/151142/diff/1/4#newcode388 Line 388: reinterpret_cast<byte*>(FUNCTION_ADDR(LogGeneratedCodeCoverage)); \ Could you align the backslashes? http://codereview.chromium.org/151142 --~--~---------~--~----~------------~-------~--~----~ v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev -~----------~----~----~----~------~----~------~--~---
