[PATCH] D109531: [CSSPGO] Enable pseudo probe instrumentation in O0 mode.
Hongtao Yu via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 9 22:31:40 PDT 2021
hoy added a comment.
In D109531#2993394 <https://reviews.llvm.org/D109531#2993394>, @wmi wrote:
> In D109531#2992721 <https://reviews.llvm.org/D109531#2992721>, @hoy wrote:
>
>> In D109531#2992702 <https://reviews.llvm.org/D109531#2992702>, @wenlei wrote:
>>
>>> The change makes sense given instr PGO also happens for O0. But practically, if a file is being built with O0, do we care about its profile given we're not really optimizing it anyways? Functions from O0 modules are not supposed to be inlined into O1 <https://reviews.llvm.org/owners/package/1/>+ modules either.
>>
>> We probably don't care about performance for O0 build. The change is for consistency, also makes the compiler happy which otherwise will complain about "Pseudo-probe-based profile requires SampleProfileProbePass" for O0 modules that don't have probes.
>
> The complain message is emitted in SampleProfileLoader::doInitialization. llvm will not run SampleProfileLoader pass for O0 module. Why there is the complain?
Good question. It could happen in lto postlink which by default optimizes in -O2 mode. More specifically, with the following command, both `cc1` and `lld` will run in default mode, which is -O0 for cc1 and -O2 for lld.
clang -flto 1.cpp -v -fuse-ld=lld
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D109531/new/
https://reviews.llvm.org/D109531
More information about the llvm-commits
mailing list