[all-commits] [llvm/llvm-project] 21a471: [ThinLTO] Pass CodeGenOpts like UnrollLoops/Vector...

wmi-11 via All-commits all-commits at lists.llvm.org
Thu Jan 9 21:14:07 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 21a4710c67a97838dd75cf60ed24da11280800f8
      https://github.com/llvm/llvm-project/commit/21a4710c67a97838dd75cf60ed24da11280800f8
  Author: Wei Mi <wmi at google.com>
  Date:   2020-01-09 (Thu, 09 Jan 2020)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    A clang/test/CodeGen/thinlto-slp-vectorize-pm.c
    M lld/COFF/CMakeLists.txt
    M lld/ELF/CMakeLists.txt
    M lld/ELF/LTO.cpp
    A lld/test/ELF/lto/slp-vectorize-pm.ll
    M lld/wasm/CMakeLists.txt
    M llvm/include/llvm/LTO/Config.h
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-thinlto-defaults.ll
    A llvm/test/tools/gold/X86/slp-vectorize-pm.ll
    A llvm/test/tools/llvm-lto2/X86/slp-vectorize-pm.ll
    M llvm/tools/gold/gold-plugin.cpp
    M llvm/tools/llvm-lto2/CMakeLists.txt
    M llvm/tools/llvm-lto2/llvm-lto2.cpp

  Log Message:
  -----------
  [ThinLTO] Pass CodeGenOpts like UnrollLoops/VectorizeLoop/VectorizeSLP
down to pass builder in ltobackend.

Currently CodeGenOpts like UnrollLoops/VectorizeLoop/VectorizeSLP in clang
are not passed down to pass builder in ltobackend when new pass manager is
used. This is inconsistent with the behavior when new pass manager is used
and thinlto is not used. Such inconsistency causes slp vectorization pass
not being enabled in ltobackend for O3 + thinlto right now. This patch
fixes that.

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




More information about the All-commits mailing list