diff options
| author | Gabor Greif <ggreif@gmail.com> | 2010-07-09 09:50:51 +0000 |
|---|---|---|
| committer | Gabor Greif <ggreif@gmail.com> | 2010-07-09 09:50:51 +0000 |
| commit | a1e865825b4fc4f4d35a8cb4ce7de050d3cf9cea (patch) | |
| tree | a5201094e9c12bcb07e2dcce0a91567bf4e66572 | |
| parent | 254bb971e082f92bc02e9e3a141003981b2e5392 (diff) | |
| download | bcm5719-llvm-a1e865825b4fc4f4d35a8cb4ce7de050d3cf9cea.tar.gz bcm5719-llvm-a1e865825b4fc4f4d35a8cb4ce7de050d3cf9cea.zip | |
reuse result of operator*, it is expensive to recompute
llvm-svn: 107959
| -rw-r--r-- | llvm/include/llvm/Analysis/LoopInfo.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/include/llvm/Analysis/LoopInfo.h b/llvm/include/llvm/Analysis/LoopInfo.h index 7b38052257a..9be01dd96f8 100644 --- a/llvm/include/llvm/Analysis/LoopInfo.h +++ b/llvm/include/llvm/Analysis/LoopInfo.h @@ -757,9 +757,11 @@ public: typedef GraphTraits<Inverse<BlockT*> > InvBlockTraits; for (typename InvBlockTraits::ChildIteratorType I = InvBlockTraits::child_begin(BB), E = InvBlockTraits::child_end(BB); - I != E; ++I) - if (DT.dominates(BB, *I)) // If BB dominates its predecessor... - TodoStack.push_back(*I); + I != E; ++I) { + typename InvBlockTraits::NodeType *N = *I; + if (DT.dominates(BB, N)) // If BB dominates its predecessor... + TodoStack.push_back(N); + } if (TodoStack.empty()) return 0; // No backedges to this block... |

