Lines Matching defs:isec

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