| 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/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 | 9 |
| 10 namespace v8 { | 10 namespace v8 { |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 } | 102 } |
| 103 DCHECK_IMPLIES(replacement == to_eliminate, replacement == nullptr); | 103 DCHECK_IMPLIES(replacement == to_eliminate, replacement == nullptr); |
| 104 if (replacement != nullptr) move->set_source(replacement->source()); | 104 if (replacement != nullptr) move->set_source(replacement->source()); |
| 105 return to_eliminate; | 105 return to_eliminate; |
| 106 } | 106 } |
| 107 | 107 |
| 108 | 108 |
| 109 Instruction::Instruction(InstructionCode opcode) | 109 Instruction::Instruction(InstructionCode opcode) |
| 110 : opcode_(opcode), | 110 : opcode_(opcode), |
| 111 bit_field_(OutputCountField::encode(0) | InputCountField::encode(0) | | 111 bit_field_(OutputCountField::encode(0) | InputCountField::encode(0) | |
| 112 TempCountField::encode(0) | IsCallField::encode(false) | | 112 TempCountField::encode(0) | IsCallField::encode(false)), |
| 113 IsControlField::encode(false)), | |
| 114 pointer_map_(NULL) {} | 113 pointer_map_(NULL) {} |
| 115 | 114 |
| 116 | 115 |
| 117 Instruction::Instruction(InstructionCode opcode, size_t output_count, | 116 Instruction::Instruction(InstructionCode opcode, size_t output_count, |
| 118 InstructionOperand* outputs, size_t input_count, | 117 InstructionOperand* outputs, size_t input_count, |
| 119 InstructionOperand* inputs, size_t temp_count, | 118 InstructionOperand* inputs, size_t temp_count, |
| 120 InstructionOperand* temps) | 119 InstructionOperand* temps) |
| 121 : opcode_(opcode), | 120 : opcode_(opcode), |
| 122 bit_field_(OutputCountField::encode(output_count) | | 121 bit_field_(OutputCountField::encode(output_count) | |
| 123 InputCountField::encode(input_count) | | 122 InputCountField::encode(input_count) | |
| 124 TempCountField::encode(temp_count) | | 123 TempCountField::encode(temp_count) | |
| 125 IsCallField::encode(false) | IsControlField::encode(false)), | 124 IsCallField::encode(false)), |
| 126 pointer_map_(NULL) { | 125 pointer_map_(NULL) { |
| 127 size_t offset = 0; | 126 size_t offset = 0; |
| 128 for (size_t i = 0; i < output_count; ++i) { | 127 for (size_t i = 0; i < output_count; ++i) { |
| 129 DCHECK(!outputs[i].IsInvalid()); | 128 DCHECK(!outputs[i].IsInvalid()); |
| 130 operands_[offset++] = outputs[i]; | 129 operands_[offset++] = outputs[i]; |
| 131 } | 130 } |
| 132 for (size_t i = 0; i < input_count; ++i) { | 131 for (size_t i = 0; i < input_count; ++i) { |
| 133 DCHECK(!inputs[i].IsInvalid()); | 132 DCHECK(!inputs[i].IsInvalid()); |
| 134 operands_[offset++] = inputs[i]; | 133 operands_[offset++] = inputs[i]; |
| 135 } | 134 } |
| (...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 732 os << " B" << succ.ToInt(); | 731 os << " B" << succ.ToInt(); |
| 733 } | 732 } |
| 734 os << "\n"; | 733 os << "\n"; |
| 735 } | 734 } |
| 736 return os; | 735 return os; |
| 737 } | 736 } |
| 738 | 737 |
| 739 } // namespace compiler | 738 } // namespace compiler |
| 740 } // namespace internal | 739 } // namespace internal |
| 741 } // namespace v8 | 740 } // namespace v8 |
| OLD | NEW |