[PATCH] D85065: [Attributor][NFC] Update description for the dependency graph
Luofan Chen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 31 19:21:20 PDT 2020
bbn created this revision.
bbn added a reviewer: jdoerfert.
Herald added a reviewer: uenoku.
Herald added subscribers: llvm-commits, okura, kuter, uenoku.
Herald added a reviewer: homerdin.
Herald added a project: LLVM.
bbn requested review of this revision.
Herald added a reviewer: sstefan1.
Herald added a reviewer: baziotis.
The word "dependency graph" is a bit misleading. When there is an
edge from node A to B (A -> B), it actually mean that B depends on
A and when the state of A is updated, B should also be updated. So
I update the comment to make the description clearer.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D85065
Files:
llvm/include/llvm/Transforms/IPO/Attributor.h
Index: llvm/include/llvm/Transforms/IPO/Attributor.h
===================================================================
--- llvm/include/llvm/Transforms/IPO/Attributor.h
+++ llvm/include/llvm/Transforms/IPO/Attributor.h
@@ -155,8 +155,8 @@
using DepTy = PointerIntPair<AADepGraphNode *, 1>;
protected:
- /// Set of dependency graph nodes which this one depends on.
- /// The bit encodes if it is optional.
+ /// Set of dependency graph nodes which should be updated if this one
+ /// is updated. The bit encodes if it is optional.
TinyPtrVector<DepTy> Deps;
static AADepGraphNode *DepGetVal(DepTy &DT) { return DT.getPointer(); }
@@ -184,6 +184,11 @@
friend struct AADepGraph;
};
+/// The data structure for the dependency graph
+///
+/// Note that in this graph if there is an edge from A to B (A -> B),
+/// then it means that B depends on A, and when the state of A is
+/// updated, node B should also be updated
struct AADepGraph {
AADepGraph() {}
~AADepGraph() {}
@@ -197,7 +202,6 @@
/// requires a single entry point, so we maintain a fake("synthetic") root
/// node that depends on every node.
AADepGraphNode SyntheticRoot;
-
AADepGraphNode *GetEntryNode() { return &SyntheticRoot; }
iterator begin() { return SyntheticRoot.child_begin(); }
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D85065.282364.patch
Type: text/x-patch
Size: 1297 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200801/efbae154/attachment.bin>
More information about the llvm-commits
mailing list