[all-commits] [llvm/llvm-project] 2b3b40: [LV] Don't vectorize first-order recurrence with V...

Florian Hahn via All-commits all-commits at lists.llvm.org
Thu Jul 4 03:45:33 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2b3b405b09a0d965a4aff1f92958418ddbf1e7f6
      https://github.com/llvm/llvm-project/commit/2b3b405b09a0d965a4aff1f92958418ddbf1e7f6
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-07-04 (Thu, 04 Jul 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
    A llvm/test/Transforms/LoopVectorize/first-order-recurrence-scalable-vf1.ll

  Log Message:
  -----------
  [LV] Don't vectorize first-order recurrence with VF <vscale x 1 x ..>

The assertion added as part of https://github.com/llvm/llvm-project/pull/93395
surfaced cases where first-order recurrences are vectorized with
<vscale x 1 x ..>. If vscale is 1, then we are unable to extract the
penultimate value (second to last lane). Previously this case got
mis-compiled, trying to extract from an invalid lane (-1)
https://llvm.godbolt.org/z/3adzYYcf9.

Fixes https://github.com/llvm/llvm-project/issues/97452.



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