diff --git a/mlir/lib/Dialect/OpenMP/Transforms/OpenMPOffloadPrivatizationPrepare.cpp b/mlir/lib/Dialect/OpenMP/Transforms/OpenMPOffloadPrivatizationPrepare.cpp index a9125ec8f74c3..c117d9b034b7a 100644 --- a/mlir/lib/Dialect/OpenMP/Transforms/OpenMPOffloadPrivatizationPrepare.cpp +++ b/mlir/lib/Dialect/OpenMP/Transforms/OpenMPOffloadPrivatizationPrepare.cpp @@ -189,7 +189,9 @@ class PrepareForOMPOffloadPrivatizationPass DominanceInfo dom; llvm::sort(chainOfOps, [&](Operation *l, Operation *r) { - return dom.dominates(l, r); + if (l == r) + return false; + return dom.properlyDominates(l, r); }); rewriter.setInsertionPoint(chainOfOps.front());