[clang] [llvm] [mlir] [mlir] Don't assume non-erased DenseMap entries remain valid after erase. NFC (PR #199365)
Jakub Kuderski via cfe-commits
cfe-commits at lists.llvm.org
Sat May 23 16:07:17 PDT 2026
================
@@ -14581,14 +14575,8 @@ void ScalarEvolution::forgetMemoizedResults(ArrayRef<SCEVUse> SCEVs) {
for (const auto *S : ToForget)
forgetMemoizedResultsImpl(S);
- for (auto I = PredicatedSCEVRewrites.begin();
- I != PredicatedSCEVRewrites.end();) {
- std::pair<const SCEV *, const Loop *> Entry = I->first;
- if (ToForget.count(Entry.first))
- PredicatedSCEVRewrites.erase(I++);
- else
- ++I;
- }
+ PredicatedSCEVRewrites.remove_if(
+ [&](const auto &Entry) { return ToForget.count(Entry.first.first); });
----------------
kuhar wrote:
can we do .contains?
https://github.com/llvm/llvm-project/pull/199365
More information about the cfe-commits
mailing list