[PATCH] D58756: Fix typo in comment for function "static void initializeWorkList" in "/lib/Analysis/CFLAndersAliasAnalysis.cpp"
Enna1 via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Feb 27 19:16:04 PST 2019
Enna1 added a comment.
The definition of function "initializeWorkList" :
static void initializeWorkList(std::vector<WorkListItem> &WorkList,
ReachabilitySet &ReachSet,
const CFLGraph &Graph) {
for (const auto &Mapping : Graph.value_mappings()) {
auto Val = Mapping.first;
auto &ValueInfo = Mapping.second;
assert(ValueInfo.getNumLevels() > 0);
// Insert all immediate assignment neighbors to the worklist
for (unsigned I = 0, E = ValueInfo.getNumLevels(); I < E; ++I) {
auto Src = InstantiatedValue{Val, I};
// If there's an assignment edge from X to Y, it means Y is reachable from
// X at S3 and X is reachable from Y at S1
for (auto &Edge : ValueInfo.getNodeInfoAtLevel(I).Edges) {
propagate(Edge.Other, Src, MatchState::FlowFromReadOnly, ReachSet,
WorkList);
propagate(Src, Edge.Other, MatchState::FlowToWriteOnly, ReachSet,
WorkList);
}
}
}
}
MatchState::FlowFromReadOnly represents S1 in the paper "Demand-driven alias analysis for C", MatchState::FlowToWriteOnly and MatchState::FlowToReadWrite represent S3 in the paper.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D58756/new/
https://reviews.llvm.org/D58756
More information about the llvm-commits
mailing list