summaryrefslogtreecommitdiff
path: root/kernel/gcov/gcc_3_4.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/gcov/gcc_3_4.c')
-rw-r--r--kernel/gcov/gcc_3_4.c12
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,