[all-commits] [llvm/llvm-project] 11a679: [clang][CodeGen] Omit pre-opt link when post-opt i...

Jacob Lambert via All-commits all-commits at lists.llvm.org
Wed May 8 08:11:36 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 11a6799740f824282650aa9ec249b55dcf1a8aae
      https://github.com/llvm/llvm-project/commit/11a6799740f824282650aa9ec249b55dcf1a8aae
  Author: Jacob Lambert <jacob.lambert at amd.com>
  Date:   2024-05-08 (Wed, 08 May 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/BackendConsumer.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/LinkInModulesPass.cpp
    A clang/test/CodeGen/linking-bitcode-postopt.cpp

  Log Message:
  -----------
  [clang][CodeGen] Omit pre-opt link when post-opt is link requested (#85672)

Currently, when the -relink-builtin-bitcodes-postop option is used we
link builtin bitcodes twice: once before optimization, and again after
optimization.

With this change, we omit the pre-opt linking when the option is set,
and we rename the option to the following:

  -Xclang -mlink-builtin-bitcodes-postopt
 (-Xclang -mno-link-builtin-bitcodes-postopt) 

The goal of this change is to reduce compile time. We do lose the
theoretical benefits of pre-opt linking, but in practice these are small
than the overhead of linking twice. However we may be able to address
this in a future patch by adjusting the position of the builtin-bitcode
linking pass.

Compilations not setting the option are unaffected



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list