OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 #ifndef V8_COMPILER_GENERIC_ALGORITHM_INL_H_ | 5 #ifndef V8_COMPILER_GENERIC_ALGORITHM_INL_H_ |
6 #define V8_COMPILER_GENERIC_ALGORITHM_INL_H_ | 6 #define V8_COMPILER_GENERIC_ALGORITHM_INL_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "src/compiler/generic-algorithm.h" | 10 #include "src/compiler/generic-algorithm.h" |
11 #include "src/compiler/generic-graph.h" | 11 #include "src/compiler/generic-graph.h" |
| 12 #include "src/compiler/generic-node.h" |
| 13 #include "src/compiler/generic-node-inl.h" |
12 | 14 |
13 namespace v8 { | 15 namespace v8 { |
14 namespace internal { | 16 namespace internal { |
15 namespace compiler { | 17 namespace compiler { |
16 | 18 |
17 template <class N> | 19 template <class N> |
18 class NodeInputIterationTraits { | 20 class NodeInputIterationTraits { |
19 public: | 21 public: |
20 typedef N Node; | 22 typedef N Node; |
21 typedef typename N::Inputs::iterator Iterator; | 23 typedef typename N::Inputs::iterator Iterator; |
(...skipping 15 matching lines...) Expand all Loading... |
37 static Iterator end(Node* node) { return node->uses().end(); } | 39 static Iterator end(Node* node) { return node->uses().end(); } |
38 static int max_id(GenericGraphBase* graph) { return graph->NodeCount(); } | 40 static int max_id(GenericGraphBase* graph) { return graph->NodeCount(); } |
39 static Node* to(Iterator iterator) { return *iterator; } | 41 static Node* to(Iterator iterator) { return *iterator; } |
40 static Node* from(Iterator iterator) { return iterator.edge().to(); } | 42 static Node* from(Iterator iterator) { return iterator.edge().to(); } |
41 }; | 43 }; |
42 } | 44 } |
43 } | 45 } |
44 } // namespace v8::internal::compiler | 46 } // namespace v8::internal::compiler |
45 | 47 |
46 #endif // V8_COMPILER_GENERIC_ALGORITHM_INL_H_ | 48 #endif // V8_COMPILER_GENERIC_ALGORITHM_INL_H_ |
OLD | NEW |