[all-commits] [llvm/llvm-project] 86b95b: [SampleProf] Handle coro wrapper function name can...

Wei Wang via All-commits all-commits at lists.llvm.org
Thu Jan 8 13:55:46 PST 2026


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 86b95b0c402ac8fae0fd4d2f62ad412918ad4254
      https://github.com/llvm/llvm-project/commit/86b95b0c402ac8fae0fd4d2f62ad412918ad4254
  Author: Wei Wang <apollo.mobility at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/test/CodeGenCoroutines/coro-attributes.cpp
    A llvm/test/Transforms/SampleProfile/Inputs/coro-annotate.prof
    A llvm/test/Transforms/SampleProfile/coro-annotate.ll

  Log Message:
  -----------
  [SampleProf] Handle coro wrapper function name canonicalization (#174881)

Fix an issue where `FunctionSamples::getCanonicalFnName` incorrectly
canonicalizes coro await suspense wrapper functions to collide with the
coro function itself. This causes the sample annotation to skip coro
function. Canonicalization strips everything comes after the first dot
(.), unless the function attribute
"sample-profile-suffix-elision-policy" is set to "selected", in which
case it strips after the known suffixes. The wrapper function name has
the suffix of ".__await_suspend_wrapper__" + await_kind. Add the
attribute to wrapper function so that the suffix is not stripped.



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