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

Side by Side Diff: src/compiler.cc

Issue 2625873009: [ast] Remove heap accesses from AST numbering (Closed)
Patch Set: Address nits Created 3 years, 11 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/ast/ast-value-factory.h ('k') | src/compiler/ast-graph-builder.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/compiler.h" 5 #include "src/compiler.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <memory> 8 #include <memory>
9 9
10 #include "src/asmjs/asm-js.h" 10 #include "src/asmjs/asm-js.h"
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after
431 InstallUnoptimizedCode(job->info()); 431 InstallUnoptimizedCode(job->info());
432 job->RecordUnoptimizedCompilationStats(); 432 job->RecordUnoptimizedCompilationStats();
433 } 433 }
434 return status; 434 return status;
435 } 435 }
436 436
437 bool Renumber(ParseInfo* parse_info, 437 bool Renumber(ParseInfo* parse_info,
438 Compiler::EagerInnerFunctionLiterals* eager_literals) { 438 Compiler::EagerInnerFunctionLiterals* eager_literals) {
439 RuntimeCallTimerScope runtimeTimer(parse_info->isolate(), 439 RuntimeCallTimerScope runtimeTimer(parse_info->isolate(),
440 &RuntimeCallStats::CompileRenumber); 440 &RuntimeCallStats::CompileRenumber);
441 if (!AstNumbering::Renumber(parse_info->isolate(), parse_info->zone(), 441 if (!AstNumbering::Renumber(
442 parse_info->literal(), eager_literals)) { 442 parse_info->isolate()->stack_guard()->real_climit(),
443 parse_info->zone(), parse_info->literal(), eager_literals)) {
443 return false; 444 return false;
444 } 445 }
445 Handle<SharedFunctionInfo> shared_info = parse_info->shared_info(); 446 Handle<SharedFunctionInfo> shared_info = parse_info->shared_info();
446 if (!shared_info.is_null()) { 447 if (!shared_info.is_null()) {
447 FunctionLiteral* lit = parse_info->literal(); 448 FunctionLiteral* lit = parse_info->literal();
448 shared_info->set_ast_node_count(lit->ast_node_count()); 449 shared_info->set_ast_node_count(lit->ast_node_count());
449 if (lit->dont_optimize_reason() != kNoReason) { 450 if (lit->dont_optimize_reason() != kNoReason) {
450 shared_info->DisableOptimization(lit->dont_optimize_reason()); 451 shared_info->DisableOptimization(lit->dont_optimize_reason());
451 } 452 }
452 if (lit->flags() & AstProperties::kMustUseIgnitionTurbo) { 453 if (lit->flags() & AstProperties::kMustUseIgnitionTurbo) {
(...skipping 1309 matching lines...) Expand 10 before | Expand all | Expand 10 after
1762 } 1763 }
1763 1764
1764 if (shared->is_compiled()) { 1765 if (shared->is_compiled()) {
1765 // TODO(mvstanton): pass pretenure flag to EnsureLiterals. 1766 // TODO(mvstanton): pass pretenure flag to EnsureLiterals.
1766 JSFunction::EnsureLiterals(function); 1767 JSFunction::EnsureLiterals(function);
1767 } 1768 }
1768 } 1769 }
1769 1770
1770 } // namespace internal 1771 } // namespace internal
1771 } // namespace v8 1772 } // namespace v8
OLDNEW
« no previous file with comments | « src/ast/ast-value-factory.h ('k') | src/compiler/ast-graph-builder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698