OSDN Git Service

perf annotate: No need to calculate notes->start twice
authorArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 20 Mar 2018 14:03:30 +0000 (11:03 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 21 Mar 2018 15:53:43 +0000 (12:53 -0300)
Since we already set notes->start to map__rip_2objdump(map, sym->start)
in symbol__annotate2(), no need to calculate that address again in
symbol__calc_lines(), just use notes->start.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: https://lkml.kernel.org/n/tip-ycxlg8mm5ueuj21w6gi62l7g@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/annotate.c

index a711187..666f62c 100644 (file)
@@ -2230,7 +2230,7 @@ void annotation__update_column_widths(struct annotation *notes)
 }
 
 static void annotation__calc_lines(struct annotation *notes, struct map *map,
-                                 struct rb_root *root, u64 start)
+                                 struct rb_root *root)
 {
        struct annotation_line *al;
        struct rb_root tmp_root = RB_ROOT;
@@ -2251,8 +2251,8 @@ static void annotation__calc_lines(struct annotation *notes, struct map *map,
                if (percent_max <= 0.5)
                        continue;
 
-               al->path = get_srcline(map->dso, start + al->offset, NULL,
-                                      false, true, start + al->offset);
+               al->path = get_srcline(map->dso, notes->start + al->offset, NULL,
+                                      false, true, notes->start + al->offset);
                insert_source_line(&tmp_root, al);
        }
 
@@ -2263,9 +2263,8 @@ static void symbol__calc_lines(struct symbol *sym, struct map *map,
                              struct rb_root *root)
 {
        struct annotation *notes = symbol__annotation(sym);
-       u64 start = map__rip_2objdump(map, sym->start);
 
-       annotation__calc_lines(notes, map, root, start);
+       annotation__calc_lines(notes, map, root);
 }
 
 int symbol__tty_annotate2(struct symbol *sym, struct map *map,