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

Side by Side Diff: src/crankshaft/lithium.cc

Issue 2150523002: [turbofan] Do not use the self reference for turbofan functions. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Pass in the self reference instead of using an is_self_ref_available flag. Created 4 years, 5 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/compiler/code-generator.cc ('k') | src/full-codegen/full-codegen.cc » ('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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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/crankshaft/lithium.h" 5 #include "src/crankshaft/lithium.h"
6 6
7 #include "src/ast/scopes.h" 7 #include "src/ast/scopes.h"
8 8
9 #if V8_TARGET_ARCH_IA32 9 #if V8_TARGET_ARCH_IA32
10 #include "src/crankshaft/ia32/lithium-ia32.h" // NOLINT 10 #include "src/crankshaft/ia32/lithium-ia32.h" // NOLINT
(...skipping 439 matching lines...) Expand 10 before | Expand all | Expand 10 after
450 CodeObjectRequired::kYes); 450 CodeObjectRequired::kYes);
451 // Code serializer only takes unoptimized code. 451 // Code serializer only takes unoptimized code.
452 DCHECK(!info()->will_serialize()); 452 DCHECK(!info()->will_serialize());
453 LCodeGen generator(this, &assembler, info()); 453 LCodeGen generator(this, &assembler, info());
454 454
455 MarkEmptyBlocks(); 455 MarkEmptyBlocks();
456 456
457 if (generator.GenerateCode()) { 457 if (generator.GenerateCode()) {
458 generator.CheckEnvironmentUsage(); 458 generator.CheckEnvironmentUsage();
459 CodeGenerator::MakeCodePrologue(info(), "optimized"); 459 CodeGenerator::MakeCodePrologue(info(), "optimized");
460 Handle<Code> code = 460 Handle<Code> code = CodeGenerator::MakeCodeEpilogue(
461 CodeGenerator::MakeCodeEpilogue(&assembler, nullptr, info()); 461 &assembler, nullptr, info(), assembler.CodeObject());
462 generator.FinishCode(code); 462 generator.FinishCode(code);
463 CommitDependencies(code); 463 CommitDependencies(code);
464 generator.source_position_table_builder()->EndJitLogging( 464 generator.source_position_table_builder()->EndJitLogging(
465 AbstractCode::cast(*code)); 465 AbstractCode::cast(*code));
466 code->set_is_crankshafted(true); 466 code->set_is_crankshafted(true);
467 467
468 CodeGenerator::PrintCode(code, info()); 468 CodeGenerator::PrintCode(code, info());
469 DCHECK(!(info()->GetMustNotHaveEagerFrame() && 469 DCHECK(!(info()->GetMustNotHaveEagerFrame() &&
470 generator.NeedsEagerFrame())); 470 generator.NeedsEagerFrame()));
471 return code; 471 return code;
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after
720 720
721 LPhase::~LPhase() { 721 LPhase::~LPhase() {
722 if (ShouldProduceTraceOutput()) { 722 if (ShouldProduceTraceOutput()) {
723 isolate()->GetHTracer()->TraceLithium(name(), chunk_); 723 isolate()->GetHTracer()->TraceLithium(name(), chunk_);
724 } 724 }
725 } 725 }
726 726
727 727
728 } // namespace internal 728 } // namespace internal
729 } // namespace v8 729 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/code-generator.cc ('k') | src/full-codegen/full-codegen.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698