lkml.org 
[lkml]   [2012]   [Oct]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH -tip ] [BUGFIX] perf probe: Add a workaround for GCC -mfentry
From
Date
On Wed, 2012-10-03 at 21:17 +0900, Masami Hiramatsu wrote:

> Here are examples:
> -----
> <1><9a58>: Abbrev Number: 86 (DW_TAG_subprogram)
> <9a59> DW_AT_external : 1
> <9a59> DW_AT_name : (indirect string, offset: 0xd82): unregister_di
> e_notifier
> <9a5d> DW_AT_decl_file : 1
> <9a5e> DW_AT_decl_line : 551
> <9a60> DW_AT_prototyped : 1
> <9a60> DW_AT_type : <0x7c>
> <9a64> DW_AT_low_pc : 0x740
> <9a6c> DW_AT_high_pc : 0x75a
> <9a74> DW_AT_frame_base : 1 byte block: 9c (DW_OP_call_frame_cfa)
> <9a76> DW_AT_GNU_all_call_sites: 1
> <9a76> DW_AT_sibling : <0x9aac>
> <2><9a7a>: Abbrev Number: 87 (DW_TAG_formal_parameter)
> <9a7b> DW_AT_name : nb
> <9a7e> DW_AT_decl_file : 1
> <9a7f> DW_AT_decl_line : 551
> <9a81> DW_AT_type : <0x2a96>
> <9a85> DW_AT_location : 0x172f (location list)
> ...
> 0000172f 0000000000000745 0000000000000750 (DW_OP_reg5 (rdi))
> 0000172f 0000000000000750 0000000000000757 (DW_OP_reg4 (rsi))
> 0000172f 0000000000000757 000000000000075a (DW_OP_GNU_entry_value: (DW_OP_reg5 (rdi)); DW_OP_stack_value)
> 0000172f <End of list>
> -----
>
> As you can see, the location of the parameter "nb", starts from 0x745
> but unregister_die_notifier() function itself starts from 0x740.

Um, no I can't see. I guess I need to go and read up on DWARF formats.
Any good recommended links?

A quick google gives me:

http://en.wikipedia.org/wiki/DWARF
http://wiki.dwarfstd.org/index.php?title=Dwarf_FAQ
http://www.eagercon.com/dwarf/dwarf-2.0.0.pdf

Is this what you recommend reading? Or is there better documentation?

-- Steve




\
 
 \ /
  Last update: 2012-10-03 16:41    [W:0.046 / U:0.744 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site