[PATCH] D72734: [VectorUtils] Rework the Vector Function Database (VFDatabase).

Francesco Petrogalli via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 14 13:28:34 PST 2020


fpetrogalli created this revision.
fpetrogalli added reviewers: uabelho, fhahn, sdesmalen.
Herald added subscribers: llvm-commits, hiraditya.
Herald added a project: LLVM.
fpetrogalli added a comment.

@uabelho , let me know if the introduction of `isTLIScalarize` prevents the regressions you have seen in your out-of-tree compiler.

Regards,

Francesco


This commits is a rework of the patch in
https://reviews.llvm.org/D67572.

The rework was requested to prevent out-of-tree performance regression
when vectorizing out-of-tree IR intrinsics. The vectorization of such
intrinsics is enquired via the static function `isTLIScalarize`. For
detail see the discussion in https://reviews.llvm.org/D67572.

LLVM LangRef.rst has been updated to describe the syntax of the
`vector-function-abi-variants` attribute.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D72734

Files:
  llvm/docs/LangRef.rst
  llvm/include/llvm/Analysis/TargetLibraryInfo.h
  llvm/include/llvm/Analysis/VectorUtils.h
  llvm/lib/Analysis/LazyCallGraph.cpp
  llvm/lib/Analysis/LoopAccessAnalysis.cpp
  llvm/lib/Analysis/VectorUtils.cpp
  llvm/lib/Transforms/Utils/InjectTLIMappings.cpp
  llvm/lib/Transforms/Utils/ModuleUtils.cpp
  llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
  llvm/test/Other/opt-O2-pipeline.ll
  llvm/test/Other/opt-O3-pipeline.ll
  llvm/test/Other/opt-Os-pipeline.ll
  llvm/test/Transforms/LoopVectorize/AArch64/extractvalue-no-scalarization-required.ll
  llvm/unittests/Analysis/VectorFunctionABITest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D72734.238087.patch
Type: text/x-patch
Size: 24351 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200114/2aae3e3e/attachment-0001.bin>


More information about the llvm-commits mailing list