1 // SPDX-License-Identifier: GPL-2.0
2 #ifndef __PERF_EVSEL_FPRINTF_H
3 #define __PERF_EVSEL_FPRINTF_H 1
10 struct perf_attr_details
{
18 int perf_evsel__fprintf(struct evsel
*evsel
,
19 struct perf_attr_details
*details
, FILE *fp
);
21 #define EVSEL__PRINT_IP (1<<0)
22 #define EVSEL__PRINT_SYM (1<<1)
23 #define EVSEL__PRINT_DSO (1<<2)
24 #define EVSEL__PRINT_SYMOFFSET (1<<3)
25 #define EVSEL__PRINT_ONELINE (1<<4)
26 #define EVSEL__PRINT_SRCLINE (1<<5)
27 #define EVSEL__PRINT_UNKNOWN_AS_ADDR (1<<6)
28 #define EVSEL__PRINT_CALLCHAIN_ARROW (1<<7)
29 #define EVSEL__PRINT_SKIP_IGNORED (1<<8)
32 struct perf_event_attr
;
34 struct callchain_cursor
;
37 int sample__fprintf_callchain(struct perf_sample
*sample
, int left_alignment
,
38 unsigned int print_opts
, struct callchain_cursor
*cursor
,
39 struct strlist
*bt_stop_list
, FILE *fp
);
41 int sample__fprintf_sym(struct perf_sample
*sample
, struct addr_location
*al
,
42 int left_alignment
, unsigned int print_opts
,
43 struct callchain_cursor
*cursor
,
44 struct strlist
*bt_stop_list
, FILE *fp
);
46 typedef int (*attr__fprintf_f
)(FILE *, const char *, const char *, void *);
48 int perf_event_attr__fprintf(FILE *fp
, struct perf_event_attr
*attr
,
49 attr__fprintf_f attr__fprintf
, void *priv
);
50 #endif // __PERF_EVSEL_H