diff options
Diffstat (limited to 'lib/Analysis/DataStructure/DataStructure.cpp')
-rw-r--r-- | lib/Analysis/DataStructure/DataStructure.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Analysis/DataStructure/DataStructure.cpp b/lib/Analysis/DataStructure/DataStructure.cpp index 7fabdf2..565a596 100644 --- a/lib/Analysis/DataStructure/DataStructure.cpp +++ b/lib/Analysis/DataStructure/DataStructure.cpp @@ -701,6 +701,9 @@ bool DSNode::mergeTypeInfo(const Type *NewTy, unsigned Offset, void DSNode::addEdgeTo(unsigned Offset, const DSNodeHandle &NH) { if (NH.isNull()) return; // Nothing to do + if (isNodeCompletelyFolded()) + Offset = 0; + DSNodeHandle &ExistingEdge = getLink(Offset); if (!ExistingEdge.isNull()) { // Merge the two nodes... |