diff --git a/dwarf_loader.c b/dwarf_loader.c index 788a252..6d679d8 100644 --- a/dwarf_loader.c +++ b/dwarf_loader.c @@ -1741,6 +1741,8 @@ static int die__process_function(Dwarf_Die *die, struct ftype *ftype, tag = die__create_new_label(die, lexblock, cu, conf); break; case DW_TAG_inlined_subroutine: + if (conf->ignore_inline_expansions) + continue; tag = die__create_new_inline_expansion(die, lexblock, cu, conf); break; case DW_TAG_lexical_block: diff --git a/dwarves.h b/dwarves.h index 6fdda39..2a6be8d 100644 --- a/dwarves.h +++ b/dwarves.h @@ -52,6 +52,7 @@ struct conf_load { bool fixup_silly_bitfields; bool get_addr_info; bool ignore_alignment_attr; + bool ignore_inline_expansions; uint16_t kabi_prefix_len; const char *kabi_prefix; struct btf *base_btf;