[all-commits] [llvm/llvm-project] 1ec0cc: [InstCombine][SVE] Fix visitExtractElementInst for...

huihzhang via All-commits all-commits at lists.llvm.org
Thu May 7 13:04:19 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 1ec0cc0f02432ef640173b319a9c3b13fc850d33
      https://github.com/llvm/llvm-project/commit/1ec0cc0f02432ef640173b319a9c3b13fc850d33
  Author: Huihui Zhang <huihuiz at quicinc.com>
  Date:   2020-05-07 (Thu, 07 May 2020)

  Changed paths:
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    A llvm/test/Transforms/InstCombine/vscale_extractelement.ll

  Log Message:
  -----------
  [InstCombine][SVE] Fix visitExtractElementInst for scalable type.

Summary:
This patch fix the following issues with visitExtractElementInst:

      1. Restrict VectorUtils::findScalarElement to fixed-length vector.
         For scalable type, the number of elements in shuffle mask is
         unknown at compile-time.
      2. Fix out-of-range calculation for fixed-length vector.
      3. Skip scalable type when analysis rely on fixed number of elements.
      4. Add unit tests to check functionality of extractelement for scalable type.

Reviewers: sdesmalen, efriedma, spatel, nikic

Reviewed By: efriedma

Subscribers: tschuett, hiraditya, rkruppe, psnobl, llvm-commits

Tags: #llvm

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




More information about the All-commits mailing list