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

Side by Side Diff: src/compiler/instruction.cc

Issue 2347563004: [turbofan] Avoid large deopt blocks (Closed)
Patch Set: [turbofan] Avoid large deopt blocks Created 4 years, 2 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/instruction.h ('k') | src/compiler/register-allocator.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/compiler/common-operator.h" 5 #include "src/compiler/common-operator.h"
6 #include "src/compiler/graph.h" 6 #include "src/compiler/graph.h"
7 #include "src/compiler/instruction.h" 7 #include "src/compiler/instruction.h"
8 #include "src/compiler/schedule.h" 8 #include "src/compiler/schedule.h"
9 #include "src/compiler/state-values-utils.h" 9 #include "src/compiler/state-values-utils.h"
10 10
(...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after
582 ao_number_(rpo_number), 582 ao_number_(rpo_number),
583 rpo_number_(rpo_number), 583 rpo_number_(rpo_number),
584 loop_header_(loop_header), 584 loop_header_(loop_header),
585 loop_end_(loop_end), 585 loop_end_(loop_end),
586 code_start_(-1), 586 code_start_(-1),
587 code_end_(-1), 587 code_end_(-1),
588 deferred_(deferred), 588 deferred_(deferred),
589 handler_(handler), 589 handler_(handler),
590 needs_frame_(false), 590 needs_frame_(false),
591 must_construct_frame_(false), 591 must_construct_frame_(false),
592 must_deconstruct_frame_(false), 592 must_deconstruct_frame_(false) {}
593 last_deferred_(RpoNumber::Invalid()) {}
594
595 593
596 size_t InstructionBlock::PredecessorIndexOf(RpoNumber rpo_number) const { 594 size_t InstructionBlock::PredecessorIndexOf(RpoNumber rpo_number) const {
597 size_t j = 0; 595 size_t j = 0;
598 for (InstructionBlock::Predecessors::const_iterator i = predecessors_.begin(); 596 for (InstructionBlock::Predecessors::const_iterator i = predecessors_.begin();
599 i != predecessors_.end(); ++i, ++j) { 597 i != predecessors_.end(); ++i, ++j) {
600 if (*i == rpo_number) break; 598 if (*i == rpo_number) break;
601 } 599 }
602 return j; 600 return j;
603 } 601 }
604 602
(...skipping 433 matching lines...) Expand 10 before | Expand all | Expand 10 after
1038 for (int i = 0; i < code.InstructionBlockCount(); i++) { 1036 for (int i = 0; i < code.InstructionBlockCount(); i++) {
1039 printable_block.block_ = code.InstructionBlockAt(RpoNumber::FromInt(i)); 1037 printable_block.block_ = code.InstructionBlockAt(RpoNumber::FromInt(i));
1040 os << printable_block; 1038 os << printable_block;
1041 } 1039 }
1042 return os; 1040 return os;
1043 } 1041 }
1044 1042
1045 } // namespace compiler 1043 } // namespace compiler
1046 } // namespace internal 1044 } // namespace internal
1047 } // namespace v8 1045 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/instruction.h ('k') | src/compiler/register-allocator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698