diff options
Diffstat (limited to 'llvm/lib/CodeGen/MachinePipeliner.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachinePipeliner.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/MachinePipeliner.cpp b/llvm/lib/CodeGen/MachinePipeliner.cpp index e3166f60f3d..bb5fc664c5f 100644 --- a/llvm/lib/CodeGen/MachinePipeliner.cpp +++ b/llvm/lib/CodeGen/MachinePipeliner.cpp @@ -1530,9 +1530,9 @@ void SwingSchedulerDAG::Circuits::createAdjacencyStructure( } OutputDeps[N] = BackEdge; } - // Do not process a boundary node and a back-edge is processed only - // if it goes to a Phi. - if (SI.getSUnit()->isBoundaryNode() || + // Do not process a boundary node, an artificial node. + // A back-edge is processed only if it goes to a Phi. + if (SI.getSUnit()->isBoundaryNode() || SI.isArtificial() || (SI.getKind() == SDep::Anti && !SI.getSUnit()->getInstr()->isPHI())) continue; int N = SI.getSUnit()->NodeNum; |