aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/LoopAccessAnalysis.cpp
diff options
context:
space:
mode:
authorWei Mi <wmi@google.com>2021-05-03 22:55:53 -0700
committerWei Mi <wmi@google.com>2021-05-04 10:05:59 -0700
commit82956de05f9d63e5fbc170702649e5d978b51b80 (patch)
treebcdc0dc3f202228955ddc72d7b851502c0cbb415 /llvm/lib/Analysis/LoopAccessAnalysis.cpp
parent0c2e2f88fbd3f3ffa2e441e08cdd17141e7bea97 (diff)
downloadllvm-82956de05f9d63e5fbc170702649e5d978b51b80.zip
llvm-82956de05f9d63e5fbc170702649e5d978b51b80.tar.gz
llvm-82956de05f9d63e5fbc170702649e5d978b51b80.tar.bz2
[SampleFDO] Fix a bug when appending function symbol into the Callees set of
Root node in ProfiledCallGraph. In ProfiledCallGraph::addProfiledFunction, to add a function symbol into the ProfiledCallGraph, currently an uninitialized ProfiledCallGraphNode node is created by ProfiledFunctions[Name] and inserted into Callees set of Root node before the node is initialized. The Callees set use ProfiledCallGraphNodeComparer as its comparator so the uninitialized ProfiledCallGraphNode may fail to be inserted into Callees set if it happens to contain a name in memory which has been inserted into the Callees set before. The problem will prevent some function symbols from being annotated with profiles and cause performance regression. The patch fixes the problem. Differential Revision: https://reviews.llvm.org/D101815
Diffstat (limited to 'llvm/lib/Analysis/LoopAccessAnalysis.cpp')
0 files changed, 0 insertions, 0 deletions