lkml.org 
[lkml]   [2013]   [Mar]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 02/12] perf annotate: Add a comment on the symbol__parse_objdump_line()
    Date
    From: Namhyung Kim <namhyung.kim@lge.com>

    The symbol__parse_objdump_line() parses result of the objdump run but
    it's hard to follow if one doesn't know the output format of the
    objdump. Add a head comment on the function to help her.

    Signed-off-by: Namhyung Kim <namhyung@kernel.org>
    ---
    tools/perf/util/annotate.c | 20 ++++++++++++++++++++
    1 file changed, 20 insertions(+)

    diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
    index 7eac5f0895ee..fa347b169e27 100644
    --- a/tools/perf/util/annotate.c
    +++ b/tools/perf/util/annotate.c
    @@ -689,6 +689,26 @@ static int disasm_line__print(struct disasm_line *dl, struct symbol *sym, u64 st
    return 0;
    }

    +/*
    + * symbol__parse_objdump_line() parses objdump output (with -d --no-show-raw)
    + * which looks like following
    + *
    + * 0000000000415500 <_init>:
    + * 415500: sub $0x8,%rsp
    + * 415504: mov 0x2f5ad5(%rip),%rax # 70afe0 <_DYNAMIC+0x2f8>
    + * 41550b: test %rax,%rax
    + * 41550e: je 415515 <_init+0x15>
    + * 415510: callq 416e70 <__gmon_start__@plt>
    + * 415515: add $0x8,%rsp
    + * 415519: retq
    + *
    + * it will be parsed and saved into struct disasm_line as
    + * <offset> <name> <ops.raw>
    + *
    + * The offset will be a relative offset from the start of the symbol and -1
    + * means that it's not a disassembly line so should be treated differently.
    + * The ops.raw part will be parsed further according to type of the instruction.
    + */
    static int symbol__parse_objdump_line(struct symbol *sym, struct map *map,
    FILE *file, size_t privsize)
    {
    --
    1.7.11.7


    \
     
     \ /
      Last update: 2013-03-05 07:41    [W:2.804 / U:0.096 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site