• Taeung Song's avatar
    perf annotate: More exactly grep -v of the objdump command · e7cb9de2
    Taeung Song authored
    The 'grep -v "filename"' applied to the objdump command output cause a
    side effect eliminating filename:linenr of output of 'objdump -l' if the
    object file name and source file name are the same, fix it.
    
    E.g. the output of the following objdump command in symbol__disassemble():
    
        $ objdump -l -d -S -C /home/taeung/hello --start-address=...
    
        /home/taeung/hello:     file format elf64-x86-64
    
        Disassembly of section .text:
    
        0000000000400526 <main>:
        main():
        /home/taeung/hello.c:4
    
        void main()
        {
          400526:	55                   	push   %rbp
          400527:	48 89 e5             	mov    %rsp,%rbp
        /home/taeung/hello.c:5
        ...
    
    But it uses grep -v "filename" e.g. "/home/taeung/hello" in the objdump
    command to remove the first line containing file name and file format
    ("/home/taeung/hello:     file format elf64-x86-64"):
    
    Before:
    
        $ objdump -l -d -S -C /home/taeung/hello | grep /home/taeung/hello
    
    But this causes a side effect, removing filename:linenr too, because the
    object file and source file have the same name e.g. "/home/taueng/hello",
    "/home/taeung/hello.c"
    
    So more do a better match by using grep -v as below to correctly remove
    that first line:
    
        "/home/taeung/hello:     file format elf64-x86-64"
    
    After:
    
        $ objdump -l -d -S -C /home/taeung/hello | grep /home/taeung/hello:
    Signed-off-by: default avatarTaeung Song <treeze.taeung@gmail.com>
    Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Masami Hiramatsu <mhiramat@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: http://lkml.kernel.org/r/1489978617-31396-5-git-send-email-treeze.taeung@gmail.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    e7cb9de2
annotate.c 43.4 KB