menu "GCOV-based kernel profiling"

config GCOV_KERNEL
	bool "Enable gcov-based kernel profiling"
	depends on DEBUG_FS
	select CONSTRUCTORS if !UML
	default n
	---help---
	This option enables gcov-based code profiling (e.g. for code coverage
	measurements).

	If unsure, say N.

	Additionally specify CONFIG_GCOV_PROFILE_ALL=y to get profiling data
	for the entire kernel. To enable profiling for specific files or
	directories, add a line similar to the following to the respective
	Makefile:

	For a single file (e.g. main.o):
	        GCOV_PROFILE_main.o := y

	For all files in one directory:
	        GCOV_PROFILE := y

	To exclude files from being profiled even when CONFIG_GCOV_PROFILE_ALL
	is specified, use:

	        GCOV_PROFILE_main.o := n
	and:
	        GCOV_PROFILE := n

	Note that the debugfs filesystem has to be mounted to access
	profiling data.

config ARCH_HAS_GCOV_PROFILE_ALL
	def_bool n

config GCOV_PROFILE_ALL
	bool "Profile entire Kernel"
	depends on GCOV_KERNEL
	depends on ARCH_HAS_GCOV_PROFILE_ALL
	default n
	---help---
	This options activates profiling for the entire kernel.

	If unsure, say N.

	Note that a kernel compiled with profiling flags will be significantly
	larger and run slower. Also be sure to exclude files from profiling
	which are not linked to the kernel image to prevent linker errors.

choice
	prompt "Specify GCOV format"
	depends on GCOV_KERNEL
	default GCOV_FORMAT_AUTODETECT
	---help---
	The gcov format is usually determined by the GCC version, but there are
	exceptions where format changes are integrated in lower-version GCCs.
	In such a case use this option to adjust the format used in the kernel
	accordingly.

	If unsure, choose "Autodetect".

config GCOV_FORMAT_AUTODETECT
	bool "Autodetect"
	---help---
	Select this option to use the format that corresponds to your GCC
	version.

config GCOV_FORMAT_3_4
	bool "GCC 3.4 format"
	---help---
	Select this option to use the format defined by GCC 3.4.

config GCOV_FORMAT_4_7
	bool "GCC 4.7 format"
	---help---
	Select this option to use the format defined by GCC 4.7.

endchoice

endmenu
