mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2025-12-31 20:36:25 +00:00
Remove old commented out code
2006-08-27 Soren Sandmann <sandmann@redhat.com> * binparser.c: Remove old commented out code 2006-08-27 Soren Sandmann <sandmann@redhat.com> * module/Makefile ($(MODULE).o): Add dependency on sysprof-module.h * elfparser.c (elf_parser_get_eh_frame): Add this function. Remove some commented out code.
This commit is contained in:
committed by
Søren Sandmann Pedersen
parent
2c04f6e200
commit
b7cf5d34b8
59
elfparser.c
59
elfparser.c
@ -55,9 +55,17 @@ section_new (BinRecord *record,
|
||||
|
||||
section->name = bin_record_get_string_indirect (
|
||||
record, "sh_name", name_table);
|
||||
|
||||
g_print ("new section: %s\n", section->name);
|
||||
|
||||
section->size = bin_record_get_uint (record, "sh_size");
|
||||
|
||||
g_print ("size: %d\n", section->size);
|
||||
|
||||
section->offset = bin_record_get_uint (record, "sh_offset");
|
||||
|
||||
g_print ("offset: %d\n", section->offset);
|
||||
|
||||
flags = bin_record_get_uint (record, "sh_flags");
|
||||
section->allocated = !!(flags & SHF_ALLOC);
|
||||
|
||||
@ -80,14 +88,21 @@ find_section (ElfParser *parser,
|
||||
const char *name)
|
||||
{
|
||||
int i;
|
||||
|
||||
g_print ("looking for section %s ... ", name);
|
||||
|
||||
for (i = 0; i < parser->n_sections; ++i)
|
||||
{
|
||||
Section *section = parser->sections[i];
|
||||
|
||||
if (strcmp (section->name, name) == 0)
|
||||
{
|
||||
g_print ("found it as number %d with offset %d\n", i, section->offset);
|
||||
return section;
|
||||
}
|
||||
}
|
||||
|
||||
g_print ("not found\n");
|
||||
|
||||
return NULL;
|
||||
}
|
||||
@ -122,6 +137,9 @@ parser_new_from_data (const guchar *data, gsize length)
|
||||
parser->n_sections = bin_record_get_uint (elf_header, "e_shnum");
|
||||
section_names_idx = bin_record_get_uint (elf_header, "e_shstrndx");
|
||||
section_headers = bin_record_get_uint (elf_header, "e_shoff");
|
||||
g_print ("e_shoff %d\n", section_headers);
|
||||
g_print ("header size: %d\n", bin_record_get_uint (elf_header, "e_shentsize"));
|
||||
g_print ("real size: %d\n", bin_format_get_size (parser->shn_entry));
|
||||
|
||||
bin_record_free (elf_header);
|
||||
|
||||
@ -162,6 +180,8 @@ elf_parser_new (const char *filename,
|
||||
data = (guchar *)g_mapped_file_get_contents (file);
|
||||
length = g_mapped_file_get_length (file);
|
||||
|
||||
g_print ("data %p: for %s\n", data, filename);
|
||||
|
||||
parser = parser_new_from_data (data, length);
|
||||
|
||||
parser->file = file;
|
||||
@ -305,10 +325,10 @@ read_table (ElfParser *parser,
|
||||
parser->n_symbols = sym_table->size / sym_size;
|
||||
parser->symbols = g_new (ElfSym, parser->n_symbols);
|
||||
|
||||
#if 0
|
||||
g_print ("\nreading %d symbols (@%d bytes) from %s\n",
|
||||
parser->n_symbols, sym_size, sym_table->name);
|
||||
#endif
|
||||
|
||||
g_print ("table offset: %d\n", str_table->offset);
|
||||
|
||||
symbol = bin_parser_get_record (parser->parser, parser->sym_format, sym_table->offset);
|
||||
|
||||
@ -367,6 +387,7 @@ read_symbols (ElfParser *parser)
|
||||
}
|
||||
else if (dynsym && dynstr)
|
||||
{
|
||||
g_print ("reading from dynstr at offset %d\n", dynstr->offset);
|
||||
read_table (parser, dynsym, dynstr);
|
||||
}
|
||||
else
|
||||
@ -498,36 +519,16 @@ elf_parser_get_debug_link (ElfParser *parser, guint32 *crc32)
|
||||
return result;
|
||||
}
|
||||
|
||||
#if 0
|
||||
get_debug_link_info (bfd *abfd, unsigned long *crc32_out)
|
||||
const guchar *
|
||||
elf_parser_get_eh_frame (ElfParser *parser)
|
||||
{
|
||||
asection *sect;
|
||||
bfd_size_type debuglink_size;
|
||||
unsigned long crc32;
|
||||
char *contents;
|
||||
int crc_offset;
|
||||
|
||||
sect = bfd_get_section_by_name (abfd, ".gnu_debuglink");
|
||||
|
||||
if (sect == NULL)
|
||||
const Section *eh_frame = find_section (parser, ".eh_frame");
|
||||
|
||||
if (eh_frame)
|
||||
return bin_parser_get_data (parser->parser) + eh_frame->offset;
|
||||
else
|
||||
return NULL;
|
||||
|
||||
debuglink_size = bfd_section_size (abfd, sect);
|
||||
|
||||
contents = g_malloc (debuglink_size);
|
||||
bfd_get_section_contents (abfd, sect, contents,
|
||||
(file_ptr)0, (bfd_size_type)debuglink_size);
|
||||
|
||||
/* Crc value is stored after the filename, aligned up to 4 bytes. */
|
||||
crc_offset = strlen (contents) + 1;
|
||||
crc_offset = (crc_offset + 3) & ~3;
|
||||
|
||||
crc32 = bfd_get_32 (abfd, (bfd_byte *) (contents + crc_offset));
|
||||
|
||||
*crc32_out = crc32;
|
||||
return contents;
|
||||
}
|
||||
#endif
|
||||
|
||||
const char *
|
||||
elf_parser_get_sym_name (ElfParser *parser,
|
||||
|
||||
Reference in New Issue
Block a user