aboutsummaryrefslogtreecommitdiff
path: root/kernel/gcov/gcc_4_7.c
AgeCommit message (Collapse)AuthorFilesLines
2014-06-10gcov: add support for GCC 4.9Yuan Pengfei1-0/+5
This patch handles the gcov-related changes in GCC 4.9: A new counter (time profile) is added. The total number is 9 now. A new profile merge function __gcov_merge_time_profile is added. See gcc/gcov-io.h and libgcc/libgcov-merge.c For the first change, the layout of struct gcov_info is affected. For the second one, a dummy function is added to kernel/gcov/base.c similarly. Signed-off-by: Yuan Pengfei <[email protected]> Acked-by: Peter Oberparleiter <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2013-11-13gcov: add support for gcc 4.7 gcov formatFrantisek Hrbata1-0/+560
The gcov in-memory format changed in gcc 4.7. The biggest change, which requires this special implementation, is that gcov_info no longer contains array of counters for each counter type for all functions and gcov_fn_info is not used for mapping of function's counters to these arrays(offset). Now each gcov_fn_info contans it's counters, which makes things a little bit easier. This is heavily based on the previous gcc_3_4.c implementation and patches provided by Peter Oberparleiter. Specially the buffer gcda implementation for iterator. [[email protected]: use kmemdup() and kcalloc()] [[email protected]: gcc_4_7.c needs vmalloc.h] Signed-off-by: Frantisek Hrbata <[email protected]> Cc: Jan Stancek <[email protected]> Cc: Kees Cook <[email protected]> Reviewed-by: Peter Oberparleiter <[email protected]> Cc: Rusty Russell <[email protected]> Cc: Arnd Bergmann <[email protected]> Cc: Andy Gospodarek <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>