Lines Matching refs:PatchOffset
18 DebugDieRefPatch::DebugDieRefPatch(uint64_t PatchOffset, CompileUnit *SrcCU, in DebugDieRefPatch() argument
20 : SectionPatch({PatchOffset}), in DebugDieRefPatch()
25 DebugULEB128DieRefPatch::DebugULEB128DieRefPatch(uint64_t PatchOffset, in DebugULEB128DieRefPatch() argument
29 : SectionPatch({PatchOffset}), in DebugULEB128DieRefPatch()
33 DebugDieTypeRefPatch::DebugDieTypeRefPatch(uint64_t PatchOffset, in DebugDieTypeRefPatch() argument
35 : SectionPatch({PatchOffset}), RefTypeName(RefTypeName) {} in DebugDieTypeRefPatch()
37 DebugType2TypeDieRefPatch::DebugType2TypeDieRefPatch(uint64_t PatchOffset, in DebugType2TypeDieRefPatch() argument
41 : SectionPatch({PatchOffset}), Die(Die), TypeName(TypeName), in DebugType2TypeDieRefPatch()
44 DebugTypeStrPatch::DebugTypeStrPatch(uint64_t PatchOffset, DIE *Die, in DebugTypeStrPatch() argument
46 : SectionPatch({PatchOffset}), Die(Die), TypeName(TypeName), in DebugTypeStrPatch()
49 DebugTypeLineStrPatch::DebugTypeLineStrPatch(uint64_t PatchOffset, DIE *Die, in DebugTypeLineStrPatch() argument
52 : SectionPatch({PatchOffset}), Die(Die), TypeName(TypeName), in DebugTypeLineStrPatch()
171 void SectionDescriptor::apply(uint64_t PatchOffset, dwarf::Form AttrForm, in apply() argument
176 applyIntVal(PatchOffset, Val, Format.getDwarfOffsetByteSize()); in apply()
180 applyIntVal(PatchOffset, Val, Format.getRefAddrByteSize()); in apply()
183 applyIntVal(PatchOffset, Val, 1); in apply()
186 applyIntVal(PatchOffset, Val, 2); in apply()
189 applyIntVal(PatchOffset, Val, 4); in apply()
192 applyIntVal(PatchOffset, Val, 8); in apply()
196 applyIntVal(PatchOffset, Val, 1); in apply()
199 applyIntVal(PatchOffset, Val, 2); in apply()
202 applyIntVal(PatchOffset, Val, 4); in apply()
205 applyIntVal(PatchOffset, Val, 8); in apply()
208 applyULEB128(PatchOffset, Val); in apply()
211 applySLEB128(PatchOffset, Val); in apply()
214 applyIntVal(PatchOffset, Val, Format.getDwarfOffsetByteSize()); in apply()
217 applyIntVal(PatchOffset, Val, 1); in apply()
226 uint64_t SectionDescriptor::getIntVal(uint64_t PatchOffset, unsigned Size) { in getIntVal() argument
227 assert(PatchOffset < getContents().size()); in getIntVal()
231 (getContents().data() + PatchOffset)); in getIntVal()
234 return support::endian::read16(getContents().data() + PatchOffset, in getIntVal()
238 return support::endian::read32(getContents().data() + PatchOffset, in getIntVal()
242 return support::endian::read64(getContents().data() + PatchOffset, in getIntVal()
250 void SectionDescriptor::applyIntVal(uint64_t PatchOffset, uint64_t Val, in applyIntVal() argument
252 assert(PatchOffset < getContents().size()); in applyIntVal()
257 const_cast<char *>(getContents().data() + PatchOffset), in applyIntVal()
262 const_cast<char *>(getContents().data() + PatchOffset), in applyIntVal()
267 const_cast<char *>(getContents().data() + PatchOffset), in applyIntVal()
272 const_cast<char *>(getContents().data() + PatchOffset), in applyIntVal()
280 void SectionDescriptor::applyULEB128(uint64_t PatchOffset, uint64_t Val) { in applyULEB128() argument
281 assert(PatchOffset < getContents().size()); in applyULEB128()
287 memcpy(const_cast<char *>(getContents().data() + PatchOffset), ULEB, in applyULEB128()
292 void SectionDescriptor::applySLEB128(uint64_t PatchOffset, uint64_t Val) { in applySLEB128() argument
293 assert(PatchOffset < getContents().size()); in applySLEB128()
299 memcpy(const_cast<char *>(getContents().data() + PatchOffset), SLEB, in applySLEB128()
313 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_strp, Entry->Offset); in applyPatches()
330 Patch.PatchOffset += in applyPatches()
333 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_strp, Entry->Offset); in applyPatches()
341 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_line_strp, Entry->Offset); in applyPatches()
358 Patch.PatchOffset += in applyPatches()
361 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_line_strp, Entry->Offset); in applyPatches()
373 Section.getIntVal(Patch.PatchOffset, Format.getDwarfOffsetByteSize()); in applyPatches()
376 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_sec_offset, FinalValue); in applyPatches()
389 Section.getIntVal(Patch.PatchOffset, Format.getDwarfOffsetByteSize()); in applyPatches()
392 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_sec_offset, FinalValue); in applyPatches()
410 Section.apply(Patch.PatchOffset, FinalForm, FinalOffset); in applyPatches()
416 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_udata, in applyPatches()
430 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_ref_addr, in applyPatches()
446 Patch.PatchOffset += Patch.Die->getOffset() + in applyPatches()
456 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_ref4, in applyPatches()
466 Section.getIntVal(Patch.PatchOffset, Format.getDwarfOffsetByteSize()); in applyPatches()
468 Section.apply(Patch.PatchOffset, dwarf::DW_FORM_sec_offset, FinalValue); in applyPatches()