 17c568d60a
			
		
	
	
	17c568d60a
	
	
	
		
			
			Compile the correct gcov implementation file for the specific gcc version. Signed-off-by: Frantisek Hrbata <fhrbata@redhat.com> Cc: Jan Stancek <jstancek@redhat.com> Cc: Kees Cook <keescook@chromium.org> Acked-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Andy Gospodarek <agospoda@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
		
			
				
	
	
		
			79 lines
		
	
	
	
		
			2 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
	
		
			2 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| 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 GCOV_PROFILE_ALL
 | |
| 	bool "Profile entire Kernel"
 | |
| 	depends on GCOV_KERNEL
 | |
| 	depends on SUPERH || S390 || X86 || PPC || MICROBLAZE
 | |
| 	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
 |