xref: /openbmc/linux/tools/perf/util/branch.h (revision 992c7e9267c12a8e301152c5569028ff8d535322)
1*992c7e92SJin Yao #ifndef _PERF_BRANCH_H
2*992c7e92SJin Yao #define _PERF_BRANCH_H 1
3*992c7e92SJin Yao 
4*992c7e92SJin Yao #include <stdint.h>
5*992c7e92SJin Yao #include "../perf.h"
6*992c7e92SJin Yao 
7*992c7e92SJin Yao struct branch_type_stat {
8*992c7e92SJin Yao 	u64 counts[PERF_BR_MAX];
9*992c7e92SJin Yao 	u64 cond_fwd;
10*992c7e92SJin Yao 	u64 cond_bwd;
11*992c7e92SJin Yao 	u64 cross_4k;
12*992c7e92SJin Yao 	u64 cross_2m;
13*992c7e92SJin Yao };
14*992c7e92SJin Yao 
15*992c7e92SJin Yao struct branch_flags;
16*992c7e92SJin Yao 
17*992c7e92SJin Yao void branch_type_count(struct branch_type_stat *st, struct branch_flags *flags,
18*992c7e92SJin Yao 		       u64 from, u64 to);
19*992c7e92SJin Yao 
20*992c7e92SJin Yao const char *branch_type_name(int type);
21*992c7e92SJin Yao void branch_type_stat_display(FILE *fp, struct branch_type_stat *st);
22*992c7e92SJin Yao int branch_type_str(struct branch_type_stat *st, char *bf, int bfsize);
23*992c7e92SJin Yao 
24*992c7e92SJin Yao #endif /* _PERF_BRANCH_H */
25