OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/code-factory.h" | 5 #include "src/code-factory.h" |
6 | 6 |
7 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
8 #include "src/ic/ic.h" | 8 #include "src/ic/ic.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 356 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
367 } | 367 } |
368 | 368 |
369 // static | 369 // static |
370 Callable CodeFactory::Call(Isolate* isolate, ConvertReceiverMode mode, | 370 Callable CodeFactory::Call(Isolate* isolate, ConvertReceiverMode mode, |
371 TailCallMode tail_call_mode) { | 371 TailCallMode tail_call_mode) { |
372 return Callable(isolate->builtins()->Call(mode, tail_call_mode), | 372 return Callable(isolate->builtins()->Call(mode, tail_call_mode), |
373 CallTrampolineDescriptor(isolate)); | 373 CallTrampolineDescriptor(isolate)); |
374 } | 374 } |
375 | 375 |
376 // static | 376 // static |
| 377 Callable CodeFactory::CallWithSpread(Isolate* isolate) { |
| 378 return Callable(isolate->builtins()->CallWithSpread(), |
| 379 CallTrampolineDescriptor(isolate)); |
| 380 } |
| 381 |
| 382 // static |
377 Callable CodeFactory::CallFunction(Isolate* isolate, ConvertReceiverMode mode) { | 383 Callable CodeFactory::CallFunction(Isolate* isolate, ConvertReceiverMode mode) { |
378 return Callable(isolate->builtins()->CallFunction(mode), | 384 return Callable(isolate->builtins()->CallFunction(mode), |
379 CallTrampolineDescriptor(isolate)); | 385 CallTrampolineDescriptor(isolate)); |
380 } | 386 } |
381 | 387 |
382 // static | 388 // static |
383 Callable CodeFactory::Construct(Isolate* isolate) { | 389 Callable CodeFactory::Construct(Isolate* isolate) { |
384 return Callable(isolate->builtins()->Construct(), | 390 return Callable(isolate->builtins()->Construct(), |
385 ConstructTrampolineDescriptor(isolate)); | 391 ConstructTrampolineDescriptor(isolate)); |
386 } | 392 } |
387 | 393 |
388 // static | 394 // static |
389 Callable CodeFactory::ConstructWithSpread(Isolate* isolate) { | 395 Callable CodeFactory::ConstructWithSpread(Isolate* isolate) { |
390 return Callable(isolate->builtins()->ConstructWithSpread(), | 396 return Callable(isolate->builtins()->ConstructWithSpread(), |
391 ConstructTrampolineDescriptor(isolate)); | 397 ConstructTrampolineDescriptor(isolate)); |
392 } | 398 } |
393 | 399 |
394 // static | 400 // static |
395 Callable CodeFactory::ConstructFunction(Isolate* isolate) { | 401 Callable CodeFactory::ConstructFunction(Isolate* isolate) { |
396 return Callable(isolate->builtins()->ConstructFunction(), | 402 return Callable(isolate->builtins()->ConstructFunction(), |
397 ConstructTrampolineDescriptor(isolate)); | 403 ConstructTrampolineDescriptor(isolate)); |
398 } | 404 } |
399 | 405 |
400 // static | 406 // static |
401 Callable CodeFactory::InterpreterPushArgsAndCall(Isolate* isolate, | 407 Callable CodeFactory::InterpreterPushArgsAndCall(Isolate* isolate, |
402 TailCallMode tail_call_mode, | 408 TailCallMode tail_call_mode, |
403 CallableType function_type) { | 409 InterpreterPushArgsMode mode) { |
404 return Callable(isolate->builtins()->InterpreterPushArgsAndCall( | 410 return Callable( |
405 tail_call_mode, function_type), | 411 isolate->builtins()->InterpreterPushArgsAndCall(tail_call_mode, mode), |
406 InterpreterPushArgsAndCallDescriptor(isolate)); | 412 InterpreterPushArgsAndCallDescriptor(isolate)); |
407 } | 413 } |
408 | 414 |
409 // static | 415 // static |
410 Callable CodeFactory::InterpreterPushArgsAndConstruct( | 416 Callable CodeFactory::InterpreterPushArgsAndConstruct( |
411 Isolate* isolate, PushArgsConstructMode mode) { | 417 Isolate* isolate, InterpreterPushArgsMode mode) { |
412 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(mode), | 418 return Callable(isolate->builtins()->InterpreterPushArgsAndConstruct(mode), |
413 InterpreterPushArgsAndConstructDescriptor(isolate)); | 419 InterpreterPushArgsAndConstructDescriptor(isolate)); |
414 } | 420 } |
415 | 421 |
416 // static | 422 // static |
417 Callable CodeFactory::InterpreterPushArgsAndConstructArray(Isolate* isolate) { | 423 Callable CodeFactory::InterpreterPushArgsAndConstructArray(Isolate* isolate) { |
418 return Callable(isolate->builtins()->InterpreterPushArgsAndConstructArray(), | 424 return Callable(isolate->builtins()->InterpreterPushArgsAndConstructArray(), |
419 InterpreterPushArgsAndConstructArrayDescriptor(isolate)); | 425 InterpreterPushArgsAndConstructArrayDescriptor(isolate)); |
420 } | 426 } |
421 | 427 |
(...skipping 17 matching lines...) Expand all Loading... |
439 } | 445 } |
440 | 446 |
441 // static | 447 // static |
442 Callable CodeFactory::FunctionPrototypeBind(Isolate* isolate) { | 448 Callable CodeFactory::FunctionPrototypeBind(Isolate* isolate) { |
443 return Callable(isolate->builtins()->FunctionPrototypeBind(), | 449 return Callable(isolate->builtins()->FunctionPrototypeBind(), |
444 BuiltinDescriptor(isolate)); | 450 BuiltinDescriptor(isolate)); |
445 } | 451 } |
446 | 452 |
447 } // namespace internal | 453 } // namespace internal |
448 } // namespace v8 | 454 } // namespace v8 |
OLD | NEW |