[all-commits] [llvm/llvm-project] dd60b8: [DebugInfo][LoopStrengthReduction] SCEV-based salv...

chrisjbris via All-commits all-commits at lists.llvm.org
Thu Aug 5 03:26:48 PDT 2021


  Branch: refs/heads/release/13.x
  Home:   https://github.com/llvm/llvm-project
  Commit: dd60b80561ce637f8b97d709f38bc53c8d0c0510
      https://github.com/llvm/llvm-project/commit/dd60b80561ce637f8b97d709f38bc53c8d0c0510
  Author: Chris Jackson <chris.jackson at sony.com>
  Date:   2021-08-05 (Thu, 05 Aug 2021)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-2.ll
    A llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-0.ll
    A llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-1.ll
    A llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-2.ll
    A llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-3.ll
    A llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-4.ll

  Log Message:
  -----------
  [DebugInfo][LoopStrengthReduction] SCEV-based salvaging for LSR

Reapply commit d675b594f4f1e1f6a195fb9a4fd02cf3de92292d that was
reverted due to buildbot failures. A simple fix has been applied to
remove an assertion.

Differential Revision: https://reviews.llvm.org/D105207

(cherry picked from commit 0ba8595287ea2203ef2250e2b0b41f284a055518)


  Commit: 692f875535db1d79e5cb9c3862a6cad0228d04e7
      https://github.com/llvm/llvm-project/commit/692f875535db1d79e5cb9c3862a6cad0228d04e7
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2021-08-05 (Thu, 05 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp

  Log Message:
  -----------
  Follow-up to D105207, only salvage affine SCEVs to avoid a crash

SCEVToIterCountExpr only expects to be fed affine expressions, but
DbgRewriteSalvageableDVIs is feeding it non-affine induction variables.
Following this up with an obvious fix, will add test coverage too if
this avoids D105207 being reverted.

(cherry picked from commit 2537120c870c04893636f171f553024f378c2de8)


  Commit: 8988ce302864ef3216e252af7d491482e71f79c7
      https://github.com/llvm/llvm-project/commit/8988ce302864ef3216e252af7d491482e71f79c7
  Author: Chris Jackson <chris.jackson at sony.com>
  Date:   2021-08-05 (Thu, 05 Aug 2021)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    A llvm/test/Transforms/LoopStrengthReduce/pr51329.ll

  Log Message:
  -----------
  [DebugInfo][LSR] Avoid crashes on large integer inputs

SCEV-based salvaging in LSR translates SCEVs to DIExpressions. SCEVs may
contain very large integers but the translation does not support
integers greater than 64 bits. This patch adds checks to ensure
conversions of these large integers is not attempted. A regression test
is added to ensure no such translation is attempted.

Reviewed by: StephenTozer

PR: https://bugs.llvm.org/show_bug.cgi?id=51329

Differential Revision: https://reviews.llvm.org/D107438

(cherry picked from commit 21ee38e24f9801a567306b2a88defacf6e589a8b)


Compare: https://github.com/llvm/llvm-project/compare/0661286a55fb...8988ce302864


More information about the All-commits mailing list