[all-commits] [llvm/llvm-project] ca875c: [ThinLTO] a ThinLTO warning is added if cache_size...

MaggieYingYi via All-commits all-commits at lists.llvm.org
Mon Nov 14 04:33:36 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ca875cb4fe1340a89b3532a78bfe9bf41876c896
      https://github.com/llvm/llvm-project/commit/ca875cb4fe1340a89b3532a78bfe9bf41876c896
  Author: Ying Yi <maggieyi666 at gmail.com>
  Date:   2022-11-14 (Mon, 14 Nov 2022)

  Changed paths:
    M lld/COFF/LTO.cpp
    M lld/ELF/LTO.cpp
    M lld/MachO/LTO.cpp
    A lld/test/COFF/lto-cache-warnings.ll
    A lld/test/ELF/lto/cache-warnings.ll
    A lld/test/MachO/lto-cache-warnings.ll
    A lld/test/wasm/lto/cache-warnings.ll
    M lld/wasm/LTO.cpp
    M llvm/include/llvm/Support/CachePruning.h
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Support/CachePruning.cpp

  Log Message:
  -----------
  [ThinLTO] a ThinLTO warning is added if cache_size_bytes or cache_size_files is too small for the current link job. The warning recommends the user to consider adjusting --thinlto-cache-policy.

A specific case for ThinLTO cache pruning is that the current build is huge, and the cache wasn't big enough to hold the intermediate object files of that build. So in doing that build, a file would be cached, and later in that same build it would be evicted. This was significantly decreasing the effectiveness of the cache. By giving this warning, the user could identify the required cache size/files and improve ThinLTO link speed.

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




More information about the All-commits mailing list