Lines Matching defs:section

31  * Map file parsing and input section to output segment mapping.
40 * Each time a section is placed, the function set_addralign()
43 * - if the section is from an external file, check if this is empty or not.
44 * If not, we know the segment this section will belong needs a program
45 * header. (Of course, the program is needed only if this section falls
54 /* A discarded section has no influence on the output */
59 * If this section has data or will be assigned data
95 * Attach an input section to an output section
99 * osp - Output section descriptor
100 * isp - Input section descriptor
105 * - The input section has been attached to the output section
106 * - If the input section is a candidate for string table merging,
107 * then it is appended to the output section's list of merge
123 * If section ordering was specified for an unordered section
150 } else { /* Ordered section (via shdr flags) */
170 * If we didn't insert a section into the default list using
172 * section to the appropriate list.
180 * A section can be merged if the following are true:
184 * - The section must not be ordered via section header flags.
185 * - It must not be the generated section being built to
221 * created the section intended it to be mergeable. The
231 * Determine whether this input COMDAT section already exists for the associated
232 * output section. If so, then discard this input section. Otherwise, this
233 * must be the first COMDAT section, thus it is kept for future comparisons.
254 * Create a COMDAT avl tree for this output section if required.
265 * A standard COMDAT section uses the section name as search key.
274 * If this section hasn't already been identified as discarded,
285 * A discarded section does not require assignment to an output
286 * section. However, if relaxed relocations have been enabled
288 * processing), then this section must still be assigned to an
289 * output section so that the sloppy relocation logic will have
296 * This is a new COMDAT section - so keep it.
310 * Determine whether a GNU group COMDAT section name follows the convention
312 * section-name.symbol-name
314 * Each section within the input file is compared to see if the full section
315 * name matches the beginning of the COMDAT section, with a following '.'.
317 * caller can strip off the required section name.
336 * link-edits. For now, size the section name dynamically.
348 * required association with an output section. Determine whether this input
349 * section follows the convention, and if so return the appropriate output
350 * section name.
435 * "normal" section represented.
437 * Sections are named .<main>.<symbol> where <main> is the usual section to
439 * the original section. Both parts of the name may contain periods, in cases
440 * where the unique part of the name contains a '.' and/or the section it
457 char *section;
496 return (mp->section);
498 return (mp->section);
528 * Return NULL if there is no input file (internally generated section)
573 * Compare an input section path to the file comparison list the given
578 * containing the input section, initialized by
649 * Replace the section header for the given input section with a new section
654 * isp - Input section to replace
655 * sh_type - New section type to apply
658 * Returns the pointer to the new section header on success, and
675 * Issue a fatal warning for the given .eh_frame section, which
676 * cannot be merged with the existing .eh_frame output section.
687 * Locate the .eh_frame output section, and use the first section
716 * Place a section into the appropriate segment and output section.
720 * isp - Input section descriptor of section to be placed.
727 * alt_os_name - If non-NULL, the name of the output section to place
728 * isp into. If NULL, input sections go to an output section
729 * with the same name as the input section.
771 * If this section identifies group members, or this section indicates
772 * that it is a member of a group, determine whether the section is
783 * then this section needs to be discarded.
789 * Since we're discarding the section, we
790 * can skip assigning it to an output section.
793 * we need to assign the output section so
823 * matches the input section we have. If an entrance criterion is set
836 * set, it will match any section it is tested against.
883 * Transfer the input section sorting key from the entrance criteria
884 * to the input section. A non-zero value means that the section
887 * head of the output section.
889 * If the sort key is 0, the section is placed after the sorted
894 /* Remember that this entrance criteria has placed a section */
899 * section, then we defer to their request. Otherwise, the default
900 * is to use the same name as that of the input section being placed.
908 * Solaris section names may follow the convention:
910 * section-name%symbol-name
914 * the final object should not contain individual section headers for
916 * name to establish the final output section name.
921 * Strip out the % from the section name for:
923 * - Relocatable objects if input section sorting is
941 * section names into their outputs, such that our output object may
947 * GNU section names may follow the convention:
951 * The .gnu.linkonce is a section naming convention that indicates a
952 * COMDAT requirement. Determine whether this section follows the GNU
953 * pattern, and if so, determine whether this section should be
971 * Explicitly identify this section type as COMDAT. Also,
983 * GNU section names may also follow the convention:
985 * section-name.symbol-name
990 * match section names.
1016 * GNU section names named section-name.symbol-name which are not
1029 * Assign a hash value now that the output section name has been
1035 * Determine if output section ordering is turned on. If so, return
1036 * the appropriate ordering index for the section. This information
1040 * A value of 0 for os_ndx means that the section is not sorted
1059 * Mask of section header flags to ignore when matching sections. We
1071 * Traverse the input section list for the output section we have been
1072 * assigned. If we find a matching section simply add this new section.
1079 * An input section matches an output section if:
1082 * - Not a GROUP section
1083 * - Not a DTrace dof section
1085 * - Matching section flags, after screening out the
1092 * - The input section is COMDAT, and the output section
1110 * Process any COMDAT section, keeping the first and
1123 * If this section is a non-empty TLS section indicate
1131 * Insert the input section descriptor on the proper
1132 * output section descriptor list.
1134 * If this segment requires input section ordering,
1145 * If this input section and file is associated to an
1146 * artificially referenced output section, make sure
1148 * that this input section and file isn't eliminated
1152 * section below.
1167 * Do we need to worry about section ordering?
1172 /* insert section here. */
1179 /* insert section here. */
1189 * present input section we need to insert the new section
1199 * We are adding a new output section. Update the section header
1202 * If the input section triggering this output section has been marked
1203 * for discard, and if no other non-discarded input section comes along
1215 * Create a new output section descriptor.
1223 * Convert COMDAT section to PROGBITS as this the first section of the
1224 * output section. Save any COMDAT section for later processing, as
1225 * additional COMDAT sections that match this section need discarding.
1237 * .eh_frame section. Detect attempts to create more than
1283 * and must not be eliminated. Determine if this new output section is
1285 * referenced. Any input section and file associated to this output
1286 * section is also be marked as referenced, and thus won't be eliminated
1317 * If this section is a non-empty TLS section indicate that a PT_TLS
1325 * If a non-allocatable section is going to be put into a loadable
1326 * segment then turn on the allocate bit for this section and warn the
1339 * a section (after all sections have been processed this variable will
1356 * Insert the new section at the offset given by iidx. If no position
1358 * section to be prepended to the beginning of the section list.
1359 * Otherwise, it is the index following the section that was identified.