Lines Matching +defs:run +defs:s
14 // Here's how it works. Each InputSectionBase has a "Live" bit. The bit is off
49 void run();
183 StringRef s = sec->name;
184 return s == ".init" || s == ".fini" || s.starts_with(".init_array") ||
185 s == ".jcr" || s.starts_with(".ctors") || s.starts_with(".dtors");
205 if (InputSection *s = dyn_cast<InputSection>(sec))
206 queue.push_back(s);
218 template <class ELFT> void MarkLive<ELFT>::run() {
222 // file can interpose other ELF file's symbols at runtime.
227 // If this isn't the main partition, that's all that we need to preserve.
236 for (StringRef s : ctx.arg.undefined)
237 markSymbol(ctx.symtab->find(s));
238 for (StringRef s : ctx.script->referencedSymbols)
239 markSymbol(ctx.symtab->find(s));
335 // (because they can result in an IRELATIVE being added to the main partition's
345 for (Symbol *s : file->getSymbols())
346 if (auto *d = dyn_cast<Defined>(s))
349 markSymbol(s);
371 if (auto *s = dyn_cast<SharedSymbol>(sym))
372 if (s->isUsedInRegularObj && !s->isWeak())
373 cast<SharedFile>(s->file)->isNeeded = true;
382 MarkLive<ELFT>(ctx, i).run();