[all-commits] [llvm/llvm-project] 0b2403: [LoopVectorize] In LoopVectorize.cpp start using g...

David Sherwood via All-commits all-commits at lists.llvm.org
Wed Oct 2 02:29:15 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0b2403197ff026627cf27df63ce83cd53d1cd680
      https://github.com/llvm/llvm-project/commit/0b2403197ff026627cf27df63ce83cd53d1cd680
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    A llvm/test/Transforms/LoopVectorize/outer_loop_early_exit.ll

  Log Message:
  -----------
  [LoopVectorize] In LoopVectorize.cpp start using getSymbolicMaxBackedgeTakenCount (#108833)

LoopVectorizationLegality currently only treats a loop as legal to vectorise
if PredicatedScalarEvolution::getBackedgeTakenCount returns a valid
SCEV, or more precisely that the loop must have an exact backedge taken
count. Therefore, in LoopVectorize.cpp we can safely replace all calls to
getBackedgeTakenCount with calls to getSymbolicMaxBackedgeTakenCount,
since the result is the same.

This also helps prepare the loop vectoriser for PR #88385.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list