[all-commits] [llvm/llvm-project] ef9d7d: [IndirectCallPromotion] Recommit "Don't strip ".__...

wmi-11 via All-commits all-commits at lists.llvm.org
Fri Mar 12 13:48:39 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ef9d7db72362b2df1237a87d5dc7dad6b0105df6
      https://github.com/llvm/llvm-project/commit/ef9d7db72362b2df1237a87d5dc7dad6b0105df6
  Author: Wei Mi <wmi at google.com>
  Date:   2021-03-12 (Fri, 12 Mar 2021)

  Changed paths:
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    A llvm/test/Transforms/PGOProfile/indirect_call_promotion_unique.ll

  Log Message:
  -----------
  [IndirectCallPromotion] Recommit "Don't strip ".__uniq." suffix when it strips
".llvm." suffix".

The recommit fixed a bug that symbols with "." at the beginning is not
properly handled in the last commit.

Original commit message:
Currently IndirectCallPromotion simply strip everything after the first "."
in LTO mode, in order to match the symbol name and the name with ".llvm."
suffix in the value profile. However, if -funique-internal-linkage-names
and thinlto are both enabled, the name may have both ".__uniq." suffix and
".llvm." suffix, and the current mechanism will strip them both, which is
unexpected. The patch fixes the problem.

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




More information about the All-commits mailing list