diff options
Diffstat (limited to 'tools/perf/util/hist.h')
| -rw-r--r-- | tools/perf/util/hist.h | 60 | 
1 files changed, 13 insertions, 47 deletions
| diff --git a/tools/perf/util/hist.h b/tools/perf/util/hist.h index ee789856a8c9..cb6858a2f9a3 100644 --- a/tools/perf/util/hist.h +++ b/tools/perf/util/hist.h @@ -9,33 +9,6 @@ extern struct callchain_param callchain_param;  struct hist_entry;  struct addr_location;  struct symbol; -struct rb_root; - -struct objdump_line { -	struct list_head node; -	s64		 offset; -	char		 *line; -}; - -void objdump_line__free(struct objdump_line *self); -struct objdump_line *objdump__get_next_ip_line(struct list_head *head, -					       struct objdump_line *pos); - -struct sym_hist { -	u64		sum; -	u64		ip[0]; -}; - -struct sym_ext { -	struct rb_node	node; -	double		percent; -	char		*path; -}; - -struct sym_priv { -	struct sym_hist	*hist; -	struct sym_ext	*ext; -};  /*   * The kernel collects the number of events it couldn't send in a stretch and @@ -69,14 +42,13 @@ enum hist_column {  };  struct hists { -	struct rb_node		rb_node;  	struct rb_root		entries;  	u64			nr_entries;  	struct events_stats	stats; -	u64			config;  	u64			event_stream; -	u32			type;  	u16			col_len[HISTC_NR_COLS]; +	/* Best would be to reuse the session callchain cursor */ +	struct callchain_cursor	callchain_cursor;  };  struct hist_entry *__hists__add_entry(struct hists *self, @@ -102,9 +74,8 @@ size_t hists__fprintf_nr_events(struct hists *self, FILE *fp);  size_t hists__fprintf(struct hists *self, struct hists *pair,  		      bool show_displacement, FILE *fp); -int hist_entry__inc_addr_samples(struct hist_entry *self, u64 ip); -int hist_entry__annotate(struct hist_entry *self, struct list_head *head, -			 size_t privsize); +int hist_entry__inc_addr_samples(struct hist_entry *self, int evidx, u64 addr); +int hist_entry__annotate(struct hist_entry *self, size_t privsize);  void hists__filter_by_dso(struct hists *self, const struct dso *dso);  void hists__filter_by_thread(struct hists *self, const struct thread *thread); @@ -113,21 +84,18 @@ u16 hists__col_len(struct hists *self, enum hist_column col);  void hists__set_col_len(struct hists *self, enum hist_column col, u16 len);  bool hists__new_col_len(struct hists *self, enum hist_column col, u16 len); -#ifdef NO_NEWT_SUPPORT -static inline int hists__browse(struct hists *self __used, -				const char *helpline __used, -				const char *ev_name __used) -{ -	return 0; -} +struct perf_evlist; -static inline int hists__tui_browse_tree(struct rb_root *self __used, -					 const char *help __used) +#ifdef NO_NEWT_SUPPORT +static inline +int perf_evlist__tui_browse_hists(struct perf_evlist *evlist __used, +				  const char *help __used)  {  	return 0;  } -static inline int hist_entry__tui_annotate(struct hist_entry *self __used) +static inline int hist_entry__tui_annotate(struct hist_entry *self __used, +					   int evidx __used)  {  	return 0;  } @@ -135,14 +103,12 @@ static inline int hist_entry__tui_annotate(struct hist_entry *self __used)  #define KEY_RIGHT -2  #else  #include <newt.h> -int hists__browse(struct hists *self, const char *helpline, -		  const char *ev_name); -int hist_entry__tui_annotate(struct hist_entry *self); +int hist_entry__tui_annotate(struct hist_entry *self, int evidx);  #define KEY_LEFT NEWT_KEY_LEFT  #define KEY_RIGHT NEWT_KEY_RIGHT -int hists__tui_browse_tree(struct rb_root *self, const char *help); +int perf_evlist__tui_browse_hists(struct perf_evlist *evlist, const char *help);  #endif  unsigned int hists__sort_list_width(struct hists *self); | 
