| 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 !COMPILE_TEST | |
| 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 | |
| ---help--- | |
| The gcov format is usually determined by the GCC version, and the | |
| default is chosen according to your GCC version. However, there are | |
| exceptions where format changes are integrated in lower-version GCCs. | |
| In such a case, change this option to adjust the format used in the | |
| kernel accordingly. | |
| config GCOV_FORMAT_3_4 | |
| bool "GCC 3.4 format" | |
| depends on CC_IS_GCC && GCC_VERSION < 40700 | |
| ---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 |