Lines Matching refs:pArchive
86 Archive& pArchive) { in readArchive() argument
88 if (Archive::MAGIC_LEN == pArchive.getARFile().memArea()->size()) in readArchive()
91 if (pArchive.getARFile().attribute()->isWholeArchive()) in readArchive()
92 return includeAllMembers(pConfig, pArchive); in readArchive()
95 if (pArchive.getSymbolTable().empty()) { in readArchive()
97 readSymbolTable(pArchive); in readArchive()
100 readStringTable(pArchive); in readArchive()
103 pArchive.addArchiveMember(pArchive.getARFile().name(), in readArchive()
104 pArchive.inputs().root(), in readArchive()
112 for (size_t idx = 0; idx < pArchive.numOfSymbols(); ++idx) { in readArchive()
114 if (Archive::Symbol::Unknown != pArchive.getSymbolStatus(idx)) in readArchive()
118 if (pArchive.hasObjectMember(pArchive.getObjFileOffset(idx))) { in readArchive()
119 pArchive.setSymbolStatus(idx, Archive::Symbol::Include); in readArchive()
125 shouldIncludeSymbol(pArchive.getSymbolName(idx)); in readArchive()
127 pArchive.setSymbolStatus(idx, status); in readArchive()
131 includeMember(pConfig, pArchive, pArchive.getObjFileOffset(idx)); in readArchive()
231 static void readSymbolTableEntries(Archive& pArchive, in readSymbolTableEntries() argument
251 pArchive.addSymbol(name, mcld::bswap<SIZE>(*data)); in readSymbolTableEntries()
253 pArchive.addSymbol(name, *data); in readSymbolTableEntries()
260 bool GNUArchiveReader::readSymbolTable(Archive& pArchive) { in readSymbolTable() argument
261 assert(pArchive.getARFile().hasMemArea()); in readSymbolTable()
262 MemoryArea* memory_area = pArchive.getARFile().memArea(); in readSymbolTable()
265 (pArchive.getARFile().fileOffset() + Archive::MAGIC_LEN), in readSymbolTable()
273 pArchive.setSymTabSize(symtab_size); in readSymbolTable()
275 if (!pArchive.getARFile().attribute()->isWholeArchive()) { in readSymbolTable()
277 (pArchive.getARFile().fileOffset() + Archive::MAGIC_LEN + in readSymbolTable()
284 readSymbolTableEntries<32>(pArchive, symtab_region); in readSymbolTable()
288 readSymbolTableEntries<64>(pArchive, symtab_region); in readSymbolTable()
296 bool GNUArchiveReader::readStringTable(Archive& pArchive) { in readStringTable() argument
298 pArchive.getSymTabSize(); in readStringTable()
303 assert(pArchive.getARFile().hasMemArea()); in readStringTable()
304 MemoryArea* memory_area = pArchive.getARFile().memArea(); in readStringTable()
307 memory_area->request((pArchive.getARFile().fileOffset() + offset), in readStringTable()
319 memory_area->request((pArchive.getARFile().fileOffset() + offset + in readStringTable()
323 pArchive.getStrTable().assign(strtab, strtab_size); in readStringTable()
350 Archive& pArchive, in includeMember() argument
352 Input* cur_archive = &(pArchive.getARFile()); in includeMember()
361 pArchive, *cur_archive, file_offset, nested_offset, size); in includeMember()
372 pArchive.getArchiveMember(cur_archive->name()); in includeMember()
375 pArchive.inputs().insert(parent->lastPos, *(parent->move), *member); in includeMember()
386 if (pArchive.getARFile().noExport()) { in includeMember()
389 pArchive.addObjectMember(pFileOffset, parent->lastPos); in includeMember()
398 pArchive.addArchiveMember( in includeMember()
413 Archive& pArchive) { in includeAllMembers() argument
415 readSymbolTable(pArchive); in includeAllMembers()
418 readStringTable(pArchive); in includeAllMembers()
421 pArchive.addArchiveMember(pArchive.getARFile().name(), in includeAllMembers()
422 pArchive.inputs().root(), in includeAllMembers()
425 bool isThinAR = isThinArchive(pArchive.getARFile()); in includeAllMembers()
426 uint32_t begin_offset = pArchive.getARFile().fileOffset() + in includeAllMembers()
428 pArchive.getSymTabSize(); in includeAllMembers()
429 if (pArchive.hasStrTable()) { in includeAllMembers()
433 sizeof(Archive::MemberHeader) + pArchive.getStrTable().size(); in includeAllMembers()
435 uint32_t end_offset = pArchive.getARFile().memArea()->size(); in includeAllMembers()
438 size_t size = includeMember(pConfig, pArchive, offset); in includeAllMembers()