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 <deque> | 7 #include <deque> |
8 #include <queue> | 8 #include <queue> |
9 #include <sstream> | 9 #include <sstream> |
10 #include <string> | 10 #include <string> |
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
282 case IrOpcode::kNumberConstant: | 282 case IrOpcode::kNumberConstant: |
283 // Constants have no inputs. | 283 // Constants have no inputs. |
284 CHECK_EQ(0, input_count); | 284 CHECK_EQ(0, input_count); |
285 // Type is a number. | 285 // Type is a number. |
286 CheckUpperIs(node, Type::Number()); | 286 CheckUpperIs(node, Type::Number()); |
287 break; | 287 break; |
288 case IrOpcode::kHeapConstant: | 288 case IrOpcode::kHeapConstant: |
289 // Constants have no inputs. | 289 // Constants have no inputs. |
290 CHECK_EQ(0, input_count); | 290 CHECK_EQ(0, input_count); |
291 // Type can be anything represented as a heap pointer. | 291 // Type can be anything represented as a heap pointer. |
292 CheckUpperIs(node, Type::TaggedPtr()); | 292 CheckUpperIs(node, Type::TaggedPointer()); |
293 break; | 293 break; |
294 case IrOpcode::kExternalConstant: | 294 case IrOpcode::kExternalConstant: |
295 // Constants have no inputs. | 295 // Constants have no inputs. |
296 CHECK_EQ(0, input_count); | 296 CHECK_EQ(0, input_count); |
297 // Type is considered internal. | 297 // Type is considered internal. |
298 CheckUpperIs(node, Type::Internal()); | 298 CheckUpperIs(node, Type::Internal()); |
299 break; | 299 break; |
300 case IrOpcode::kProjection: { | 300 case IrOpcode::kProjection: { |
301 // Projection has an input that produces enough values. | 301 // Projection has an input that produces enough values. |
302 int index = static_cast<int>(OpParameter<size_t>(node->op())); | 302 int index = static_cast<int>(OpParameter<size_t>(node->op())); |
(...skipping 672 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
975 // Check inputs for all nodes in the block. | 975 // Check inputs for all nodes in the block. |
976 for (size_t i = 0; i < block->NodeCount(); i++) { | 976 for (size_t i = 0; i < block->NodeCount(); i++) { |
977 Node* node = block->NodeAt(i); | 977 Node* node = block->NodeAt(i); |
978 CheckInputsDominate(schedule, block, node, static_cast<int>(i) - 1); | 978 CheckInputsDominate(schedule, block, node, static_cast<int>(i) - 1); |
979 } | 979 } |
980 } | 980 } |
981 } | 981 } |
982 } | 982 } |
983 } | 983 } |
984 } // namespace v8::internal::compiler | 984 } // namespace v8::internal::compiler |
OLD | NEW |