Lines Matching refs:ptr

42     uintptr_t i = 0, ptr = tableData;  in LinearSearchEntry()  local
44 while (i++ < fdeCount && ptr < uti.endPc) { in LinearSearchEntry()
45 uintptr_t fdeAddr = ptr; in LinearSearchEntry()
46 if (GetCieOrFde(ptr, fdeInfo)) { in LinearSearchEntry()
71 uintptr_t ptr = 0; in SearchEntry() local
78 ptr = (uintptr_t) tableData + cur * sizeof(DwarfTableEntry); in SearchEntry()
79 if (!memory_->ReadS32(ptr, &dwarfTableEntry.startPc, true)) { in SearchEntry()
80 lastErrorData_.SetAddrAndCode(ptr, UNW_ERROR_INVALID_MEMORY); in SearchEntry()
85 if (!memory_->ReadS32(ptr, &dwarfTableEntry.fdeOffset, true)) { in SearchEntry()
86 lastErrorData_.SetAddrAndCode(ptr, UNW_ERROR_INVALID_MEMORY); in SearchEntry()
100ptr = static_cast<uintptr_t>(tableData) + (high - 1) * sizeof(DwarfTableEntry) + 4; // 4 : four by… in SearchEntry()
101 if (!memory_->ReadS32(ptr, &dwarfTableEntry.fdeOffset, true)) { in SearchEntry()
102 lastErrorData_.SetAddrAndCode(ptr, UNW_ERROR_INVALID_MEMORY); in SearchEntry()
142 uintptr_t ptr = addr; in GetCieOrFde() local
144 ParseCieOrFdeHeader(ptr, fdeInfo, isCieEntry); in GetCieOrFde()
147 if (!ParseCie(addr, ptr, fdeInfo.cie)) { in GetCieOrFde()
153 if (!ParseFde(addr, ptr, fdeInfo)) { in GetCieOrFde()
162 void DwarfSection::ParseCieOrFdeHeader(uintptr_t& ptr, FrameDescEntry &fdeInfo, bool& isCieEntry) in ParseCieOrFdeHeader() argument
165 memory_->ReadU32(ptr, &value32, true); in ParseCieOrFdeHeader()
170 memory_->ReadU64(ptr, &value64, true); in ParseCieOrFdeHeader()
171 instructionsEnd = ptr + value64; in ParseCieOrFdeHeader()
173 memory_->ReadU64(ptr, &value64, true); in ParseCieOrFdeHeader()
181 fdeInfo.cieAddr = static_cast<uintptr_t>(ptr - ciePtr); in ParseCieOrFdeHeader()
183 ptr += sizeof(uint64_t); in ParseCieOrFdeHeader()
185 instructionsEnd = ptr + value32; in ParseCieOrFdeHeader()
186 memory_->ReadU32(ptr, &value32, false); in ParseCieOrFdeHeader()
194 fdeInfo.cieAddr = static_cast<uintptr_t>(ptr - ciePtr); in ParseCieOrFdeHeader()
196 ptr += sizeof(uint32_t); in ParseCieOrFdeHeader()
228 bool DwarfSection::FillInFde(uintptr_t ptr, FrameDescEntry &fdeInfo) in FillInFde() argument
237 ptr += fdeInfo.cie.segmentSize; in FillInFde()
241 uintptr_t pcStart = memory_->ReadEncodedValue(ptr, fdeInfo.cie.pointerEncoding); in FillInFde()
242 uintptr_t pcRange = memory_->ReadEncodedValue(ptr, (fdeInfo.cie.pointerEncoding & 0x0F)); in FillInFde()
247 uintptr_t augLen = memory_->ReadUleb128(ptr); in FillInFde()
248 uintptr_t instructionsPtr = ptr + augLen; in FillInFde()
250 uintptr_t lsdaPtr = ptr; in FillInFde()
251 if (memory_->ReadEncodedValue(ptr, (fdeInfo.cie.lsdaEncoding & 0x0F)) != 0) { in FillInFde()
255 ptr = instructionsPtr; in FillInFde()
258 fdeInfo.instructionsOff = ptr; in FillInFde()
295 bool DwarfSection::FillInCie(uintptr_t ptr, CommonInfoEntry &cieInfo) in FillInCie() argument
298 memory_->ReadU8(ptr, &version, true); in FillInCie()
302 lastErrorData_.SetAddrAndCode(ptr, UNW_ERROR_UNSUPPORTED_VERSION); in FillInCie()
311 memory_->ReadU8(ptr, &ch, true); in FillInCie()
321 ptr += 1; in FillInCie()
322 memory_->ReadU8(ptr, &cieInfo.segmentSize, true); in FillInCie()
328 cieInfo.codeAlignFactor = (uint32_t)memory_->ReadUleb128(ptr); in FillInCie()
332 cieInfo.dataAlignFactor = (int32_t)memory_->ReadSleb128(ptr); in FillInCie()
338 memory_->ReadU8(ptr, &val, true); in FillInCie()
341 cieInfo.returnAddressRegister = (uintptr_t)memory_->ReadUleb128(ptr); in FillInCie()
347 cieInfo.instructionsOff = ptr; in FillInCie()
352 MAYBE_UNUSED uintptr_t augSize = memory_->ReadUleb128(ptr); in FillInCie()
354 cieInfo.instructionsOff = ptr + augSize; in FillInCie()
360 memory_->ReadU8(ptr, &personalityEncoding, true); in FillInCie()
361 cieInfo.personality = memory_->ReadEncodedValue(ptr, personalityEncoding); in FillInCie()
364 memory_->ReadU8(ptr, &cieInfo.lsdaEncoding, true); in FillInCie()
368 memory_->ReadU8(ptr, &cieInfo.pointerEncoding, true); in FillInCie()