Lines Matching refs:info

87 const char *gcov_info_filename(struct gcov_info *info)  in gcov_info_filename()  argument
89 return info->filename; in gcov_info_filename()
96 unsigned int gcov_info_version(struct gcov_info *info) in gcov_info_version() argument
98 return info->version; in gcov_info_version()
108 struct gcov_info *gcov_info_next(struct gcov_info *info) in gcov_info_next() argument
110 if (!info) in gcov_info_next()
113 return info->next; in gcov_info_next()
120 void gcov_info_link(struct gcov_info *info) in gcov_info_link() argument
122 info->next = gcov_info_head; in gcov_info_link()
123 gcov_info_head = info; in gcov_info_link()
131 void gcov_info_unlink(struct gcov_info *prev, struct gcov_info *info) in gcov_info_unlink() argument
134 prev->next = info->next; in gcov_info_unlink()
136 gcov_info_head = info->next; in gcov_info_unlink()
149 static int counter_active(struct gcov_info *info, unsigned int type) in counter_active() argument
151 return (1 << type) & info->ctr_mask; in counter_active()
155 static unsigned int num_counter_active(struct gcov_info *info) in num_counter_active() argument
161 if (counter_active(info, i)) in num_counter_active()
171 void gcov_info_reset(struct gcov_info *info) in gcov_info_reset() argument
173 unsigned int active = num_counter_active(info); in gcov_info_reset()
177 memset(info->counts[i].values, 0, in gcov_info_reset()
178 info->counts[i].num * sizeof(gcov_type)); in gcov_info_reset()
215 static size_t get_fn_size(struct gcov_info *info) in get_fn_size() argument
219 size = sizeof(struct gcov_fn_info) + num_counter_active(info) * in get_fn_size()
227 static struct gcov_fn_info *get_fn_info(struct gcov_info *info, unsigned int fn) in get_fn_info() argument
230 ((char *) info->functions + fn * get_fn_size(info)); in get_fn_info()
239 struct gcov_info *gcov_info_dup(struct gcov_info *info) in gcov_info_dup() argument
246 active = num_counter_active(info); in gcov_info_dup()
251 dup->version = info->version; in gcov_info_dup()
252 dup->stamp = info->stamp; in gcov_info_dup()
253 dup->n_functions = info->n_functions; in gcov_info_dup()
254 dup->ctr_mask = info->ctr_mask; in gcov_info_dup()
256 dup->filename = kstrdup(info->filename, GFP_KERNEL); in gcov_info_dup()
260 dup->functions = kmemdup(info->functions, info->n_functions * in gcov_info_dup()
261 get_fn_size(info), GFP_KERNEL); in gcov_info_dup()
266 struct gcov_ctr_info *ctr = &info->counts[i]; in gcov_info_dup()
287 void gcov_info_free(struct gcov_info *info) in gcov_info_free() argument
289 unsigned int active = num_counter_active(info); in gcov_info_free()
293 vfree(info->counts[i].values); in gcov_info_free()
294 kfree(info->functions); in gcov_info_free()
295 kfree(info->filename); in gcov_info_free()
296 kfree(info); in gcov_info_free()
335 struct gcov_info *info; member
348 return get_fn_info(iter->info, iter->function); in get_func()
362 struct gcov_iterator *gcov_iter_new(struct gcov_info *info) in gcov_iter_new() argument
367 num_counter_active(info) * sizeof(struct type_info), in gcov_iter_new()
370 iter->info = info; in gcov_iter_new()
390 return iter->info; in gcov_iter_get_info()
407 if (counter_active(iter->info, i)) { in gcov_iter_start()
468 if (iter->function < iter->info->n_functions) in gcov_iter_next()
530 rc = seq_write_gcov_u32(seq, iter->info->version); in gcov_iter_write()
533 rc = seq_write_gcov_u32(seq, iter->info->stamp); in gcov_iter_write()
557 iter->info->counts[iter->type]. in gcov_iter_write()