Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1061)

Side by Side Diff: src/compiler/generic-graph.h

Issue 453833003: Add initial support for inlining. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Add initial support for inlining. Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « BUILD.gn ('k') | src/compiler/generic-node.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_GRAPH_H_ 5 #ifndef V8_COMPILER_GENERIC_GRAPH_H_
6 #define V8_COMPILER_GENERIC_GRAPH_H_ 6 #define V8_COMPILER_GENERIC_GRAPH_H_
7 7
8 #include "src/compiler/generic-node.h" 8 #include "src/compiler/generic-node.h"
9 9
10 namespace v8 { 10 namespace v8 {
11 namespace internal { 11 namespace internal {
12 12
13 class Zone; 13 class Zone;
14 14
15 namespace compiler { 15 namespace compiler {
16 16
17 class GenericGraphBase : public ZoneObject { 17 class GenericGraphBase : public ZoneObject {
18 public: 18 public:
19 explicit GenericGraphBase(Zone* zone) : zone_(zone), next_node_id_(0) {} 19 explicit GenericGraphBase(Zone* zone) : zone_(zone), next_node_id_(0) {}
20 20
21 Zone* zone() const { return zone_; } 21 Zone* zone() const { return zone_; }
22 22
23 NodeId NextNodeID() { return next_node_id_++; } 23 NodeId NextNodeID() { return next_node_id_++; }
24 NodeId NodeCount() const { return next_node_id_; } 24 NodeId NodeCount() const { return next_node_id_; }
25 void SetNextNodeId(NodeId next) { next_node_id_ = next; }
25 26
26 private: 27 private:
27 Zone* zone_; 28 Zone* zone_;
28 NodeId next_node_id_; 29 NodeId next_node_id_;
29 }; 30 };
30 31
31 template <class V> 32 template <class V>
32 class GenericGraph : public GenericGraphBase { 33 class GenericGraph : public GenericGraphBase {
33 public: 34 public:
34 explicit GenericGraph(Zone* zone) 35 explicit GenericGraph(Zone* zone)
35 : GenericGraphBase(zone), start_(NULL), end_(NULL) {} 36 : GenericGraphBase(zone), start_(NULL), end_(NULL) {}
36 37
37 V* start() { return start_; } 38 V* start() { return start_; }
38 V* end() { return end_; } 39 V* end() { return end_; }
39 40
40 void SetStart(V* start) { start_ = start; } 41 void SetStart(V* start) { start_ = start; }
41 void SetEnd(V* end) { end_ = end; } 42 void SetEnd(V* end) { end_ = end; }
42 43
43 private: 44 private:
44 V* start_; 45 V* start_;
45 V* end_; 46 V* end_;
46 47
47 DISALLOW_COPY_AND_ASSIGN(GenericGraph); 48 DISALLOW_COPY_AND_ASSIGN(GenericGraph);
48 }; 49 };
49 } 50 }
50 } 51 }
51 } // namespace v8::internal::compiler 52 } // namespace v8::internal::compiler
52 53
53 #endif // V8_COMPILER_GENERIC_GRAPH_H_ 54 #endif // V8_COMPILER_GENERIC_GRAPH_H_
OLDNEW
« no previous file with comments | « BUILD.gn ('k') | src/compiler/generic-node.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698