[llvm] 3608e18 - [DSE] Use MapVector for IOLs
Nikita Popov via llvm-commits
llvm-commits at lists.llvm.org
Sun Nov 28 12:54:39 PST 2021
Author: Nikita Popov
Date: 2021-11-28T21:54:29+01:00
New Revision: 3608e18a946e77a474a468304b6c3904c55dbce0
URL: https://github.com/llvm/llvm-project/commit/3608e18a946e77a474a468304b6c3904c55dbce0
DIFF: https://github.com/llvm/llvm-project/commit/3608e18a946e77a474a468304b6c3904c55dbce0.diff
LOG: [DSE] Use MapVector for IOLs
I'm not sure whether this can cause any actual non-determinism,
but at least it makes the DSE debug log non-deterministic, which
makes it harder to debug other non-determinism issues.
Added:
Modified:
llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
index 4e7e33b996672..e7c14eb5b7472 100644
--- a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
+++ b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
@@ -812,7 +812,7 @@ struct DSEState {
/// Keep track of instructions (partly) overlapping with killing MemoryDefs per
/// basic block.
- DenseMap<BasicBlock *, InstOverlapIntervalsTy> IOLs;
+ MapVector<BasicBlock *, InstOverlapIntervalsTy> IOLs;
// Class contains self-reference, make sure it's not copied/moved.
DSEState(const DSEState &) = delete;
More information about the llvm-commits
mailing list