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

Side by Side Diff: IceCfgNode.h

Issue 205613002: Initial skeleton of Subzero. (Closed) Base URL: https://gerrit.chromium.org/gerrit/p/native_client/pnacl-subzero.git@master
Patch Set: Created 6 years, 9 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
« IceCfg.h ('K') | « IceCfg.cpp ('k') | IceCfgNode.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // -*- Mode: c++ -*-
2 /* Copyright 2014 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can
4 * be found in the LICENSE file.
5 */
6
7 #ifndef _IceCfgNode_h
8 #define _IceCfgNode_h
9
10 #include "IceDefs.h"
11
12 class IceCfgNode {
13 public:
14 static IceCfgNode *create(IceCfg *Cfg, uint32_t LabelIndex,
15 IceString Name = "") {
16 return new IceCfgNode(Cfg, LabelIndex, Name);
17 }
18
19 uint32_t getIndex(void) const { return Number; }
20 IceString getName(void) const;
21
22 const IceNodeList &getInEdges(void) const { return InEdges; }
23 const IceNodeList &getOutEdges(void) const { return OutEdges; }
24
25 IceInstList &getInsts(void) { return Insts; }
26 void appendInst(IceInst *Inst);
27
28 void registerEdges(void);
29
30 void dump(IceOstream &Str) const;
31
32 private:
33 IceCfgNode(IceCfg *Cfg, uint32_t LabelIndex, IceString Name);
34 IceCfg *const Cfg;
35 const uint32_t Number; // label index
36 IceString Name; // for dumping only
37 IceNodeList InEdges; // in no particular order
38 IceNodeList OutEdges; // in no particular order
39 IcePhiList Phis; // unordered set of phi instructions
40 IceInstList Insts; // ordered list of non-phi instructions
41 };
42
43 #endif // _IceCfgNode_h
OLDNEW
« IceCfg.h ('K') | « IceCfg.cpp ('k') | IceCfgNode.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698