Home | History | Annotate | Download | only in src

Lines Matching refs:segment

2247      We also have to create the dynamic segment which is a special
2758 /* Convert the output segment list in a single-linked list. */
2759 struct output_segment *segment = ld_state.output_segments->next;
2761 ld_state.output_segments = segment;
2769 for (segment_nr = 0; segment != NULL; segment = segment->next, ++segment_nr)
2773 for (orule = segment->output_rules; orule != NULL; orule = orule->next)
2794 if ((segment->mode & PF_W) != 0)
2799 symbols, find the last writable segment and add one more data
2805 error (EXIT_FAILURE, 0, "no writable segment");
2825 /* Same segment as the last writable section. */
2897 resulting binary. Important is to respect segment boundaries and
2904 output and assigns them to a segment this information is used;
5558 struct output_segment *segment;
5564 varies. One exists for each segment. Each SHT_NOTE section gets
5569 XXX Determine whether the segment is non-empty. */
5571 segment = ld_state.output_segments;
5572 while (segment != NULL)
5575 segment = segment->next;
5611 /* The index of the first loadable segment. */
5614 segment = ld_state.output_segments;
5615 while (segment != NULL)
5623 segment->align = ld_state.pagesize;
5625 for (orule = segment->output_rules; orule != NULL;
5640 if (segment->mode != 0)
5664 /* The first segment starts at offset zero. */
5665 if (segment == ld_state.output_segments)
5667 segment->offset = 0;
5668 segment->addr = addr - shdr->sh_offset;
5672 segment->offset = shdr->sh_offset;
5673 segment->addr = addr;
5677 segment->align = MAX (segment->align, shdr->sh_addralign);
5682 memsize = shdr->sh_offset - segment->offset + shdr->sh_size;
5745 /* Store the segment parameter for loadable segments. */
5746 if (segment->mode != 0)
5751 phdr->p_offset = segment->offset;
5752 phdr->p_vaddr = segment->addr;
5756 phdr->p_flags = segment->mode;
5757 phdr->p_align = segment->align;
5763 segment = segment->next;
5878 /* Fill in the dynamic segment/section. */