| 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 844 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 855 return VisitLeaf(node, NodeOutputInfo::Float32()); | 855 return VisitLeaf(node, NodeOutputInfo::Float32()); |
| 856 case IrOpcode::kFloat64Constant: | 856 case IrOpcode::kFloat64Constant: |
| 857 return VisitLeaf(node, NodeOutputInfo::Float64()); | 857 return VisitLeaf(node, NodeOutputInfo::Float64()); |
| 858 case IrOpcode::kExternalConstant: | 858 case IrOpcode::kExternalConstant: |
| 859 return VisitLeaf(node, NodeOutputInfo::Pointer()); | 859 return VisitLeaf(node, NodeOutputInfo::Pointer()); |
| 860 case IrOpcode::kNumberConstant: | 860 case IrOpcode::kNumberConstant: |
| 861 return VisitLeaf(node, NodeOutputInfo::NumberTagged()); | 861 return VisitLeaf(node, NodeOutputInfo::NumberTagged()); |
| 862 case IrOpcode::kHeapConstant: | 862 case IrOpcode::kHeapConstant: |
| 863 return VisitLeaf(node, NodeOutputInfo::AnyTagged()); | 863 return VisitLeaf(node, NodeOutputInfo::AnyTagged()); |
| 864 | 864 |
| 865 case IrOpcode::kDeoptimizeIf: |
| 866 case IrOpcode::kDeoptimizeUnless: |
| 867 ProcessInput(node, 0, UseInfo::Bool()); |
| 868 ProcessInput(node, 1, UseInfo::AnyTagged()); |
| 869 ProcessRemainingInputs(node, 2); |
| 870 break; |
| 865 case IrOpcode::kBranch: | 871 case IrOpcode::kBranch: |
| 866 ProcessInput(node, 0, UseInfo::Bool()); | 872 ProcessInput(node, 0, UseInfo::Bool()); |
| 867 EnqueueInput(node, NodeProperties::FirstControlIndex(node)); | 873 EnqueueInput(node, NodeProperties::FirstControlIndex(node)); |
| 868 break; | 874 break; |
| 869 case IrOpcode::kSwitch: | 875 case IrOpcode::kSwitch: |
| 870 ProcessInput(node, 0, UseInfo::TruncatingWord32()); | 876 ProcessInput(node, 0, UseInfo::TruncatingWord32()); |
| 871 EnqueueInput(node, NodeProperties::FirstControlIndex(node)); | 877 EnqueueInput(node, NodeProperties::FirstControlIndex(node)); |
| 872 break; | 878 break; |
| 873 case IrOpcode::kSelect: | 879 case IrOpcode::kSelect: |
| 874 return VisitSelect(node, truncation, lowering); | 880 return VisitSelect(node, truncation, lowering); |
| (...skipping 1033 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1908 ReplaceEffectUses(node, comparison); | 1914 ReplaceEffectUses(node, comparison); |
| 1909 node->ReplaceInput(0, comparison); | 1915 node->ReplaceInput(0, comparison); |
| 1910 node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); | 1916 node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); |
| 1911 node->TrimInputCount(2); | 1917 node->TrimInputCount(2); |
| 1912 NodeProperties::ChangeOp(node, machine()->IntLessThanOrEqual()); | 1918 NodeProperties::ChangeOp(node, machine()->IntLessThanOrEqual()); |
| 1913 } | 1919 } |
| 1914 | 1920 |
| 1915 } // namespace compiler | 1921 } // namespace compiler |
| 1916 } // namespace internal | 1922 } // namespace internal |
| 1917 } // namespace v8 | 1923 } // namespace v8 |
| OLD | NEW |