[all-commits] [llvm/llvm-project] b0c34e: [test] Pre-commit test case for PR51981. NFC

Björn Pettersson via All-commits all-commits at lists.llvm.org
Thu Oct 7 10:56:24 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b0c34e0dab7820fa4dc442ae8f5118064c306285
      https://github.com/llvm/llvm-project/commit/b0c34e0dab7820fa4dc442ae8f5118064c306285
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2021-10-07 (Thu, 07 Oct 2021)

  Changed paths:
    A llvm/test/Transforms/LoopRotate/pr51981-scev-problem.ll

  Log Message:
  -----------
  [test] Pre-commit test case for PR51981. NFC

Reviewed By: fhahn

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


  Commit: 7f93bb4a5827ffce67a469da3ac0e23194538441
      https://github.com/llvm/llvm-project/commit/7f93bb4a5827ffce67a469da3ac0e23194538441
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2021-10-07 (Thu, 07 Oct 2021)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/test/Transforms/LoopRotate/pr51981-scev-problem.ll

  Log Message:
  -----------
  [LoopRotate] Forget SCEV values in RewriteUsesOfClonedInstructions

This patch fixes problems reported in PR51981.

When rotating a loop it isn't enough to just forget SCEV for that
loop nest. When rotating we might clone some instructions from the
old header into the preheader, and insert new PHI nodes to merge
values together. There could be users of the original value that are
updated to use the PHI result. And those users were not necessarily
depending on a PHI node earlier, so they weren't cleaned up when just
forgetting all SCEV:s for the loop nest. So we need to explicitly
forget those values to avoid invalid cached SCEV expressions.

Reviewed By: fhahn, mkazantsev

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


Compare: https://github.com/llvm/llvm-project/compare/6283d468e28b...7f93bb4a5827


More information about the All-commits mailing list