Lines Matching defs:PC

51   ParseContext PC(G);
59 auto &CurSym = PC.AddrToSym[Sym->getAddress()];
66 if (auto Err = PC.AddrToBlock.addBlocks(Sec.blocks(),
82 if (auto Err = processBlock(PC, *B))
114 Error EHFrameEdgeFixer::processBlock(ParseContext &PC, Block &B) {
150 PC.G.getEndianness());
170 if (auto Err = processCIE(PC, B, CIEDeltaFieldOffset, BlockEdges))
173 if (auto Err = processFDE(PC, B, CIEDeltaFieldOffset, CIEDelta, BlockEdges))
180 Error EHFrameEdgeFixer::processCIE(ParseContext &PC, Block &B,
188 PC.G.getEndianness());
193 auto &CIESymbol = PC.G.addAnonymousSymbol(B, 0, B.getSize(), false, false);
210 if (auto Err = RecordReader.skip(PC.G.getPointerSize()))
258 PC, BlockEdges, *PersonalityPointerEncoding, RecordReader,
285 assert(!PC.CIEInfos.count(CIESymbol.getAddress()) &&
287 PC.CIEInfos[CIESymbol.getAddress()] = std::move(CIEInfo);
292 Error EHFrameEdgeFixer::processFDE(ParseContext &PC, Block &B,
302 PC.G.getEndianness());
307 auto &FDESymbol = PC.G.addAnonymousSymbol(B, 0, B.getSize(), false, false);
329 if (auto CIEInfoOrErr = PC.findCIEInfo(CIEAddress))
347 if (auto CIEInfoOrErr = PC.findCIEInfo(EI.Target->getAddress()))
354 // Process the PC-Begin field.
356 dbgs() << " Processing PC-begin at "
360 PC, BlockEdges, CIEInfo->AddressEncoding, RecordReader, B,
361 RecordReader.getOffset(), "PC begin")) {
362 assert(*PCBegin && "PC-begin symbol not set");
385 // Skip over the PC range size field.
396 PC, BlockEdges, CIEInfo->LSDAEncoding, RecordReader, B,
512 ParseContext &PC, const BlockEdgesInfo &BlockEdges, uint8_t PointerEncoding,
586 auto TargetSym = getOrCreateSymbol(PC, Target);
603 Expected<Symbol &> EHFrameEdgeFixer::getOrCreateSymbol(ParseContext &PC,
606 auto CanonicalSymI = PC.AddrToSym.find(Addr);
607 if (CanonicalSymI != PC.AddrToSym.end())
611 auto *B = PC.AddrToBlock.getBlockCovering(Addr);
617 PC.G.addAnonymousSymbol(*B, Addr - B->getAddress(), 0, false, false);
618 PC.AddrToSym[S.getAddress()] = &S;