Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(616)

Side by Side Diff: src/code-factory.cc

Issue 1760253003: [crankshaft] Support ES6 tail call elimination. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@tco-crank-2
Patch Set: Addressing comments Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/code-factory.h ('k') | src/crankshaft/arm/lithium-arm.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
358 358
359 359
360 // static 360 // static
361 Callable CodeFactory::ArgumentAdaptor(Isolate* isolate) { 361 Callable CodeFactory::ArgumentAdaptor(Isolate* isolate) {
362 return Callable(isolate->builtins()->ArgumentsAdaptorTrampoline(), 362 return Callable(isolate->builtins()->ArgumentsAdaptorTrampoline(),
363 ArgumentAdaptorDescriptor(isolate)); 363 ArgumentAdaptorDescriptor(isolate));
364 } 364 }
365 365
366 366
367 // static 367 // static
368 Callable CodeFactory::Call(Isolate* isolate, ConvertReceiverMode mode) { 368 Callable CodeFactory::Call(Isolate* isolate, ConvertReceiverMode mode,
369 return Callable(isolate->builtins()->Call(mode), 369 TailCallMode tail_call_mode) {
370 return Callable(isolate->builtins()->Call(mode, tail_call_mode),
370 CallTrampolineDescriptor(isolate)); 371 CallTrampolineDescriptor(isolate));
371 } 372 }
372 373
373 374
374 // static 375 // static
375 Callable CodeFactory::CallFunction(Isolate* isolate, ConvertReceiverMode mode) { 376 Callable CodeFactory::CallFunction(Isolate* isolate, ConvertReceiverMode mode) {
376 return Callable(isolate->builtins()->CallFunction(mode), 377 return Callable(isolate->builtins()->CallFunction(mode),
377 CallTrampolineDescriptor(isolate)); 378 CallTrampolineDescriptor(isolate));
378 } 379 }
379 380
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
411 // static 412 // static
412 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) { 413 Callable CodeFactory::InterpreterCEntry(Isolate* isolate, int result_size) {
413 // Note: If we ever use fpregs in the interpreter then we will need to 414 // Note: If we ever use fpregs in the interpreter then we will need to
414 // save fpregs too. 415 // save fpregs too.
415 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister); 416 CEntryStub stub(isolate, result_size, kDontSaveFPRegs, kArgvInRegister);
416 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate)); 417 return Callable(stub.GetCode(), InterpreterCEntryDescriptor(isolate));
417 } 418 }
418 419
419 } // namespace internal 420 } // namespace internal
420 } // namespace v8 421 } // namespace v8
OLDNEW
« no previous file with comments | « src/code-factory.h ('k') | src/crankshaft/arm/lithium-arm.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698