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/compiler/instruction.h" | 5 #include "src/compiler/instruction.h" |
6 | 6 |
7 #include "src/compiler/common-operator.h" | 7 #include "src/compiler/common-operator.h" |
8 #include "src/compiler/generic-node-inl.h" | 8 #include "src/compiler/generic-node-inl.h" |
9 #include "src/compiler/graph.h" | 9 #include "src/compiler/graph.h" |
10 | 10 |
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
323 } | 323 } |
324 | 324 |
325 | 325 |
326 static BasicBlock::RpoNumber GetLoopEndRpo(const BasicBlock* block) { | 326 static BasicBlock::RpoNumber GetLoopEndRpo(const BasicBlock* block) { |
327 if (!block->IsLoopHeader()) return BasicBlock::RpoNumber::Invalid(); | 327 if (!block->IsLoopHeader()) return BasicBlock::RpoNumber::Invalid(); |
328 return BasicBlock::RpoNumber::FromInt(block->loop_end()); | 328 return BasicBlock::RpoNumber::FromInt(block->loop_end()); |
329 } | 329 } |
330 | 330 |
331 | 331 |
332 InstructionBlock::InstructionBlock(Zone* zone, const BasicBlock* block) | 332 InstructionBlock::InstructionBlock(Zone* zone, const BasicBlock* block) |
333 : successors_(block->SuccessorCount(), BasicBlock::RpoNumber::Invalid(), | 333 : successors_(static_cast<int>(block->SuccessorCount()), |
334 zone), | 334 BasicBlock::RpoNumber::Invalid(), zone), |
335 predecessors_(block->PredecessorCount(), BasicBlock::RpoNumber::Invalid(), | 335 predecessors_(static_cast<int>(block->PredecessorCount()), |
336 zone), | 336 BasicBlock::RpoNumber::Invalid(), zone), |
337 phis_(zone), | 337 phis_(zone), |
338 rpo_number_(block->GetRpoNumber()), | 338 rpo_number_(block->GetRpoNumber()), |
339 loop_header_(GetRpo(block->loop_header())), | 339 loop_header_(GetRpo(block->loop_header())), |
340 loop_end_(GetLoopEndRpo(block)), | 340 loop_end_(GetLoopEndRpo(block)), |
341 code_start_(-1), | 341 code_start_(-1), |
342 code_end_(-1) { | 342 code_end_(-1) { |
343 // Map successors and precessors | 343 // Map successors and precessors |
344 size_t index = 0; | 344 size_t index = 0; |
345 for (BasicBlock::Successors::const_iterator it = block->successors_begin(); | 345 for (BasicBlock::Successors::const_iterator it = block->successors_begin(); |
346 it != block->successors_end(); ++it, ++index) { | 346 it != block->successors_end(); ++it, ++index) { |
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
663 os << " B" << (*iter)->id(); | 663 os << " B" << (*iter)->id(); |
664 } | 664 } |
665 os << "\n"; | 665 os << "\n"; |
666 } | 666 } |
667 return os; | 667 return os; |
668 } | 668 } |
669 | 669 |
670 } // namespace compiler | 670 } // namespace compiler |
671 } // namespace internal | 671 } // namespace internal |
672 } // namespace v8 | 672 } // namespace v8 |
OLD | NEW |