[all-commits] [llvm/llvm-project] 1439ef: [LoopVectorize] Classify pointer induction updates...

kmclaughlin-arm via All-commits all-commits at lists.llvm.org
Tue Oct 12 05:33:16 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1439ef1a3f05c708bf5a57c4623cf895d7268413
      https://github.com/llvm/llvm-project/commit/1439ef1a3f05c708bf5a57c4623cf895d7268413
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2021-10-12 (Tue, 12 Oct 2021)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll

  Log Message:
  -----------
  [LoopVectorize] Classify pointer induction updates as scalar only if they have one use

collectLoopScalars collects pointer induction updates in ScalarPtrs, assuming
that the instruction will be scalar after vectorization. This may crash later
in VPReplicateRecipe::execute() if there there is another user of the instruction
other than the Phi node which needs to be widened.

This changes collectLoopScalars so that if there are any other users of
Update other than a Phi node, it is not added to ScalarPtrs.

Reviewed By: david-arm, fhahn

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




More information about the All-commits mailing list