[all-commits] [llvm/llvm-project] b9051b: [LV] Remove assert that VF cannot be scalable in s...

sdesmalen-arm via All-commits all-commits at lists.llvm.org
Mon Jul 26 09:12:17 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b9051ba84836f6c2a3b008638de14b588e58fa9f
      https://github.com/llvm/llvm-project/commit/b9051ba84836f6c2a3b008638de14b588e58fa9f
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2021-07-26 (Mon, 26 Jul 2021)

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

  Log Message:
  -----------
  [LV] Remove assert that VF cannot be scalable in setCostBasedWideningDecision.

Scalarization for scalable vectors is not (yet) supported, so the
LV discards a VF when scalarization is chosen as the widening
decision. It should therefore not assert that the VF is not scalable
when it computes the decision to scalarize.

The code can get here when both the interleave-cost, gather/scatter cost
and scalarization-cost are all illegal. This may e.g. happen for SVE
when the VF=1, to avoid generating `<vscale x 1 x eltty>` types that
the code-generator cannot yet handle.

Reviewed By: david-arm

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




More information about the All-commits mailing list