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/base/adapters.h" | 5 #include "src/base/adapters.h" |
6 #include "src/compiler/linkage.h" | 6 #include "src/compiler/linkage.h" |
7 #include "src/compiler/register-allocator.h" | 7 #include "src/compiler/register-allocator.h" |
8 #include "src/string-stream.h" | 8 #include "src/string-stream.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 1040 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1051 << " "; | 1051 << " "; |
1052 if (range->TopLevel()->is_phi()) os << "phi "; | 1052 if (range->TopLevel()->is_phi()) os << "phi "; |
1053 if (range->TopLevel()->is_non_loop_phi()) os << "nlphi "; | 1053 if (range->TopLevel()->is_non_loop_phi()) os << "nlphi "; |
1054 | 1054 |
1055 os << "{" << std::endl; | 1055 os << "{" << std::endl; |
1056 auto interval = range->first_interval(); | 1056 auto interval = range->first_interval(); |
1057 auto use_pos = range->first_pos(); | 1057 auto use_pos = range->first_pos(); |
1058 PrintableInstructionOperand pio; | 1058 PrintableInstructionOperand pio; |
1059 pio.register_configuration_ = printable_range.register_configuration_; | 1059 pio.register_configuration_ = printable_range.register_configuration_; |
1060 while (use_pos != nullptr) { | 1060 while (use_pos != nullptr) { |
1061 pio.op_ = *use_pos->operand(); | 1061 if (use_pos->HasOperand()) { |
1062 os << pio << use_pos->pos() << " "; | 1062 pio.op_ = *use_pos->operand(); |
| 1063 os << pio << use_pos->pos() << " "; |
| 1064 } |
1063 use_pos = use_pos->next(); | 1065 use_pos = use_pos->next(); |
1064 } | 1066 } |
1065 os << std::endl; | 1067 os << std::endl; |
1066 | 1068 |
1067 while (interval != nullptr) { | 1069 while (interval != nullptr) { |
1068 os << '[' << interval->start() << ", " << interval->end() << ')' | 1070 os << '[' << interval->start() << ", " << interval->end() << ')' |
1069 << std::endl; | 1071 << std::endl; |
1070 interval = interval->next(); | 1072 interval = interval->next(); |
1071 } | 1073 } |
1072 os << "}"; | 1074 os << "}"; |
(...skipping 2241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3314 auto eliminate = moves->PrepareInsertAfter(move); | 3316 auto eliminate = moves->PrepareInsertAfter(move); |
3315 to_insert.push_back(move); | 3317 to_insert.push_back(move); |
3316 if (eliminate != nullptr) to_eliminate.push_back(eliminate); | 3318 if (eliminate != nullptr) to_eliminate.push_back(eliminate); |
3317 } | 3319 } |
3318 } | 3320 } |
3319 | 3321 |
3320 | 3322 |
3321 } // namespace compiler | 3323 } // namespace compiler |
3322 } // namespace internal | 3324 } // namespace internal |
3323 } // namespace v8 | 3325 } // namespace v8 |
OLD | NEW |