[all-commits] [llvm/llvm-project] fcad8d: [SLP] Make SLPVectorizer to use `llvm.masked.gathe...

Anton Afanasyev via All-commits all-commits at lists.llvm.org
Tue Nov 17 07:12:29 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: fcad8d3635cff61a2749dcef94c0d51fa1e3e413
      https://github.com/llvm/llvm-project/commit/fcad8d3635cff61a2749dcef94c0d51fa1e3e413
  Author: Anton Afanasyev <anton.a.afanasyev at gmail.com>
  Date:   2020-11-17 (Tue, 17 Nov 2020)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/lookahead.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll

  Log Message:
  -----------
  [SLP] Make SLPVectorizer to use `llvm.masked.gather` intrinsic

For the scattered operands of load instructions it makes sense
to use gathering load intrinsic, which can lower to native instruction
for X86/AVX512 and ARM/SVE. This also enables building
vectorization tree with entries containing scattered operands.
The next step is to add scattered store.

Fixes PR47629 and PR47623

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




More information about the All-commits mailing list