perf annotate browser: Make browser_disasm_line->percent an array
Make percent field of struct browser_disasm_line an array and move it to the last. This is a preparation of event group view feature. Signed-off-by: Namhyung Kim <namhyung@kernel.org> Cc: Andi Kleen <andi@firstfloor.org> Cc: Ingo Molnar <mingo@kernel.org> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Namhyung Kim <namhyung.kim@lge.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Pekka Enberg <penberg@kernel.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Link: http://lkml.kernel.org/r/1362462812-30885-10-git-send-email-namhyung@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
1491c22a5f
commit
ab77df672c
@ -14,10 +14,10 @@
|
||||
|
||||
struct browser_disasm_line {
|
||||
struct rb_node rb_node;
|
||||
double percent;
|
||||
u32 idx;
|
||||
int idx_asm;
|
||||
int jump_sources;
|
||||
double percent[1];
|
||||
};
|
||||
|
||||
static struct annotate_browser_opt {
|
||||
@ -97,9 +97,9 @@ static void annotate_browser__write(struct ui_browser *browser, void *entry, int
|
||||
int width = browser->width, printed;
|
||||
char bf[256];
|
||||
|
||||
if (dl->offset != -1 && bdl->percent != 0.0) {
|
||||
ui_browser__set_percent_color(browser, bdl->percent, current_entry);
|
||||
slsmg_printf("%6.2f ", bdl->percent);
|
||||
if (dl->offset != -1 && bdl->percent[0] != 0.0) {
|
||||
ui_browser__set_percent_color(browser, bdl->percent[0], current_entry);
|
||||
slsmg_printf("%6.2f ", bdl->percent[0]);
|
||||
} else {
|
||||
ui_browser__set_percent_color(browser, 0, current_entry);
|
||||
slsmg_write_nstring(" ", 7);
|
||||
@ -283,7 +283,7 @@ static void disasm_rb_tree__insert(struct rb_root *root, struct browser_disasm_l
|
||||
while (*p != NULL) {
|
||||
parent = *p;
|
||||
l = rb_entry(parent, struct browser_disasm_line, rb_node);
|
||||
if (bdl->percent < l->percent)
|
||||
if (bdl->percent[0] < l->percent[0])
|
||||
p = &(*p)->rb_left;
|
||||
else
|
||||
p = &(*p)->rb_right;
|
||||
@ -345,8 +345,8 @@ static void annotate_browser__calc_percent(struct annotate_browser *browser,
|
||||
|
||||
list_for_each_entry(pos, ¬es->src->source, node) {
|
||||
struct browser_disasm_line *bpos = disasm_line__browser(pos);
|
||||
bpos->percent = disasm_line__calc_percent(pos, sym, evsel->idx);
|
||||
if (bpos->percent < 0.01) {
|
||||
bpos->percent[0] = disasm_line__calc_percent(pos, sym, evsel->idx);
|
||||
if (bpos->percent[0] < 0.01) {
|
||||
RB_CLEAR_NODE(&bpos->rb_node);
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user