Lines Matching full:sections

9 // This file implements --gc-sections, which is a feature to remove unused
10 // sections from output. Unused sections are sections that are not reachable
11 // from known GC-root symbols or sections. Naturally the feature is
15 // by default. Starting with GC-root symbols or sections, markLive function
16 // defined in this file visits all reachable sections to set their Live
17 // bits. Writer will then ignore sections whose Live bits are off, so that
18 // such sections are not included into output.
66 // A list of sections to visit.
69 // There are normally few input sections whose names are valid C
115 // executable sections. If the LSDA is in a section group or has the
146 // the gc pass. With that we would be able to also gc some sections holding
166 // Some sections are used directly by the loader, so they should never be
176 // SHT_NOTE sections in a group are subject to garbage collection.
191 // (splittable) sections, each piece of data has independent liveness bit.
215 // Starting from GC-root sections, this function visits all reachable
216 // sections to set their "Live" bits.
244 // Mark .eh_frame sections as live because there are usually no relocations
247 // referenced by .eh_frame sections, so we scan them for that here.
264 // Usually, non-SHF_ALLOC sections are not removed even if they are
268 // non-SHF_ALLOC section is retained, we also retain sections dependent on
271 // Note on SHF_LINK_ORDER: Such sections contain metadata and they
275 // Note on SHF_REL{,A}: Such sections reach here only when -r
280 // Note on nextInSectionGroup: The ELF spec says that group sections are
294 // Preserve special sections and those which are specified in linker
302 // sections regardless of zStartStopGC.
312 // Mark all reachable sections.
333 // Move the sections for some symbols to the main partition, specifically ifuncs
339 // We also need to move sections whose names are C identifiers that are referred
362 // input sections. This function make some or all of them on
366 // If --gc-sections is not given, retain all input sections.
379 // Follow the graph to mark all live sections.
383 // If we have multiple partitions, some sections need to live in the main
389 // Report garbage-collected sections.