mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-12 15:24:00 +08:00
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 browser_disasm_line {
|
||||||
struct rb_node rb_node;
|
struct rb_node rb_node;
|
||||||
double percent;
|
|
||||||
u32 idx;
|
u32 idx;
|
||||||
int idx_asm;
|
int idx_asm;
|
||||||
int jump_sources;
|
int jump_sources;
|
||||||
|
double percent[1];
|
||||||
};
|
};
|
||||||
|
|
||||||
static struct annotate_browser_opt {
|
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;
|
int width = browser->width, printed;
|
||||||
char bf[256];
|
char bf[256];
|
||||||
|
|
||||||
if (dl->offset != -1 && bdl->percent != 0.0) {
|
if (dl->offset != -1 && bdl->percent[0] != 0.0) {
|
||||||
ui_browser__set_percent_color(browser, bdl->percent, current_entry);
|
ui_browser__set_percent_color(browser, bdl->percent[0], current_entry);
|
||||||
slsmg_printf("%6.2f ", bdl->percent);
|
slsmg_printf("%6.2f ", bdl->percent[0]);
|
||||||
} else {
|
} else {
|
||||||
ui_browser__set_percent_color(browser, 0, current_entry);
|
ui_browser__set_percent_color(browser, 0, current_entry);
|
||||||
slsmg_write_nstring(" ", 7);
|
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) {
|
while (*p != NULL) {
|
||||||
parent = *p;
|
parent = *p;
|
||||||
l = rb_entry(parent, struct browser_disasm_line, rb_node);
|
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;
|
p = &(*p)->rb_left;
|
||||||
else
|
else
|
||||||
p = &(*p)->rb_right;
|
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) {
|
list_for_each_entry(pos, ¬es->src->source, node) {
|
||||||
struct browser_disasm_line *bpos = disasm_line__browser(pos);
|
struct browser_disasm_line *bpos = disasm_line__browser(pos);
|
||||||
bpos->percent = disasm_line__calc_percent(pos, sym, evsel->idx);
|
bpos->percent[0] = disasm_line__calc_percent(pos, sym, evsel->idx);
|
||||||
if (bpos->percent < 0.01) {
|
if (bpos->percent[0] < 0.01) {
|
||||||
RB_CLEAR_NODE(&bpos->rb_node);
|
RB_CLEAR_NODE(&bpos->rb_node);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user