Lines Matching refs:dwarf
62 case dwarf::DW_FORM_strp: in clone()
63 case dwarf::DW_FORM_line_strp: in clone()
64 case dwarf::DW_FORM_string: in clone()
65 case dwarf::DW_FORM_strx: in clone()
66 case dwarf::DW_FORM_strx1: in clone()
67 case dwarf::DW_FORM_strx2: in clone()
68 case dwarf::DW_FORM_strx3: in clone()
69 case dwarf::DW_FORM_strx4: in clone()
72 case dwarf::DW_FORM_ref_addr: in clone()
73 case dwarf::DW_FORM_ref1: in clone()
74 case dwarf::DW_FORM_ref2: in clone()
75 case dwarf::DW_FORM_ref4: in clone()
76 case dwarf::DW_FORM_ref8: in clone()
77 case dwarf::DW_FORM_ref_udata: in clone()
80 case dwarf::DW_FORM_data1: in clone()
81 case dwarf::DW_FORM_data2: in clone()
82 case dwarf::DW_FORM_data4: in clone()
83 case dwarf::DW_FORM_data8: in clone()
84 case dwarf::DW_FORM_udata: in clone()
85 case dwarf::DW_FORM_sdata: in clone()
86 case dwarf::DW_FORM_sec_offset: in clone()
87 case dwarf::DW_FORM_flag: in clone()
88 case dwarf::DW_FORM_flag_present: in clone()
89 case dwarf::DW_FORM_rnglistx: in clone()
90 case dwarf::DW_FORM_loclistx: in clone()
91 case dwarf::DW_FORM_implicit_const: in clone()
94 case dwarf::DW_FORM_block: in clone()
95 case dwarf::DW_FORM_block1: in clone()
96 case dwarf::DW_FORM_block2: in clone()
97 case dwarf::DW_FORM_block4: in clone()
98 case dwarf::DW_FORM_exprloc: in clone()
101 case dwarf::DW_FORM_addr: in clone()
102 case dwarf::DW_FORM_addrx: in clone()
103 case dwarf::DW_FORM_addrx1: in clone()
104 case dwarf::DW_FORM_addrx2: in clone()
105 case dwarf::DW_FORM_addrx3: in clone()
106 case dwarf::DW_FORM_addrx4: in clone()
111 dwarf::FormEncodingString(AttrSpec.Form) + in clone()
120 if (InputDieEntry->getTag() == dwarf::DW_TAG_compile_unit && in clone()
131 .addScalarAttribute(dwarf::DW_AT_str_offsets_base, in clone()
132 dwarf::DW_FORM_sec_offset, in clone()
143 case dwarf::DW_AT_low_pc: in shouldSkipAttribute()
144 case dwarf::DW_AT_high_pc: in shouldSkipAttribute()
145 case dwarf::DW_AT_ranges: in shouldSkipAttribute()
153 case dwarf::DW_AT_rnglists_base: in shouldSkipAttribute()
159 case dwarf::DW_AT_loclists_base: in shouldSkipAttribute()
165 case dwarf::DW_AT_location: in shouldSkipAttribute()
166 case dwarf::DW_AT_frame_base: in shouldSkipAttribute()
185 std::optional<const char *> String = dwarf::toString(Val); in cloneStringAttr()
195 if (AttrSpec.Attr == dwarf::DW_AT_name) in cloneStringAttr()
197 else if (AttrSpec.Attr == dwarf::DW_AT_MIPS_linkage_name || in cloneStringAttr()
198 AttrSpec.Attr == dwarf::DW_AT_linkage_name) in cloneStringAttr()
201 if (AttrSpec.Form == dwarf::DW_FORM_line_strp) { in cloneStringAttr()
211 .addStringPlaceholderAttribute(AttrSpec.Attr, dwarf::DW_FORM_line_strp) in cloneStringAttr()
226 .addStringPlaceholderAttribute(AttrSpec.Attr, dwarf::DW_FORM_strp) in cloneStringAttr()
231 .addIndexedStringAttribute(AttrSpec.Attr, dwarf::DW_FORM_strx, in cloneStringAttr()
239 if (AttrSpec.Attr == dwarf::DW_AT_sibling) in cloneDieRefAttr()
266 .addScalarAttribute(AttrSpec.Attr, dwarf::DW_FORM_ref4, 0xBADDEF) in cloneDieRefAttr()
275 .addScalarAttribute(AttrSpec.Attr, dwarf::DW_FORM_ref_addr, 0xBADDEF) in cloneDieRefAttr()
286 dwarf::Form NewForm = IsLocal ? dwarf::DW_FORM_ref4 : dwarf::DW_FORM_ref_addr; in cloneDieRefAttr()
312 case dwarf::DW_AT_macro_info: { in cloneScalarAttr()
326 case dwarf::DW_AT_macros: { in cloneScalarAttr()
340 case dwarf::DW_AT_stmt_list: { in cloneScalarAttr()
346 case dwarf::DW_AT_str_offsets_base: { in cloneScalarAttr()
362 case dwarf::DW_AT_decl_file: { in cloneScalarAttr()
391 if (AttrSpec.Attr == dwarf::DW_AT_const_value && in cloneScalarAttr()
392 (InputDieEntry->getTag() == dwarf::DW_TAG_variable || in cloneScalarAttr()
393 InputDieEntry->getTag() == dwarf::DW_TAG_constant)) in cloneScalarAttr()
409 if (AttrSpec.Attr == dwarf::DW_AT_declaration && Value) in cloneScalarAttr()
412 if (AttrSpec.Form == dwarf::DW_FORM_loclistx) in cloneScalarAttr()
420 dwarf::Form ResultingForm = AttrSpec.Form; in cloneScalarAttr()
421 if (AttrSpec.Form == dwarf::DW_FORM_rnglistx) { in cloneScalarAttr()
438 ResultingForm = dwarf::DW_FORM_sec_offset; in cloneScalarAttr()
439 } else if (AttrSpec.Form == dwarf::DW_FORM_loclistx) { in cloneScalarAttr()
456 ResultingForm = dwarf::DW_FORM_sec_offset; in cloneScalarAttr()
457 } else if (AttrSpec.Attr == dwarf::DW_AT_high_pc && in cloneScalarAttr()
458 InputDieEntry->getTag() == dwarf::DW_TAG_compile_unit) { in cloneScalarAttr()
467 } else if (AttrSpec.Form == dwarf::DW_FORM_sec_offset) in cloneScalarAttr()
469 else if (AttrSpec.Form == dwarf::DW_FORM_sdata) in cloneScalarAttr()
479 if (AttrSpec.Attr == dwarf::DW_AT_ranges || in cloneScalarAttr()
480 AttrSpec.Attr == dwarf::DW_AT_start_scope) { in cloneScalarAttr()
484 InputDieEntry->getTag() == dwarf::DW_TAG_compile_unit}, in cloneScalarAttr()
488 dwarf::doesFormBelongToClass(AttrSpec.Form, in cloneScalarAttr()
500 } else if (AttrSpec.Attr == dwarf::DW_AT_addr_base) { in cloneScalarAttr()
514 } else if (AttrSpec.Attr == dwarf::DW_AT_declaration && Value) in cloneScalarAttr()
550 dwarf::Form ResultForm = AttrSpec.Form; in cloneBlockAttr()
551 if ((ResultForm == dwarf::DW_FORM_block1 && Bytes.size() > UINT8_MAX) || in cloneBlockAttr()
552 (ResultForm == dwarf::DW_FORM_block2 && Bytes.size() > UINT16_MAX) || in cloneBlockAttr()
553 (ResultForm == dwarf::DW_FORM_block4 && Bytes.size() > UINT32_MAX)) in cloneBlockAttr()
554 ResultForm = dwarf::DW_FORM_block; in cloneBlockAttr()
557 if (AttrSpec.Form == dwarf::DW_FORM_exprloc) in cloneBlockAttr()
583 if (AttrSpec.Attr == dwarf::DW_AT_low_pc) in cloneAddressAttr()
617 if (InputDieEntry->getTag() == dwarf::DW_TAG_compile_unit && in cloneAddressAttr()
618 AttrSpec.Attr == dwarf::DW_AT_low_pc) { in cloneAddressAttr()
623 } else if (InputDieEntry->getTag() == dwarf::DW_TAG_compile_unit && in cloneAddressAttr()
624 AttrSpec.Attr == dwarf::DW_AT_high_pc) { in cloneAddressAttr()
636 if (AttrSpec.Form == dwarf::DW_FORM_addr) { in cloneAddressAttr()
642 .addScalarAttribute(AttrSpec.Attr, dwarf::Form::DW_FORM_addrx, in cloneAddressAttr()