diff options
author | Nick Desaulniers <ndesaulniers@google.com> | 2021-06-18 13:33:44 -0700 |
---|---|---|
committer | Nick Desaulniers <ndesaulniers@google.com> | 2021-06-18 13:42:32 -0700 |
commit | 193e41c987127aad86d0380df83e67a85266f1f1 (patch) | |
tree | fc220057bce78a4978c42220932ebd01fc9256cc /llvm/lib/Transforms/Utils/BasicBlockUtils.cpp | |
parent | f7999e73caeff482a324ab0f9ac2fbeb99f8e3ec (diff) | |
download | llvm-193e41c987127aad86d0380df83e67a85266f1f1.zip llvm-193e41c987127aad86d0380df83e67a85266f1f1.tar.gz llvm-193e41c987127aad86d0380df83e67a85266f1f1.tar.bz2 |
[Clang][Codegen] Add GNU function attribute 'no_profile' and lower it to noprofile
noprofile IR attribute already exists to prevent profiling with PGO;
emit that when a function uses the newly added no_profile function
attribute.
The Linux kernel would like to avoid compiler generated code in
functions annotated with such attribute. We already respect this for
libcalls to fentry() and mcount().
Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80223
Link: https://lore.kernel.org/lkml/CAKwvOdmPTi93n2L0_yQkrzLdmpxzrOR7zggSzonyaw2PGshApw@mail.gmail.com/
Reviewed By: MaskRay, void, phosek, aaron.ballman
Differential Revision: https://reviews.llvm.org/D104475
Diffstat (limited to 'llvm/lib/Transforms/Utils/BasicBlockUtils.cpp')
0 files changed, 0 insertions, 0 deletions