[PATCH] D102959: [polly] Fix SCEVLoopAddRecRewriter to avoid invalid AddRecs.

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri May 21 17:12:52 PDT 2021


efriedma created this revision.
efriedma added a reviewer: Meinersbur.
Herald added a reviewer: bollu.
Herald added a subscriber: hiraditya.
efriedma requested review of this revision.
Herald added a project: LLVM.

When we're remapping an AddRec, the AddRec constructed by a partial rewrite might not make sense.  This triggers an assertion complaining it's not loop-invariant.

Instead of constructing the partially rewritten AddRec, just skip straight to calling evaluateAtIteration.

Testcase was automatically reduced using llvm-reduce, so it's a little messy, but hopefully makes sense.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D102959

Files:
  llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h
  llvm/lib/Analysis/ScalarEvolution.cpp
  polly/test/Isl/CodeGen/OpenMP/scev-rewriting.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D102959.347155.patch
Type: text/x-patch
Size: 5102 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210522/0c7a3ddd/attachment.bin>


More information about the llvm-commits mailing list