diff options
Diffstat (limited to 'kernel/gcov/gcc_3_4.c')
-rw-r--r-- | kernel/gcov/gcc_3_4.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/kernel/gcov/gcc_3_4.c b/kernel/gcov/gcc_3_4.c index d753d1152b7b..bc78336bc345 100644 --- a/kernel/gcov/gcc_3_4.c +++ b/kernel/gcov/gcc_3_4.c @@ -466,8 +466,12 @@ int gcov_iter_write(struct gcov_iterator *iter, struct seq_file *seq) rc = seq_write_gcov_u32(seq, GCOV_TAG_FUNCTION); break; case RECORD_FUNCTON_TAG_LEN: +#ifdef GCOV_FN_INFO_HAS_NAME_FIELD rc = seq_write_gcov_u32(seq, GCOV_TAG_FUNCTION_LENGTH + (sizeof_str(get_func(iter)->name))); +#else + rc = seq_write_gcov_u32(seq, GCOV_TAG_FUNCTION_LENGTH); +#endif break; case RECORD_FUNCTION_IDENT: rc = seq_write_gcov_u32(seq, get_func(iter)->ident); @@ -479,11 +483,19 @@ int gcov_iter_write(struct gcov_iterator *iter, struct seq_file *seq) rc = seq_write_gcov_u32(seq, get_func(iter)->cfg_checksum); break; case RECORD_FUNCTION_NAME_LEN: +#ifdef GCOV_FN_INFO_HAS_NAME_FIELD rc = seq_write_gcov_u32(seq, (sizeof_str(get_func(iter)->name) - 1)); +#else + rc = 0; +#endif break; case RECORD_FUNCTION_NAME: +#ifdef GCOV_FN_INFO_HAS_NAME_FIELD rc = seq_write_gcov_str(seq, get_func(iter)->name); +#else + rc = 0; +#endif break; case RECORD_COUNT_TAG: rc = seq_write_gcov_u32(seq, |