On Fri, Jun 18, 2021 at 04:30:21PM -0700, Nick Desaulniers wrote:
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
Oh, awesome! Thanks for the fast work on this. If there are no objections,
I'll apply this in front of the PGO series and put it in -next.
-Kees
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
--
Kees Cook