Mercurial > hg > CbC > CbC_llvm
comparison include/llvm/Analysis/DominanceFrontierImpl.h @ 95:afa8332a0e37 LLVM3.8
LLVM 3.8
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 13 Oct 2015 17:48:58 +0900 |
parents | 60c9769439b8 |
children | 803732b1fca8 |
comparison
equal
deleted
inserted
replaced
84:f3e34b893a5f | 95:afa8332a0e37 |
---|---|
17 | 17 |
18 #ifndef LLVM_ANALYSIS_DOMINANCEFRONTIERIMPL_H | 18 #ifndef LLVM_ANALYSIS_DOMINANCEFRONTIERIMPL_H |
19 #define LLVM_ANALYSIS_DOMINANCEFRONTIERIMPL_H | 19 #define LLVM_ANALYSIS_DOMINANCEFRONTIERIMPL_H |
20 | 20 |
21 #include "llvm/ADT/SmallPtrSet.h" | 21 #include "llvm/ADT/SmallPtrSet.h" |
22 #include "llvm/Analysis/DominanceFrontier.h" | |
22 #include "llvm/Support/Debug.h" | 23 #include "llvm/Support/Debug.h" |
24 #include "llvm/Support/GenericDomTree.h" | |
23 | 25 |
24 namespace llvm { | 26 namespace llvm { |
25 | 27 |
26 namespace { | |
27 template <class BlockT> | 28 template <class BlockT> |
28 class DFCalculateWorkObject { | 29 class DFCalculateWorkObject { |
29 public: | 30 public: |
30 typedef DomTreeNodeBase<BlockT> DomTreeNodeT; | 31 typedef DomTreeNodeBase<BlockT> DomTreeNodeT; |
31 | 32 |
35 BlockT *currentBB; | 36 BlockT *currentBB; |
36 BlockT *parentBB; | 37 BlockT *parentBB; |
37 const DomTreeNodeT *Node; | 38 const DomTreeNodeT *Node; |
38 const DomTreeNodeT *parentNode; | 39 const DomTreeNodeT *parentNode; |
39 }; | 40 }; |
40 } | |
41 | 41 |
42 template <class BlockT> | 42 template <class BlockT> |
43 void DominanceFrontierBase<BlockT>::removeBlock(BlockT *BB) { | 43 void DominanceFrontierBase<BlockT>::removeBlock(BlockT *BB) { |
44 assert(find(BB) != end() && "Block is not in DominanceFrontier!"); | 44 assert(find(BB) != end() && "Block is not in DominanceFrontier!"); |
45 for (iterator I = begin(), E = end(); I != E; ++I) | 45 for (iterator I = begin(), E = end(); I != E; ++I) |