[all-commits] [llvm/llvm-project] 60c642: [TLI] Per-function fveclib for math library used f...

WenleiHe via All-commits all-commits at lists.llvm.org
Thu Apr 9 18:27:04 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 60c642e74be6af86906d9f3d982728be7bd4329f
      https://github.com/llvm/llvm-project/commit/60c642e74be6af86906d9f3d982728be7bd4329f
  Author: Wenlei He <aktoon at gmail.com>
  Date:   2020-04-09 (Thu, 09 Apr 2020)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGCall.cpp
    A clang/test/CodeGen/libcalls-veclib.c
    M llvm/include/llvm/Analysis/TargetLibraryInfo.h
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/test/Transforms/Inline/inline-no-builtin-compatible.ll
    A llvm/test/Transforms/Inline/veclib-compat.ll

  Log Message:
  -----------
  [TLI] Per-function fveclib for math library used for vectorization

Summary:
Encode `-fveclib` setting as per-function attribute so it can threaded through to LTO backends. Accordingly per-function TLI now reads
the attributes and select available vector function list based on that. Now we also populate function list for all supported vector
libraries for the shared per-module `TargetLibraryInfoImpl`, so each function can select its available vector list independently but without
duplicating the vector function lists. Inlining between incompatbile vectlib attributed is also prohibited now.

Subscribers: hiraditya, dexonsmith, cfe-commits

Tags: #clang

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




More information about the All-commits mailing list