Lines Matching defs:addressSpace
158 static bool findFDE(A &addressSpace, pint_t pc, pint_t ehSectionStart,
161 static const char *decodeFDE(A &addressSpace, pint_t fdeStart,
164 static bool parseFDEInstructions(A &addressSpace, const FDE_Info &fdeInfo,
168 static const char *parseCIE(A &addressSpace, pint_t cie, CIE_Info *cieInfo);
176 const char *CFI_Parser<A>::decodeFDE(A &addressSpace, pint_t fdeStart,
180 pint_t cfiLength = (pint_t)addressSpace.get32(p);
184 cfiLength = (pint_t)addressSpace.get64(p);
189 uint32_t ciePointer = addressSpace.get32(p);
198 const char *err = parseCIE(addressSpace, cieStart, cieInfo);
205 addressSpace.getEncodedP(p, nextCFI, cieInfo->pointerEncoding);
207 addressSpace.getEncodedP(p, nextCFI, cieInfo->pointerEncoding & 0x0F);
212 pint_t augLen = (pint_t)addressSpace.getULEB128(p, nextCFI);
217 if (addressSpace.getEncodedP(p, nextCFI, cieInfo->lsdaEncoding & 0x0F) !=
222 addressSpace.getEncodedP(p, nextCFI, cieInfo->lsdaEncoding);
237 bool CFI_Parser<A>::findFDE(A &addressSpace, pint_t pc, pint_t ehSectionStart,
248 pint_t cfiLength = addressSpace.get32(p);
252 cfiLength = (pint_t)addressSpace.get64(p);
257 uint32_t id = addressSpace.get32(p);
264 uint32_t ciePointer = addressSpace.get32(p);
268 if (parseCIE(addressSpace, cieStart, cieInfo) == NULL) {
272 addressSpace.getEncodedP(p, nextCFI, cieInfo->pointerEncoding);
273 pint_t pcRange = addressSpace.getEncodedP(
281 pint_t augLen = (pint_t)addressSpace.getULEB128(p, nextCFI);
286 if (addressSpace.getEncodedP(
290 fdeInfo->lsda = addressSpace
319 const char *CFI_Parser<A>::parseCIE(A &addressSpace, pint_t cie,
336 pint_t cieLength = (pint_t)addressSpace.get32(p);
341 cieLength = (pint_t)addressSpace.get64(p);
348 if (addressSpace.get32(p) != 0)
352 uint8_t version = addressSpace.get8(p);
358 while (addressSpace.get8(p) != 0)
362 cieInfo->codeAlignFactor = (uint32_t)addressSpace.getULEB128(p, cieContentEnd);
364 cieInfo->dataAlignFactor = (int)addressSpace.getSLEB128(p, cieContentEnd);
366 uint64_t raReg = (version == 1) ? addressSpace.get8(p++)
367 : addressSpace.getULEB128(p, cieContentEnd);
372 if (addressSpace.get8(strStart) == 'z') {
374 addressSpace.getULEB128(p, cieContentEnd);
375 for (pint_t s = strStart; addressSpace.get8(s) != '\0'; ++s) {
376 switch (addressSpace.get8(s)) {
381 cieInfo->personalityEncoding = addressSpace.get8(p);
384 cieInfo->personality = addressSpace
388 cieInfo->lsdaEncoding = addressSpace.get8(p);
392 cieInfo->pointerEncoding = addressSpace.get8(p);
420 bool CFI_Parser<A>::parseFDEInstructions(A &addressSpace,
462 uint8_t opcode = addressSpace.get8(p);
471 codeOffset = addressSpace.getEncodedP(p, instructionsEnd,
476 codeOffset += (addressSpace.get8(p) * cieInfo.codeAlignFactor);
482 codeOffset += (addressSpace.get16(p) * cieInfo.codeAlignFactor);
488 codeOffset += (addressSpace.get32(p) * cieInfo.codeAlignFactor);
494 reg = addressSpace.getULEB128(p, instructionsEnd);
495 offset = (int64_t)addressSpace.getULEB128(p, instructionsEnd) *
508 reg = addressSpace.getULEB128(p, instructionsEnd);
519 reg = addressSpace.getULEB128(p, instructionsEnd);
529 reg = addressSpace.getULEB128(p, instructionsEnd);
543 reg = addressSpace.getULEB128(p, instructionsEnd);
544 reg2 = addressSpace.getULEB128(p, instructionsEnd);
588 reg = addressSpace.getULEB128(p, instructionsEnd);
589 offset = (int64_t)addressSpace.getULEB128(p, instructionsEnd);
601 reg = addressSpace.getULEB128(p, instructionsEnd);
612 (int32_t)addressSpace.getULEB128(p, instructionsEnd);
619 length = addressSpace.getULEB128(p, instructionsEnd);
627 reg = addressSpace.getULEB128(p, instructionsEnd);
635 length = addressSpace.getULEB128(p, instructionsEnd);
644 reg = addressSpace.getULEB128(p, instructionsEnd);
650 offset = addressSpace.getSLEB128(p, instructionsEnd) *
658 reg = addressSpace.getULEB128(p, instructionsEnd);
659 offset = addressSpace.getSLEB128(p, instructionsEnd) *
674 (int32_t)(addressSpace.getSLEB128(p, instructionsEnd) *
680 reg = addressSpace.getULEB128(p, instructionsEnd);
688 offset = (int64_t)addressSpace.getULEB128(p, instructionsEnd) *
696 reg = addressSpace.getULEB128(p, instructionsEnd);
702 offset = addressSpace.getSLEB128(p, instructionsEnd) *
710 reg = addressSpace.getULEB128(p, instructionsEnd);
718 length = addressSpace.getULEB128(p, instructionsEnd);
727 length = addressSpace.getULEB128(p, instructionsEnd);
732 reg = addressSpace.getULEB128(p, instructionsEnd);
738 offset = (int64_t)addressSpace.getULEB128(p, instructionsEnd) *
838 offset = (int64_t)addressSpace.getULEB128(p, instructionsEnd) *