[mlir] Don't iterate mutable user list
authorVitaly Buka <vitalybuka@google.com>
Wed, 27 Apr 2022 23:16:39 +0000 (16:16 -0700)
committerVitaly Buka <vitalybuka@google.com>
Thu, 28 Apr 2022 15:59:55 +0000 (08:59 -0700)
commit6e1ac68a0c73546c989e2440943e4786d328f718
treecbe097129d122d3dcf6e0499226198795fab5aa5
parent9f235a88f171b4ae6bcb9b45f5639c3810d5bf20
[mlir] Don't iterate mutable user list

executeOp.operandsMutable().append(asyncTokens) in
addAsyncDependencyAfter can resize and invalidate iterators.

Fixes reports like https://reviews.llvm.org/P8286

Reviewed By: herhut

Differential Revision: https://reviews.llvm.org/D124577
mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp