diff options
author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-04-25 04:38:20 +0000 |
---|---|---|
committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2014-04-25 04:38:20 +0000 |
commit | 575bd8c81be785e967ccc2ad605598ec16adf46c (patch) | |
tree | 78c713961028c0573f5b7609ac8a2d0205f26baf /llvm/lib/Analysis | |
parent | 46d9a56ce6c30c691a97d33a3d723724835262c8 (diff) | |
download | bcm5719-llvm-575bd8c81be785e967ccc2ad605598ec16adf46c.tar.gz bcm5719-llvm-575bd8c81be785e967ccc2ad605598ec16adf46c.zip |
blockfreq: Unwrap from Loops
When unwrapping loops, just visit the loops rather than all nodes.
<rdar://problem/14292693>
llvm-svn: 207186
Diffstat (limited to 'llvm/lib/Analysis')
-rw-r--r-- | llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp b/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp index 6b65bf6478e..fd4e7448acb 100644 --- a/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp +++ b/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp @@ -851,10 +851,8 @@ void BlockFrequencyInfoImplBase::unwrapLoops() { for (size_t Index = 0; Index < Working.size(); ++Index) Freqs[Index].Floating = Working[Index].Mass.toFloat(); - for (size_t Index = 0; Index < Working.size(); ++Index) { - if (Working[Index].isLoopHeader()) - unwrapLoopPackage(*this, BlockNode(Index)); - } + for (const LoopData &L : Loops) + unwrapLoopPackage(*this, L.getHeader()); } void BlockFrequencyInfoImplBase::finalizeMetrics() { |