[PATCH 0/2] no_profile fn attr and Kconfig for GCOV+PGO

Nick Desaulniers
2021-06-18T23:30:48Z

When we say noinstr, we mean noinstr. GCOV and PGO can both instrument
functions. Add a new function annotation __no_profile that expands to
__attribute__((__no_profile__)) and Kconfig value
CC_HAS_NO_PROFILE_FN_ATTR.

Base is
https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git/log/?h=for-next/clang/pgo.

Nick Desaulniers (2):
compiler_attributes.h: define __no_profile, add to noinstr
Kconfig: CC_HAS_NO_PROFILE_FN_ATTR, depend on for GCOV and PGO

include/linux/compiler_attributes.h | 12 ++++++++++++
include/linux/compiler_types.h | 2 +-
init/Kconfig | 3 +++
kernel/gcov/Kconfig | 1 +
kernel/pgo/Kconfig | 3 ++-
5 files changed, 19 insertions(+), 2 deletions(-)

base-commit: 4356bc4c0425c81e204f561acf4dd0095544a6cb
--
2.32.0.288.g62a8d224e6-goog