[all-commits] [llvm/llvm-project] 7e99bd: [CSSPGO] Support of CS profiles in extended binary...
Hongtao Yu via All-commits
all-commits at lists.llvm.org
Wed Jan 27 21:30:33 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7e99bddfeaab2713a8bb6ca538da25b66e6efc59
https://github.com/llvm/llvm-project/commit/7e99bddfeaab2713a8bb6ca538da25b66e6efc59
Author: Hongtao Yu <hoy at fb.com>
Date: 2021-01-27 (Wed, 27 Jan 2021)
Changed paths:
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/ProfileData/SampleProfWriter.cpp
M llvm/lib/Transforms/IPO/SampleContextTracker.cpp
M llvm/test/Transforms/SampleProfile/profile-context-tracker.ll
A llvm/test/tools/llvm-profdata/Inputs/cs-sample.proftext
A llvm/test/tools/llvm-profdata/cs-sample-profile.test
M llvm/tools/llvm-profdata/llvm-profdata.cpp
M llvm/tools/llvm-profgen/ProfileGenerator.cpp
Log Message:
-----------
[CSSPGO] Support of CS profiles in extended binary format.
This change brings up support of context-sensitive profiles in the format of extended binary. Existing sample profile reader/writer/merger code is being tweaked to reflect the fact of bracketed input contexts, like (`[...]`). The paired brackets are also needed in extbinary profiles because we don't yet have an otherwise good way to tell calling contexts apart from regular function names since the context delimiter `@` can somehow serve as a part of the C++ mangled names.
Reviewed By: wmi, wenlei
Differential Revision: https://reviews.llvm.org/D95547
More information about the All-commits
mailing list