lgtm
https://chromiumcodereview.appspot.com/9643001/diff/3001/src/hydrogen.cc File src/hydrogen.cc (right): https://chromiumcodereview.appspot.com/9643001/diff/3001/src/hydrogen.cc#newcode5233 src/hydrogen.cc:5233: // If the function uses arguments object check that inlining of functions [...] uses _the_ arguments object [...] https://chromiumcodereview.appspot.com/9643001/diff/3001/src/hydrogen.cc#newcode5234 src/hydrogen.cc:5234: // with arguments object is enabled and variable arguments is stack allocated. [...] and the arguments-variable [...] https://chromiumcodereview.appspot.com/9643001/diff/3001/src/hydrogen.cc#newcode5707 src/hydrogen.cc:5707: if (!receiver->IsAllocateObject()) { You can use receiver->type().IsJSObject() instead. Result of object-literal is also a JSObject for example. https://chromiumcodereview.appspot.com/9643001/diff/3001/src/runtime.cc File src/runtime.cc (right): https://chromiumcodereview.appspot.com/9643001/diff/3001/src/runtime.cc#newcode8478 src/runtime.cc:8478: MaterializeArgumentsObjectInFrame(isolate, frame); You could move this into the loop above with iterating from [0..jsframes[ https://chromiumcodereview.appspot.com/9643001/diff/3001/src/x64/lithium-x64.cc File src/x64/lithium-x64.cc (right): https://chromiumcodereview.appspot.com/9643001/diff/3001/src/x64/lithium-x64.cc#newcode1096 src/x64/lithium-x64.cc:1096: LOperand* receiver = UseRegisterAtStart(instr->receiver()); I think it does not matter with DefineSameAsFirst, but on ia32 this is defined as UseRegister. Maybe we should be consistent. https://chromiumcodereview.appspot.com/9643001/diff/7001/test/mjsunit/compiler/inline-arguments.js File test/mjsunit/compiler/inline-arguments.js (right): https://chromiumcodereview.appspot.com/9643001/diff/7001/test/mjsunit/compiler/inline-arguments.js#newcode34 test/mjsunit/compiler/inline-arguments.js:34: assertTrue(this instanceof A); Maybe also add a test where the receiver is wrapped. null or undefined, etc. https://chromiumcodereview.appspot.com/9643001/ -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
