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/verifier.h" | 5 #include "src/compiler/verifier.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <deque> | 8 #include <deque> |
9 #include <queue> | 9 #include <queue> |
10 #include <sstream> | 10 #include <sstream> |
(...skipping 1044 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1055 // (Object, elementtype) -> _|_ | 1055 // (Object, elementtype) -> _|_ |
1056 // TODO(rossberg): activate once machine ops are typed. | 1056 // TODO(rossberg): activate once machine ops are typed. |
1057 // CheckValueInputIs(node, 0, Type::Object()); | 1057 // CheckValueInputIs(node, 0, Type::Object()); |
1058 // CheckValueInputIs(node, 1, ElementAccessOf(node->op()).type)); | 1058 // CheckValueInputIs(node, 1, ElementAccessOf(node->op()).type)); |
1059 CheckNotTyped(node); | 1059 CheckNotTyped(node); |
1060 break; | 1060 break; |
1061 case IrOpcode::kNumberSilenceNaN: | 1061 case IrOpcode::kNumberSilenceNaN: |
1062 CheckValueInputIs(node, 0, Type::Number()); | 1062 CheckValueInputIs(node, 0, Type::Number()); |
1063 CheckUpperIs(node, Type::Number()); | 1063 CheckUpperIs(node, Type::Number()); |
1064 break; | 1064 break; |
| 1065 case IrOpcode::kSigma: |
| 1066 CheckUpperIs(node, SigmaTypeOf(node->op())); |
| 1067 break; |
1065 | 1068 |
1066 // Machine operators | 1069 // Machine operators |
1067 // ----------------------- | 1070 // ----------------------- |
1068 case IrOpcode::kLoad: | 1071 case IrOpcode::kLoad: |
1069 case IrOpcode::kStore: | 1072 case IrOpcode::kStore: |
1070 case IrOpcode::kStackSlot: | 1073 case IrOpcode::kStackSlot: |
1071 case IrOpcode::kWord32And: | 1074 case IrOpcode::kWord32And: |
1072 case IrOpcode::kWord32Or: | 1075 case IrOpcode::kWord32Or: |
1073 case IrOpcode::kWord32Xor: | 1076 case IrOpcode::kWord32Xor: |
1074 case IrOpcode::kWord32Shl: | 1077 case IrOpcode::kWord32Shl: |
(...skipping 479 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1554 replacement->op()->EffectOutputCount() > 0); | 1557 replacement->op()->EffectOutputCount() > 0); |
1555 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || | 1558 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || |
1556 replacement->opcode() == IrOpcode::kFrameState); | 1559 replacement->opcode() == IrOpcode::kFrameState); |
1557 } | 1560 } |
1558 | 1561 |
1559 #endif // DEBUG | 1562 #endif // DEBUG |
1560 | 1563 |
1561 } // namespace compiler | 1564 } // namespace compiler |
1562 } // namespace internal | 1565 } // namespace internal |
1563 } // namespace v8 | 1566 } // namespace v8 |
OLD | NEW |