Lines Matching refs:sec

234       && (c1->cie_inf->u.cie.u.sec->output_section  in cie_eq()
235 == c2->cie_inf->u.cie.u.sec->output_section) in cie_eq()
269 h = iterative_hash_object (c->cie_inf->u.cie.u.sec->output_section, h); in cie_compute_hash()
481 asection *sec) in bfd_elf_record_eh_frame_entry() argument
505 hdr_info->u.compact.entries[hdr_info->array_count++] = sec; in bfd_elf_record_eh_frame_entry()
513 asection *sec, struct elf_reloc_cookie *cookie) in _bfd_elf_parse_eh_frame_entry() argument
523 if (sec->size == 0 in _bfd_elf_parse_eh_frame_entry()
524 || sec->sec_info_type != SEC_INFO_TYPE_NONE) in _bfd_elf_parse_eh_frame_entry()
529 if (sec->output_section && bfd_is_abs_section (sec->output_section)) in _bfd_elf_parse_eh_frame_entry()
549 elf_section_eh_frame_entry (text_sec) = sec; in _bfd_elf_parse_eh_frame_entry()
552 sec->flags |= SEC_EXCLUDE; in _bfd_elf_parse_eh_frame_entry()
554 sec->sec_info_type = SEC_INFO_TYPE_EH_FRAME_ENTRY; in _bfd_elf_parse_eh_frame_entry()
555 elf_section_data (sec)->sec_info = text_sec; in _bfd_elf_parse_eh_frame_entry()
556 bfd_elf_record_eh_frame_entry (hdr_info, sec); in _bfd_elf_parse_eh_frame_entry()
566 asection *sec, struct elf_reloc_cookie *cookie) in _bfd_elf_parse_eh_frame() argument
591 if (sec->size == 0 in _bfd_elf_parse_eh_frame()
592 || sec->sec_info_type != SEC_INFO_TYPE_NONE) in _bfd_elf_parse_eh_frame()
598 if (bfd_is_abs_section (sec->output_section)) in _bfd_elf_parse_eh_frame()
607 REQUIRE (bfd_malloc_and_get_section (abfd, sec, &ehbuf)); in _bfd_elf_parse_eh_frame()
609 if (sec->size >= 4 in _bfd_elf_parse_eh_frame()
620 REQUIRE (sec->size == (unsigned int) sec->size); in _bfd_elf_parse_eh_frame()
623 ->elf_backend_eh_frame_address_size (abfd, sec)); in _bfd_elf_parse_eh_frame()
629 end = ehbuf + sec->size; in _bfd_elf_parse_eh_frame()
689 while ((bfd_size_type) (buf - ehbuf) != sec->size) in _bfd_elf_parse_eh_frame()
700 REQUIRE (skip_bytes (&buf, ehbuf + sec->size, 4)); in _bfd_elf_parse_eh_frame()
704 REQUIRE ((bfd_size_type) (buf - ehbuf) + hdr_length <= sec->size); in _bfd_elf_parse_eh_frame()
715 REQUIRE ((bfd_size_type) (buf - ehbuf) == sec->size); in _bfd_elf_parse_eh_frame()
839 (abfd, info, sec))) in _bfd_elf_parse_eh_frame()
898 if ((sec->flags & SEC_LINKER_CREATED) == 0 || cookie->rels != NULL) in _bfd_elf_parse_eh_frame()
905 rsec = _bfd_elf_gc_mark_rsec (info, sec, gc_mark_hook, in _bfd_elf_parse_eh_frame()
928 abfd, sec); in _bfd_elf_parse_eh_frame()
1019 elf_section_data (sec)->sec_info = sec_info; in _bfd_elf_parse_eh_frame()
1020 sec->sec_info_type = SEC_INFO_TYPE_EH_FRAME; in _bfd_elf_parse_eh_frame()
1032 abfd, sec); in _bfd_elf_parse_eh_frame()
1051 asection *sec; in cmp_eh_frame_hdr() local
1053 sec = *(asection *const *)a; in cmp_eh_frame_hdr()
1054 sec = (asection *) elf_section_data (sec)->sec_info; in cmp_eh_frame_hdr()
1055 text_a = sec->output_section->vma + sec->output_offset; in cmp_eh_frame_hdr()
1056 sec = *(asection *const *)b; in cmp_eh_frame_hdr()
1057 sec = (asection *) elf_section_data (sec)->sec_info; in cmp_eh_frame_hdr()
1058 text_b = sec->output_section->vma + sec->output_offset; in cmp_eh_frame_hdr()
1070 add_eh_frame_hdr_terminator (asection *sec, in add_eh_frame_hdr_terminator() argument
1081 text_sec = (asection *) elf_section_data (sec)->sec_info; in add_eh_frame_hdr_terminator()
1091 if (!sec->rawsize) in add_eh_frame_hdr_terminator()
1092 sec->rawsize = sec->size; in add_eh_frame_hdr_terminator()
1094 bfd_set_section_size (sec->owner, sec, sec->size + 8); in add_eh_frame_hdr_terminator()
1132 mark_entry (struct bfd_link_info *info, asection *sec, in mark_entry() argument
1141 if (!_bfd_elf_gc_mark_reloc (info, sec, gc_mark_hook, cookie)) in mark_entry()
1152 _bfd_elf_gc_mark_fdes (struct bfd_link_info *info, asection *sec, in _bfd_elf_gc_mark_fdes() argument
1158 for (fde = elf_fde_list (sec); fde; fde = fde->u.fde.next_for_section) in _bfd_elf_gc_mark_fdes()
1184 find_merged_cie (bfd *abfd, struct bfd_link_info *info, asection *sec, in find_merged_cie() argument
1206 cie_inf->u.cie.u.sec = sec; in find_merged_cie()
1270 ->elf_backend_can_make_relative_eh_frame (abfd, info, sec))) in find_merged_cie()
1320 (bfd *abfd, struct bfd_link_info *info, asection *sec, in _bfd_elf_discard_section_eh_frame() argument
1329 if (sec->sec_info_type != SEC_INFO_TYPE_EH_FRAME) in _bfd_elf_discard_section_eh_frame()
1332 sec_info = (struct eh_frame_sec_info *) elf_section_data (sec)->sec_info; in _bfd_elf_discard_section_eh_frame()
1336 ptr_size = (get_elf_backend_data (sec->owner) in _bfd_elf_discard_section_eh_frame()
1337 ->elf_backend_eh_frame_address_size (sec->owner, sec)); in _bfd_elf_discard_section_eh_frame()
1344 ent->removed = sec->map_head.s != NULL; in _bfd_elf_discard_section_eh_frame()
1348 if ((sec->flags & SEC_LINKER_CREATED) != 0 && cookie->rels == NULL) in _bfd_elf_discard_section_eh_frame()
1353 = read_value (abfd, sec->contents + ent->offset + 8 + width, in _bfd_elf_discard_section_eh_frame()
1383 " table being created.\n"), abfd, sec); in _bfd_elf_discard_section_eh_frame()
1395 ent->u.fde.cie_inf = find_merged_cie (abfd, info, sec, hdr_info, in _bfd_elf_discard_section_eh_frame()
1414 sec->rawsize = sec->size; in _bfd_elf_discard_section_eh_frame()
1415 sec->size = offset; in _bfd_elf_discard_section_eh_frame()
1416 return offset != sec->rawsize; in _bfd_elf_discard_section_eh_frame()
1428 asection *sec; in _bfd_elf_discard_section_eh_frame_hdr() local
1439 sec = hdr_info->hdr_sec; in _bfd_elf_discard_section_eh_frame_hdr()
1440 if (sec == NULL) in _bfd_elf_discard_section_eh_frame_hdr()
1447 sec->size = 8; in _bfd_elf_discard_section_eh_frame_hdr()
1451 sec->size = EH_FRAME_HDR_SIZE; in _bfd_elf_discard_section_eh_frame_hdr()
1453 sec->size += 4 + hdr_info->u.dwarf.fde_count * 8; in _bfd_elf_discard_section_eh_frame_hdr()
1456 elf_eh_frame_hdr (abfd) = sec; in _bfd_elf_discard_section_eh_frame_hdr()
1560 asection *sec, in _bfd_elf_eh_frame_section_offset() argument
1566 if (sec->sec_info_type != SEC_INFO_TYPE_EH_FRAME) in _bfd_elf_eh_frame_section_offset()
1568 sec_info = (struct eh_frame_sec_info *) elf_section_data (sec)->sec_info; in _bfd_elf_eh_frame_section_offset()
1570 if (offset >= sec->rawsize) in _bfd_elf_eh_frame_section_offset()
1571 return offset - sec->rawsize + sec->size; in _bfd_elf_eh_frame_section_offset()
1644 asection *sec, bfd_byte *contents) in _bfd_elf_write_section_eh_frame_entry() argument
1651 asection *text_sec = (asection *) elf_section_data (sec)->sec_info; in _bfd_elf_write_section_eh_frame_entry()
1653 if (!sec->rawsize) in _bfd_elf_write_section_eh_frame_entry()
1654 sec->rawsize = sec->size; in _bfd_elf_write_section_eh_frame_entry()
1656 BFD_ASSERT (sec->sec_info_type == SEC_INFO_TYPE_EH_FRAME_ENTRY); in _bfd_elf_write_section_eh_frame_entry()
1661 if (sec->flags & SEC_EXCLUDE in _bfd_elf_write_section_eh_frame_entry()
1665 if (!bfd_set_section_contents (abfd, sec->output_section, contents, in _bfd_elf_write_section_eh_frame_entry()
1666 sec->output_offset, sec->rawsize)) in _bfd_elf_write_section_eh_frame_entry()
1671 for (offset = 8; offset < sec->rawsize; offset += 8) in _bfd_elf_write_section_eh_frame_entry()
1676 (*_bfd_error_handler) (_("%B: %s not in order"), sec->owner, sec->name); in _bfd_elf_write_section_eh_frame_entry()
1686 addr -= (sec->output_section->vma + sec->output_offset + sec->rawsize); in _bfd_elf_write_section_eh_frame_entry()
1690 sec->owner, sec->name); in _bfd_elf_write_section_eh_frame_entry()
1694 if (last_addr >= addr + sec->rawsize) in _bfd_elf_write_section_eh_frame_entry()
1697 sec->owner, sec->name); in _bfd_elf_write_section_eh_frame_entry()
1702 if (sec->size == sec->rawsize) in _bfd_elf_write_section_eh_frame_entry()
1706 BFD_ASSERT (sec->size == sec->rawsize + 8); in _bfd_elf_write_section_eh_frame_entry()
1712 return bfd_set_section_contents (abfd, sec->output_section, cantunwind, in _bfd_elf_write_section_eh_frame_entry()
1713 sec->output_offset + sec->rawsize, 8); in _bfd_elf_write_section_eh_frame_entry()
1722 asection *sec, in _bfd_elf_write_section_eh_frame() argument
1732 if (sec->sec_info_type != SEC_INFO_TYPE_EH_FRAME) in _bfd_elf_write_section_eh_frame()
1734 return bfd_set_section_contents (abfd, sec->output_section, contents, in _bfd_elf_write_section_eh_frame()
1735 sec->output_offset, sec->size); in _bfd_elf_write_section_eh_frame()
1738 ->elf_backend_eh_frame_address_size (abfd, sec)); in _bfd_elf_write_section_eh_frame()
1741 sec_info = (struct eh_frame_sec_info *) elf_section_data (sec)->sec_info; in _bfd_elf_write_section_eh_frame()
1878 val -= (sec->output_section->vma in _bfd_elf_write_section_eh_frame()
1879 + sec->output_offset in _bfd_elf_write_section_eh_frame()
1918 value = ((ent->new_offset + sec->output_offset + 4) in _bfd_elf_write_section_eh_frame()
1919 - (cie->new_offset + cie->u.cie.u.sec->output_offset)); in _bfd_elf_write_section_eh_frame()
1966 address += (sec->output_section->vma in _bfd_elf_write_section_eh_frame()
1967 + sec->output_offset in _bfd_elf_write_section_eh_frame()
1972 value -= (sec->output_section->vma in _bfd_elf_write_section_eh_frame()
1973 + sec->output_offset in _bfd_elf_write_section_eh_frame()
1992 = (sec->output_section->vma in _bfd_elf_write_section_eh_frame()
1993 + sec->output_offset in _bfd_elf_write_section_eh_frame()
2009 value -= (sec->output_section->vma in _bfd_elf_write_section_eh_frame()
2010 + sec->output_offset in _bfd_elf_write_section_eh_frame()
2047 value -= (sec->output_section->vma in _bfd_elf_write_section_eh_frame()
2048 + sec->output_offset in _bfd_elf_write_section_eh_frame()
2061 sec_size = sec->size; in _bfd_elf_write_section_eh_frame()
2069 return bfd_set_section_contents (abfd, sec->output_section, in _bfd_elf_write_section_eh_frame()
2070 contents, (file_ptr) sec->output_offset, in _bfd_elf_write_section_eh_frame()
2071 sec->size); in _bfd_elf_write_section_eh_frame()
2104 asection *sec = NULL; in _bfd_elf_fixup_eh_frame_hdr() local
2123 sec = hdr_info->u.compact.entries[i]; in _bfd_elf_fixup_eh_frame_hdr()
2124 if (sec->output_section != osec) in _bfd_elf_fixup_eh_frame_hdr()
2128 sec->output_section->name); in _bfd_elf_fixup_eh_frame_hdr()
2131 sec->output_offset = offset; in _bfd_elf_fixup_eh_frame_hdr()
2132 offset += sec->size; in _bfd_elf_fixup_eh_frame_hdr()
2137 for (p = sec->output_section->map_head.link_order; p != NULL; p = p->next) in _bfd_elf_fixup_eh_frame_hdr()
2168 asection *sec; in write_compact_eh_frame_hdr() local
2176 sec = hdr_info->hdr_sec; in write_compact_eh_frame_hdr()
2178 if (sec->size != 8) in write_compact_eh_frame_hdr()
2190 count = (sec->output_section->size - 8) / 8; in write_compact_eh_frame_hdr()
2192 return bfd_set_section_contents (abfd, sec->output_section, contents, in write_compact_eh_frame_hdr()
2193 (file_ptr) sec->output_offset, sec->size); in write_compact_eh_frame_hdr()
2221 asection *sec; in write_dwarf_eh_frame_hdr() local
2226 sec = hdr_info->hdr_sec; in write_dwarf_eh_frame_hdr()
2252 (abfd, info, eh_frame_sec, 0, sec, 4, &encoded_eh_frame); in write_dwarf_eh_frame_hdr()
2285 - sec->output_section->vma; in write_dwarf_eh_frame_hdr()
2289 != sec->output_section->vma + val)) in write_dwarf_eh_frame_hdr()
2292 val = hdr_info->u.dwarf.array[i].fde - sec->output_section->vma; in write_dwarf_eh_frame_hdr()
2296 != sec->output_section->vma + val)) in write_dwarf_eh_frame_hdr()
2318 if (!bfd_set_section_contents (abfd, sec->output_section, contents, in write_dwarf_eh_frame_hdr()
2319 (file_ptr) sec->output_offset, in write_dwarf_eh_frame_hdr()
2320 sec->size)) in write_dwarf_eh_frame_hdr()
2338 asection *sec; in _bfd_elf_write_section_eh_frame_hdr() local
2342 sec = hdr_info->hdr_sec; in _bfd_elf_write_section_eh_frame_hdr()
2344 if (info->eh_frame_hdr_type == 0 || sec == NULL) in _bfd_elf_write_section_eh_frame_hdr()
2356 _bfd_elf_eh_frame_address_size (bfd *abfd, asection *sec ATTRIBUTE_UNUSED) in _bfd_elf_eh_frame_address_size()