Lines Matching full:sections
11 // The purpose of this pass is to assign sections to basic blocks when
12 // -fbasic-block-sections= option is used. Further, with profile information
13 // only the subset of basic blocks with profiles are placed in separate sections
17 // Basic Block Sections
20 // With option, -fbasic-block-sections=list, every function may be split into
25 // allow the linker to reorder the sections in any arbitrary sequence. A global
26 // order of these sections would encapsulate the function layout.
55 // needs special handling with basic block sections. DebugInfo needs to be
56 // emitted with more relocations as basic block sections can break a
113 return "Basic Block Sections Analysis";
118 /// Identify basic blocks that need separate sections and prepare to emit them
132 "Prepares for basic block sections, by splitting functions "
137 "Prepares for basic block sections, by splitting functions "
160 // We do not optimize branches for machine basic blocks ending sections, as
184 // empty, it means unique sections for all basic blocks in the function.
188 assert(MF.hasBBSections() && "BB Sections is not set for function.");
197 // associated with its cluster, unless we want individual unique sections
201 // If unique sections are desired for all basic blocks of the function, we
250 "Entry block should not be displaced by basic block sections");
292 // Identify, arrange, and modify basic blocks which need separate sections
293 // according to the specification provided by the -fbasic-block-sections flag.
335 // Helper function for ordering BB sections as follows:
337 // * Regular sections (in increasing order of their Number).
344 // other sections.
392 // First handle the basic block sections.
394 // Handle basic block address map after basic block sections are finalized.