Chromium Code Reviews| Index: src/builtins.cc |
| =================================================================== |
| --- src/builtins.cc (revision 5834) |
| +++ src/builtins.cc (working copy) |
| @@ -1081,25 +1081,20 @@ |
| ASSERT(!CalledAsConstructor()); |
| const bool is_construct = false; |
| - // We expect four more arguments: function, callback, call data, and holder. |
| + // We expect four more arguments: callback, function, call data, and holder. |
| const int args_length = args.length() - 4; |
| ASSERT(args_length >= 0); |
| - Handle<JSFunction> function = args.at<JSFunction>(args_length); |
| - Object* callback_obj = args[args_length + 1]; |
| - Handle<Object> data = args.at<Object>(args_length + 2); |
| - Handle<JSObject> checked_holder = args.at<JSObject>(args_length + 3); |
| + Object* callback_obj = args[args_length + 2]; |
| #ifdef DEBUG |
| + Handle<JSFunction> function = args.at<JSFunction>(args_length); |
|
antonm
2010/11/17 14:10:32
maybe move this check after new_args construction
SeRya
2010/11/17 15:36:29
new_args.Callee() is v8::Handle. Do you think it w
antonm
2010/11/18 11:36:08
I don't think we care in debug mode. And those ha
|
| + Handle<JSObject> checked_holder = args.at<JSObject>(args_length + 3); |
| VerifyTypeCheck(checked_holder, function); |
| #endif |
| - CustomArguments custom; |
| - v8::ImplementationUtilities::PrepareArgumentsData(custom.end(), |
| - *data, *function, *checked_holder); |
| - |
| v8::Arguments new_args = v8::ImplementationUtilities::NewArguments( |
| - custom.end(), |
|
antonm
2010/11/17 14:10:32
do we use CustomArguments? ::end()?
SeRya
2010/11/17 15:36:29
We do.
|
| + &args[args_length + 1], |
| &args[0] - 1, |
| args_length - 1, |
| is_construct); |