Lines Matching defs:isec
27 InputSection *isec;
28 // Keep track of the entry that caused us to mark `isec` as live.
31 WhyLiveEntry(InputSection *isec, const WhyLiveEntry *prev)
32 : isec(isec), prev(prev) {}
39 virtual void enqueue(InputSection *isec, uint64_t off) = 0;
54 void enqueue(InputSection *isec, uint64_t off) override {
55 enqueue(isec, off, nullptr);
61 void enqueue(InputSection *isec, uint64_t off, const WorklistEntry *prev);
76 InputSection *isec, uint64_t off,
78 if (isec->isLive(off))
80 isec->markLive(off);
81 if (auto s = dyn_cast<ConcatInputSection>(isec)) {
92 const TinyPtrVector<Defined *> &symbols = entry->isec->symbols;
113 if (d->isec())
114 enqueue(d->isec(), d->value, prev);
124 return entry->isec;
132 InputSection *isec,
135 if (!isec) {
139 return make<WhyLiveEntry>(isec, prev);
141 return isec;
155 auto *isec = cast<ConcatInputSection>(getInputSection(entry));
156 assert(isec->live && "We mark as live when pushing onto the worklist!");
159 for (const Reloc &r : isec->relocs) {
171 for (ConcatInputSection *isec : inputSections) {
174 if (!(isec->getFlags() & S_ATTR_LIVE_SUPPORT) || isec->live)
177 for (const Reloc &r : isec->relocs) {
182 referentIsec = d->isec();
183 enqueue(isec, 0, makeEntry(referentIsec, nullptr));
188 enqueue(isec, 0, makeEntry(referentIsec, nullptr));
261 for (ConcatInputSection *isec : inputSections) {
263 if (isec->getFlags() & S_ATTR_NO_DEAD_STRIP) {
264 marker->enqueue(isec, 0);
269 if (sectionType(isec->getFlags()) == S_MOD_INIT_FUNC_POINTERS ||
270 sectionType(isec->getFlags()) == S_MOD_TERM_FUNC_POINTERS) {
272 sectionType(isec->getFlags()) != S_MOD_INIT_FUNC_POINTERS);
273 marker->enqueue(isec, 0);
278 for (ConcatInputSection *isec : in.initOffsets->inputs())
279 marker->enqueue(isec, 0);