| # SPDX-License-Identifier: GPL-2.0-only | 
 | config HAVE_GCC_PLUGINS | 
 | 	bool | 
 | 	help | 
 | 	  An arch should select this symbol if it supports building with | 
 | 	  GCC plugins. | 
 |  | 
 | menuconfig GCC_PLUGINS | 
 | 	bool "GCC plugins" | 
 | 	depends on HAVE_GCC_PLUGINS | 
 | 	depends on CC_IS_GCC | 
 | 	depends on $(success,test -e $(shell,$(CC) -print-file-name=plugin)/include/plugin-version.h) | 
 | 	default y | 
 | 	help | 
 | 	  GCC plugins are loadable modules that provide extra features to the | 
 | 	  compiler. They are useful for runtime instrumentation and static analysis. | 
 |  | 
 | 	  See Documentation/kbuild/gcc-plugins.rst for details. | 
 |  | 
 | if GCC_PLUGINS | 
 |  | 
 | config GCC_PLUGIN_SANCOV | 
 | 	bool | 
 | 	# Plugin can be removed once the kernel only supports GCC 6+ | 
 | 	depends on !CC_HAS_SANCOV_TRACE_PC | 
 | 	help | 
 | 	  This plugin inserts a __sanitizer_cov_trace_pc() call at the start of | 
 | 	  basic blocks. It supports all gcc versions with plugin support (from | 
 | 	  gcc-4.5 on). It is based on the commit "Add fuzzing coverage support" | 
 | 	  by Dmitry Vyukov <dvyukov@google.com>. | 
 |  | 
 | config GCC_PLUGIN_LATENT_ENTROPY | 
 | 	bool "Generate some entropy during boot and runtime" | 
 | 	help | 
 | 	  By saying Y here the kernel will instrument some kernel code to | 
 | 	  extract some entropy from both original and artificially created | 
 | 	  program state.  This will help especially embedded systems where | 
 | 	  there is little 'natural' source of entropy normally.  The cost | 
 | 	  is some slowdown of the boot process (about 0.5%) and fork and | 
 | 	  irq processing. | 
 |  | 
 | 	  Note that entropy extracted this way is not cryptographically | 
 | 	  secure! | 
 |  | 
 | 	  This plugin was ported from grsecurity/PaX. More information at: | 
 | 	   * https://grsecurity.net/ | 
 | 	   * https://pax.grsecurity.net/ | 
 |  | 
 | config GCC_PLUGIN_ARM_SSP_PER_TASK | 
 | 	bool | 
 | 	depends on GCC_PLUGINS && ARM | 
 |  | 
 | endif |