[PATCH] D98644: [DebugInfo] Fix incorrect handling of variadic salvaging in Loop Strength Reduce

Stephen Tozer via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 1 07:40:24 PDT 2021


StephenTozer added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp:5833-5834
 using EqualValues = SmallVector<std::tuple<WeakVH, int64_t>, 4>;
 using EqualValuesMap =
-    DenseMap<std::pair<DbgValueInst *, unsigned>, EqualValues>;
-using ExpressionMap = DenseMap<DbgValueInst *, DIExpression *>;
+    DenseMap<DbgValueInst *, SmallVector<std::pair<unsigned, EqualValues>>>;
+using LocationMap =
----------------
jmorse wrote:
> To confirm my understanding: this swapping of key/value is effectively NFC, right?
More or less; in this case, we're not swapping the key/value, but reordering it. The point being that rather than EqualValues being grouped by <dbg.value, location op index>, we're grouping <location op index, EqualValues> by dbg.value. This is because as of this change, we want to process each dbg.value entirely in one pass.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D98644/new/

https://reviews.llvm.org/D98644



More information about the llvm-commits mailing list