Home | History | Annotate | Download | only in gold

Lines Matching refs:sd

337 Sized_dynobj<size, big_endian>::do_read_symbols(Read_symbols_data* sd)
339 this->base_read_symbols(sd);
348 Sized_dynobj<size, big_endian>::base_read_symbols(Read_symbols_data* sd)
350 this->read_section_data(&this->elf_file_, sd);
352 const unsigned char* const pshdrs = sd->section_headers->data();
363 sd->symbols = NULL;
364 sd->symbols_size = 0;
365 sd->external_symbols_offset = 0;
366 sd->symbol_names = NULL;
367 sd->symbol_names_size = 0;
368 sd->versym = NULL;
369 sd->versym_size = 0;
370 sd->verdef = NULL;
371 sd->verdef_size = 0;
372 sd->verdef_info = 0;
373 sd->verneed = NULL;
374 sd->verneed_size = 0;
375 sd->verneed_info = 0;
377 const unsigned char* namesu = sd->section_names->data();
379 if (memmem(names, sd->section_names_size, ".zdebug_", 8) != NULL)
383 pshdrs, this->shnum(), names, sd->section_names_size, this, true);
394 sd->symbols = this->get_lasting_view(dynsymshdr.get_sh_offset(),
397 sd->symbols_size =
417 sd->symbol_names = this->get_lasting_view(strtabshdr.get_sh_offset(),
420 sd->symbol_names_size =
428 &sd->versym, &sd->versym_size, &dummy);
436 strtab_shndx, &sd->verdef, &sd->verdef_size,
437 &sd->verdef_info);
440 strtab_shndx, &sd->verneed, &sd->verneed_size,
441 &sd->verneed_info);
450 (sd->symbol_names == NULL
452 : sd->symbol_names->data()),
453 sd->symbol_names_size);
477 Read_symbols_data* sd)
484 const unsigned char* pshdrs = sd->section_headers->data();
487 const unsigned char* pnamesu = sd->section_names->data();
496 if (shdr.get_sh_name() >= sd->section_names_size)
509 delete sd->section_headers;
510 sd->section_headers = NULL;
511 delete sd->section_names;
512 sd->section_names = NULL;
537 Read_symbols_data* sd,
540 if (sd->verdef == NULL)
543 const char* names = reinterpret_cast<const char*>(sd->symbol_names->data());
544 section_size_type names_size = sd->symbol_names_size;
546 const unsigned char* pverdef = sd->verdef->data();
547 section_size_type verdef_size = sd->verdef_size;
548 sd->verdef_info;
616 Read_symbols_data* sd,
619 if (sd->verneed == NULL)
622 const char* names = reinterpret_cast<const char*>(sd->symbol_names->data());
623 section_size_type names_size = sd->symbol_names_size;
625 const unsigned char* pverneed = sd->verneed->data();
626 const section_size_type verneed_size = sd->verneed_size;
627 const unsigned int count = sd->verneed_info;
695 Read_symbols_data* sd,
698 if (sd->verdef == NULL && sd->verneed == NULL)
703 version_map->reserve(sd->verdef_info + sd->verneed_info * 10);
705 this->make_verdef_map(sd, version_map);
706 this->make_verneed_map(sd, version_map);
714 Read_symbols_data* sd,
717 if (sd->symbols == NULL)
719 gold_assert(sd->symbol_names == NULL);
720 gold_assert(sd->versym == NULL && sd->verdef == NULL
721 && sd->verneed == NULL);
726 const size_t symcount = sd->symbols_size / sym_size;
727 gold_assert(sd->external_symbols_offset == 0);
728 if (symcount * sym_size != sd->symbols_size)
735 this->make_version_map(sd, &version_map);
748 reinterpret_cast<const char*>(sd->symbol_names->data());
749 symtab->add_from_dynobj(this, sd->symbols->data(), symcount,
750 sym_names, sd->symbol_names_size,
751 (sd->versym == NULL
753 : sd->versym->data()),
754 sd->versym_size,
759 delete sd->symbols;
760 sd->symbols = NULL;
761 delete sd->symbol_names;
762 sd->symbol_names = NULL;
763 if (sd->versym != NULL)
765 delete sd->versym;
766 sd->versym = NULL;
768 if (sd->verdef != NULL)
770 delete sd->verdef;
771 sd->verdef = NULL;
773 if (sd->verneed != NULL)
775 delete sd->verneed;
776 sd->verneed = NULL;
799 Read_symbols_data* sd,
803 reinterpret_cast<const char*>(sd->symbol_names->data());
805 sd->symbols->data() + sd->external_symbols_offset;
807 size_t symcount = ((sd->symbols_size - sd->external_symbols_offset)