summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2013-05-23 17:43:39 +0000
committerRui Ueyama <ruiu@google.com>2013-05-23 17:43:39 +0000
commit25c208c020139e4461aea2e0d74be35eed2f086a (patch)
tree19739d3dd008c32e8081ee9c1ec877f723bec2e6
parentd78bb468bd5bdf63674d87b292facdfe41dae46d (diff)
downloadbcm5719-llvm-25c208c020139e4461aea2e0d74be35eed2f086a.tar.gz
bcm5719-llvm-25c208c020139e4461aea2e0d74be35eed2f086a.zip
[lld][LayoutPass] Add comment on _followOn{Nexts,Roots}.
Reviewers: shankarke CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D847 llvm-svn: 182595
-rw-r--r--lld/include/lld/Passes/LayoutPass.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/lld/include/lld/Passes/LayoutPass.h b/lld/include/lld/Passes/LayoutPass.h
index f50dd3d1591..80f3ec2560a 100644
--- a/lld/include/lld/Passes/LayoutPass.h
+++ b/lld/include/lld/Passes/LayoutPass.h
@@ -67,8 +67,19 @@ private:
typedef llvm::DenseMap<const DefinedAtom *, const DefinedAtom *> AtomToAtomT;
typedef llvm::DenseMap<const DefinedAtom *, uint64_t> AtomToOrdinalT;
+
+ // A map to be used to sort atoms. It represents the order of atoms in the
+ // result; if Atom X is mapped to atom Y in this map, X will be located
+ // immediately before Y in the output file. Y might be mapped to another
+ // atom, constructing a follow-on chain. An atom cannot be mapped to more
+ // than one atom unless all but one atom are of size zero.
AtomToAtomT _followOnNexts;
+
+ // A map to be used to sort atoms. It's a map from an atom to its root of
+ // follow-on chain. A root atom is mapped to itself. If an atom is not in
+ // _followOnNexts, the atom is not in this map, and vice versa.
AtomToAtomT _followOnRoots;
+
AtomToOrdinalT _ordinalOverrideMap;
CompareAtoms _compareAtoms;
OpenPOWER on IntegriCloud