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/int64-lowering.h" | 5 #include "src/compiler/int64-lowering.h" |
6 #include "src/compiler/common-operator.h" | 6 #include "src/compiler/common-operator.h" |
7 #include "src/compiler/diamond.h" | 7 #include "src/compiler/diamond.h" |
8 #include "src/compiler/graph.h" | 8 #include "src/compiler/graph.h" |
9 #include "src/compiler/linkage.h" | 9 #include "src/compiler/linkage.h" |
10 #include "src/compiler/machine-operator.h" | 10 #include "src/compiler/machine-operator.h" |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 } else { | 230 } else { |
231 high_node = graph()->NewNode(store_op, base, index_high, | 231 high_node = graph()->NewNode(store_op, base, index_high, |
232 GetReplacementHigh(value)); | 232 GetReplacementHigh(value)); |
233 } | 233 } |
234 | 234 |
235 node->ReplaceInput(1, index_low); | 235 node->ReplaceInput(1, index_low); |
236 node->ReplaceInput(2, GetReplacementLow(value)); | 236 node->ReplaceInput(2, GetReplacementLow(value)); |
237 NodeProperties::ChangeOp(node, store_op); | 237 NodeProperties::ChangeOp(node, store_op); |
238 ReplaceNode(node, node, high_node); | 238 ReplaceNode(node, node, high_node); |
239 } else { | 239 } else { |
240 if (HasReplacementLow(node->InputAt(2))) { | 240 DefaultLowering(node); |
241 node->ReplaceInput(2, GetReplacementLow(node->InputAt(2))); | |
242 } | |
243 } | 241 } |
244 break; | 242 break; |
245 } | 243 } |
246 case IrOpcode::kStart: { | 244 case IrOpcode::kStart: { |
247 int parameter_count = GetParameterCountAfterLowering(signature()); | 245 int parameter_count = GetParameterCountAfterLowering(signature()); |
248 // Only exchange the node if the parameter count actually changed. | 246 // Only exchange the node if the parameter count actually changed. |
249 if (parameter_count != static_cast<int>(signature()->parameter_count())) { | 247 if (parameter_count != static_cast<int>(signature()->parameter_count())) { |
250 int delta = | 248 int delta = |
251 parameter_count - static_cast<int>(signature()->parameter_count()); | 249 parameter_count - static_cast<int>(signature()->parameter_count()); |
252 int new_output_count = node->op()->ValueOutputCount() + delta; | 250 int new_output_count = node->op()->ValueOutputCount() + delta; |
(...skipping 639 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
892 common()->Phi(MachineRepresentation::kWord32, value_count), | 890 common()->Phi(MachineRepresentation::kWord32, value_count), |
893 value_count + 1, inputs_low, false), | 891 value_count + 1, inputs_low, false), |
894 graph()->NewNode( | 892 graph()->NewNode( |
895 common()->Phi(MachineRepresentation::kWord32, value_count), | 893 common()->Phi(MachineRepresentation::kWord32, value_count), |
896 value_count + 1, inputs_high, false)); | 894 value_count + 1, inputs_high, false)); |
897 } | 895 } |
898 } | 896 } |
899 } // namespace compiler | 897 } // namespace compiler |
900 } // namespace internal | 898 } // namespace internal |
901 } // namespace v8 | 899 } // namespace v8 |
OLD | NEW |