@@ -283,8 +283,6 @@ void DependencyGraph::createNewNodes(const Interval<Instruction> &NewInterval) {
283283 // Build the Mem node chain.
284284 if (auto *MemN = dyn_cast<MemDGNode>(N)) {
285285 MemN->setPrevNode (LastMemN);
286- if (LastMemN != nullptr )
287- LastMemN->setNextNode (MemN);
288286 LastMemN = MemN;
289287 }
290288 }
@@ -302,7 +300,6 @@ void DependencyGraph::createNewNodes(const Interval<Instruction> &NewInterval) {
302300 " Wrong order!" );
303301 if (LinkTopN != nullptr && LinkBotN != nullptr ) {
304302 LinkTopN->setNextNode (LinkBotN);
305- LinkBotN->setPrevNode (LinkTopN);
306303 }
307304#ifndef NDEBUG
308305 // TODO: Remove this once we've done enough testing.
@@ -394,22 +391,14 @@ void DependencyGraph::notifyMoveInstr(Instruction *I, const BBIterator &To) {
394391 if (To != BB->end ()) {
395392 DGNode *ToN = getNodeOrNull (&*To);
396393 if (ToN != nullptr ) {
397- MemDGNode *PrevMemN = getMemDGNodeBefore (ToN, /* IncludingN=*/ false );
398- MemDGNode *NextMemN = getMemDGNodeAfter (ToN, /* IncludingN=*/ true );
399- MemN->PrevMemN = PrevMemN;
400- if (PrevMemN != nullptr )
401- PrevMemN->NextMemN = MemN;
402- MemN->NextMemN = NextMemN;
403- if (NextMemN != nullptr )
404- NextMemN->PrevMemN = MemN;
394+ MemN->setPrevNode (getMemDGNodeBefore (ToN, /* IncludingN=*/ false ));
395+ MemN->setNextNode (getMemDGNodeAfter (ToN, /* IncludingN=*/ true ));
405396 }
406397 } else {
407398 // MemN becomes the last instruction in the BB.
408399 auto *TermN = getNodeOrNull (BB->getTerminator ());
409400 if (TermN != nullptr ) {
410- MemDGNode *PrevMemN = getMemDGNodeBefore (TermN, /* IncludingN=*/ false );
411- PrevMemN->NextMemN = MemN;
412- MemN->PrevMemN = PrevMemN;
401+ MemN->setPrevNode (getMemDGNodeBefore (TermN, /* IncludingN=*/ false ));
413402 } else {
414403 // The terminator is outside the DAG interval so do nothing.
415404 }
0 commit comments