Lines Matching refs:isec
136 if (!da->isec() || !db->isec()) { in equalsConstant()
140 isecA = da->isec(); in equalsConstant()
142 isecB = db->isec(); in equalsConstant()
194 isecA = dyn_cast<ConcatInputSection>(da->isec()); in equalsVariable()
197 isecB = cast<ConcatInputSection>(db->isec()); in equalsVariable()
287 parallelForEach(icfInputs, [&](ConcatInputSection *isec) { in run() argument
288 uint32_t hash = isec->icfEqClass[icfPass % 2]; in run()
289 for (const Reloc &r : isec->relocs) { in run()
292 if (defined->isec()) { in run()
294 dyn_cast<ConcatInputSection>(defined->isec())) in run()
297 hash += defined->isec()->kind() + in run()
298 defined->isec()->getOffset(defined->value); in run()
309 isec->icfEqClass[(icfPass + 1) % 2] = hash | (1ull << 31); in run()
351 [&](ConcatInputSection *isec) { in segregate() argument
352 return (this->*equals)(icfInputs[begin], isec); in segregate()
371 if (d->isec()) in markSymAsAddrSig()
372 d->isec()->keepUnique = true; in markSymAsAddrSig()
387 const InputSection *isec = addrSigSection->subsections[0].isec; in markAddrSigSymbols() local
389 for (const Reloc &r : isec->relocs) { in markAddrSigSymbols()
393 error(toString(isec) + ": unexpected section relocation"); in markAddrSigSymbols()
416 for (ConcatInputSection *isec : inputSections) { in foldIdenticalSections()
417 bool isFoldableWithAddendsRemoved = isCfStringSection(isec) || in foldIdenticalSections()
418 isClassRefsSection(isec) || in foldIdenticalSections()
419 isSelRefsSection(isec); in foldIdenticalSections()
422 bool hasFoldableFlags = (isSelRefsSection(isec) || in foldIdenticalSections()
423 sectionType(isec->getFlags()) == MachO::S_REGULAR); in foldIdenticalSections()
425 bool isFoldable = (!onlyCfStrings || isCfStringSection(isec)) && in foldIdenticalSections()
426 (isCodeSection(isec) || isFoldableWithAddendsRemoved || in foldIdenticalSections()
427 isGccExceptTabSection(isec)) && in foldIdenticalSections()
428 !isec->keepUnique && !isec->hasAltEntry && in foldIdenticalSections()
429 !isec->shouldOmitFromOutput() && hasFoldableFlags; in foldIdenticalSections()
431 foldable.push_back(isec); in foldIdenticalSections()
432 for (Defined *d : isec->symbols) in foldIdenticalSections()
444 MutableArrayRef<uint8_t> copy = isec->data.copy(bAlloc()); in foldIdenticalSections()
445 for (const Reloc &r : isec->relocs) in foldIdenticalSections()
448 isec->data = copy; in foldIdenticalSections()
450 } else if (!isEhFrameSection(isec)) { in foldIdenticalSections()
453 isec->icfEqClass[0] = ++icfUniqueID; in foldIdenticalSections()
456 parallelForEach(foldable, [](ConcatInputSection *isec) { in foldIdenticalSections() argument
457 assert(isec->icfEqClass[0] == 0); // don't overwrite a unique ID! in foldIdenticalSections()
460 isec->icfEqClass[0] = xxh3_64bits(isec->data) | (1ull << 31); in foldIdenticalSections()