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/simplified-lowering.h" | 5 #include "src/compiler/simplified-lowering.h" |
6 | 6 |
7 #include <limits> | 7 #include <limits> |
8 | 8 |
9 #include "src/base/bits.h" | 9 #include "src/base/bits.h" |
10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" |
(...skipping 1391 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1402 return VisitFloat64Cmp(node); | 1402 return VisitFloat64Cmp(node); |
1403 case IrOpcode::kFloat64ExtractLowWord32: | 1403 case IrOpcode::kFloat64ExtractLowWord32: |
1404 case IrOpcode::kFloat64ExtractHighWord32: | 1404 case IrOpcode::kFloat64ExtractHighWord32: |
1405 return VisitUnop(node, UseInfo::Float64(), NodeOutputInfo::Int32()); | 1405 return VisitUnop(node, UseInfo::Float64(), NodeOutputInfo::Int32()); |
1406 case IrOpcode::kFloat64InsertLowWord32: | 1406 case IrOpcode::kFloat64InsertLowWord32: |
1407 case IrOpcode::kFloat64InsertHighWord32: | 1407 case IrOpcode::kFloat64InsertHighWord32: |
1408 return VisitBinop(node, UseInfo::Float64(), UseInfo::TruncatingWord32(), | 1408 return VisitBinop(node, UseInfo::Float64(), UseInfo::TruncatingWord32(), |
1409 NodeOutputInfo::Float64()); | 1409 NodeOutputInfo::Float64()); |
1410 case IrOpcode::kLoadStackPointer: | 1410 case IrOpcode::kLoadStackPointer: |
1411 case IrOpcode::kLoadFramePointer: | 1411 case IrOpcode::kLoadFramePointer: |
| 1412 case IrOpcode::kLoadParentFramePointer: |
1412 return VisitLeaf(node, NodeOutputInfo::Pointer()); | 1413 return VisitLeaf(node, NodeOutputInfo::Pointer()); |
1413 case IrOpcode::kStateValues: | 1414 case IrOpcode::kStateValues: |
1414 VisitStateValues(node); | 1415 VisitStateValues(node); |
1415 break; | 1416 break; |
1416 default: | 1417 default: |
1417 VisitInputs(node); | 1418 VisitInputs(node); |
1418 // Assume the output is tagged. | 1419 // Assume the output is tagged. |
1419 SetOutput(node, NodeOutputInfo::AnyTagged()); | 1420 SetOutput(node, NodeOutputInfo::AnyTagged()); |
1420 break; | 1421 break; |
1421 } | 1422 } |
(...skipping 558 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1980 ReplaceEffectUses(node, comparison); | 1981 ReplaceEffectUses(node, comparison); |
1981 node->ReplaceInput(0, comparison); | 1982 node->ReplaceInput(0, comparison); |
1982 node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); | 1983 node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); |
1983 node->TrimInputCount(2); | 1984 node->TrimInputCount(2); |
1984 NodeProperties::ChangeOp(node, machine()->IntLessThanOrEqual()); | 1985 NodeProperties::ChangeOp(node, machine()->IntLessThanOrEqual()); |
1985 } | 1986 } |
1986 | 1987 |
1987 } // namespace compiler | 1988 } // namespace compiler |
1988 } // namespace internal | 1989 } // namespace internal |
1989 } // namespace v8 | 1990 } // namespace v8 |
OLD | NEW |