diff options
Diffstat (limited to 'tools/perf/ui/gtk')
| -rw-r--r-- | tools/perf/ui/gtk/annotate.c | 25 | 
1 files changed, 13 insertions, 12 deletions
| diff --git a/tools/perf/ui/gtk/annotate.c b/tools/perf/ui/gtk/annotate.c index fc7a2e105bfd..aeeaf15029f0 100644 --- a/tools/perf/ui/gtk/annotate.c +++ b/tools/perf/ui/gtk/annotate.c @@ -31,14 +31,14 @@ static int perf_gtk__get_percent(char *buf, size_t size, struct symbol *sym,  	strcpy(buf, ""); -	if (dl->offset == (s64) -1) +	if (dl->al.offset == (s64) -1)  		return 0;  	symhist = annotation__histogram(symbol__annotation(sym), evidx); -	if (!symbol_conf.event_group && !symhist->addr[dl->offset].nr_samples) +	if (!symbol_conf.event_group && !symhist->addr[dl->al.offset].nr_samples)  		return 0; -	percent = 100.0 * symhist->addr[dl->offset].nr_samples / symhist->nr_samples; +	percent = 100.0 * symhist->addr[dl->al.offset].nr_samples / symhist->nr_samples;  	markup = perf_gtk__get_percent_color(percent);  	if (markup) @@ -57,16 +57,16 @@ static int perf_gtk__get_offset(char *buf, size_t size, struct symbol *sym,  	strcpy(buf, ""); -	if (dl->offset == (s64) -1) +	if (dl->al.offset == (s64) -1)  		return 0; -	return scnprintf(buf, size, "%"PRIx64, start + dl->offset); +	return scnprintf(buf, size, "%"PRIx64, start + dl->al.offset);  }  static int perf_gtk__get_line(char *buf, size_t size, struct disasm_line *dl)  {  	int ret = 0; -	char *line = g_markup_escape_text(dl->line, -1); +	char *line = g_markup_escape_text(dl->al.line, -1);  	const char *markup = "<span fgcolor='gray'>";  	strcpy(buf, ""); @@ -74,7 +74,7 @@ static int perf_gtk__get_line(char *buf, size_t size, struct disasm_line *dl)  	if (!line)  		return 0; -	if (dl->offset != (s64) -1) +	if (dl->al.offset != (s64) -1)  		markup = NULL;  	if (markup) @@ -119,7 +119,7 @@ static int perf_gtk__annotate_symbol(GtkWidget *window, struct symbol *sym,  	gtk_tree_view_set_model(GTK_TREE_VIEW(view), GTK_TREE_MODEL(store));  	g_object_unref(GTK_TREE_MODEL(store)); -	list_for_each_entry(pos, ¬es->src->source, node) { +	list_for_each_entry(pos, ¬es->src->source, al.node) {  		GtkTreeIter iter;  		int ret = 0; @@ -148,8 +148,8 @@ static int perf_gtk__annotate_symbol(GtkWidget *window, struct symbol *sym,  	gtk_container_add(GTK_CONTAINER(window), view); -	list_for_each_entry_safe(pos, n, ¬es->src->source, node) { -		list_del(&pos->node); +	list_for_each_entry_safe(pos, n, ¬es->src->source, al.node) { +		list_del(&pos->al.node);  		disasm_line__free(pos);  	} @@ -169,8 +169,7 @@ static int symbol__gtk_annotate(struct symbol *sym, struct map *map,  	if (map->dso->annotate_warned)  		return -1; -	err = symbol__disassemble(sym, map, perf_evsel__env_arch(evsel), -				  0, NULL, NULL); +	err = symbol__annotate(sym, map, evsel, 0, NULL);  	if (err) {  		char msg[BUFSIZ];  		symbol__strerror_disassemble(sym, map, err, msg, sizeof(msg)); @@ -178,6 +177,8 @@ static int symbol__gtk_annotate(struct symbol *sym, struct map *map,  		return -1;  	} +	symbol__calc_percent(sym, evsel); +  	if (perf_gtk__is_active_context(pgctx)) {  		window = pgctx->main_window;  		notebook = pgctx->notebook; |