[LIB] lexblock: make lexblock__fprintf show non zero high/low pcs
pfunct -TVi on a x86_64 vmlinux: __wsum csum_partial_copy_to_user(const void * src, void * dst, int len, __wsum isum, int * errp); { /* low_pc=0xffffffff8128ed37 */ { /* low_pc=0xffffffff8128ed48 */ long unsigned int flag; // 76 long unsigned int roksum; // 76 current_thread_info(void); /* size=9, low_pc=0xffffffff8128ed4b */ // 76 } /* high_pc=0xffffffff8128ed68 */ { /* low_pc=0xffffffff8128ed80 */ __u16 val16; // 83 add32_with_carry(unsigned int a, unsigned int b); /* size=8, low_pc=0xffffffff8128ed83 */ // 84 { /* low_pc=0xffffffff8128ed8b */ int __pu_err; // 86 } /* high_pc=0xffffffff8128ed90 */ } /* high_pc=0xffffffff8128eda3 */ } /* high_pc=0xffffffff8128edcc *//* size: 149 */ Signed-off-by: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
This commit is contained in:
parent
f4f8e0e16d
commit
86bf6e680b
10
dwarves.c
10
dwarves.c
|
@ -2112,10 +2112,16 @@ size_t lexblock__fprintf(const struct lexblock *self, const struct cu *cu,
|
|||
|
||||
if (indent >= sizeof(tabs))
|
||||
indent = sizeof(tabs) - 1;
|
||||
printed = fprintf(fp, "%.*s{\n", indent, tabs);
|
||||
printed = fprintf(fp, "%.*s{", indent, tabs);
|
||||
if (self->low_pc != 0)
|
||||
printed += fprintf(fp, " /* low_pc=%#llx */", self->low_pc);
|
||||
printed += fprintf(fp, "\n");
|
||||
list_for_each_entry(pos, &self->tags, node)
|
||||
printed += function__tag_fprintf(pos, cu, indent + 1, fp);
|
||||
return printed + fprintf(fp, "%.*s}", indent, tabs);
|
||||
printed += fprintf(fp, "%.*s}", indent, tabs);
|
||||
if (self->high_pc != 0)
|
||||
printed += fprintf(fp, " /* high_pc=%#llx */", self->high_pc);
|
||||
return printed;
|
||||
}
|
||||
|
||||
size_t ftype__fprintf(const struct ftype *self, const struct cu *cu,
|
||||
|
|
Loading…
Reference in New Issue