opjitconv.h File Reference

#include "config.h"
#include <stddef.h>
#include <bfd.h>
#include <sys/stat.h>
#include "op_list.h"
#include "op_types.h"
Include dependency graph for opjitconv.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  jitentry
struct  jitentry_debug_line
struct  op_jitdump_info
struct  pathname
struct  jitdump_deletion_candidate

Defines

#define OP_JIT_CONV_OK   0
#define OP_JIT_CONV_FAIL   -1
#define OP_JIT_CONV_NO_DUMPFILE   1
#define OP_JIT_CONV_NO_ANON_SAMPLES   2
#define OP_JIT_CONV_NO_MATCHING_ANON_SAMPLES   3
#define OP_JIT_CONV_NO_JIT_RECS_IN_DUMPFILE   4
#define OP_JIT_CONV_ALREADY_DONE   5
#define OP_JIT_CONV_TMPDIR_NOT_REMOVED   6

Functions

void create_arrays (void)
int resolve_overlaps (unsigned long long start_time)
void disambiguate_symbol_names (void)
int parse_all (void const *start, void const *end, unsigned long long end_time)
int op_jit_convert (struct op_jitdump_info file_info, char const *elffile, unsigned long long start_time, unsigned long long end_time)
bfd * open_elf (char const *filename)
int partition_sections (void)
int fill_sections (void)
asection * create_section (bfd *abfd, char const *section_name, size_t size, bfd_vma vma, flagword flags)
int fill_section_content (bfd *abfd, asection *section, void const *b, file_ptr offset, size_t sz)
int init_debug_line_info (bfd *abfd)
int finalize_debug_line_info (bfd *abfd)

Variables

enum bfd_architecture dump_bfd_arch
int dump_bfd_mach
char const * dump_bfd_target_name
struct jitentryjitentry_list
u32 entry_count
struct jitentry_debug_linejitentry_debug_line_list
u32 max_entry_count
struct jitentry ** entries_symbols_ascending
struct jitentry ** entries_address_ascending
asymbol ** syms
bfd * cur_bfd
int debug

Detailed Description

Convert a jit dump file to an ELF file

Remarks:
Copyright 2007 OProfile authors
Read the file COPYING
Author:
Jens Wilke Maynard Johnson Philippe Elie Daniel Hansel

Copyright IBM Corporation 2007

Definition in file opjitconv.h.


Define Documentation

#define OP_JIT_CONV_ALREADY_DONE   5

Definition at line 26 of file opjitconv.h.

Referenced by process_jit_dumpfile().

#define OP_JIT_CONV_FAIL   -1
#define OP_JIT_CONV_NO_ANON_SAMPLES   2

Definition at line 23 of file opjitconv.h.

Referenced by op_process_jit_dumpfiles().

#define OP_JIT_CONV_NO_DUMPFILE   1

Definition at line 22 of file opjitconv.h.

Referenced by mmap_jitdump(), and op_process_jit_dumpfiles().

#define OP_JIT_CONV_NO_JIT_RECS_IN_DUMPFILE   4

Definition at line 25 of file opjitconv.h.

Referenced by op_jit_convert().

#define OP_JIT_CONV_NO_MATCHING_ANON_SAMPLES   3

Definition at line 24 of file opjitconv.h.

Referenced by process_jit_dumpfile().

#define OP_JIT_CONV_OK   0
#define OP_JIT_CONV_TMPDIR_NOT_REMOVED   6

Definition at line 27 of file opjitconv.h.

Referenced by op_process_jit_dumpfiles().


Function Documentation

void create_arrays ( void   ) 

Definition at line 121 of file jitsymbol.c.

References cmp_address(), cmp_symbolname(), count_entries(), create_sorted_array(), entries_address_ascending, entries_symbols_ascending, entry_count, and max_entry_count.

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

asection* create_section ( bfd *  abfd,
char const *  section_name,
size_t  size,
bfd_vma  vma,
flagword  flags 
)

Definition at line 75 of file create_bfd.c.

References debug, error(), jitentry::section, and verbprintf.

Referenced by create_text_section(), and init_debug_line_info().

Here is the call graph for this function:

Here is the caller graph for this function:

void disambiguate_symbol_names ( void   ) 

Definition at line 522 of file jitsymbol.c.

References cmp_symbolname(), disambiguate_symbol_names(), entries_symbols_ascending, entry_count, replacement_name(), jitentry::sym_name_malloced, and jitentry::symbol_name.

Referenced by disambiguate_symbol_names(), and op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

int fill_section_content ( bfd *  abfd,
asection *  section,
void const *  b,
file_ptr  offset,
size_t  sz 
)

Definition at line 133 of file create_bfd.c.

References OP_JIT_CONV_FAIL, and OP_JIT_CONV_OK.

Referenced by fill_text_section_content(), and finalize_debug_line_info().

Here is the caller graph for this function:

int fill_sections ( void   ) 

Definition at line 216 of file create_bfd.c.

References debug, entries_address_ascending, entry_count, fill_symtab(), fill_text_section_content(), OP_JIT_CONV_FAIL, OP_JIT_CONV_OK, jitentry::section, and verbprintf.

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

int finalize_debug_line_info ( bfd *  abfd  ) 

Definition at line 498 of file debug_line.c.

References b_debug_abbrev, b_debug_info, b_line, options::debug_info, fill_section_content(), free_buffer(), growable_buffer::p, and growable_buffer::size.

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

int init_debug_line_info ( bfd *  abfd  ) 
int op_jit_convert ( struct op_jitdump_info  file_info,
char const *  elffile,
unsigned long long  start_time,
unsigned long long  end_time 
)
bfd* open_elf ( char const *  filename  ) 

Definition at line 250 of file create_bfd.c.

References dump_bfd_arch, dump_bfd_mach, dump_bfd_target_name, and error().

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

int parse_all ( void const *  start,
void const *  end,
unsigned long long  end_time 
)

Definition at line 239 of file parse_dump.c.

References OP_JIT_CONV_FAIL, parse_entries(), and parse_header().

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

int partition_sections ( void   ) 

Definition at line 184 of file create_bfd.c.

References jitentry::code_size, create_text_section(), entries_address_ascending, entry_count, OP_JIT_CONV_FAIL, OP_JIT_CONV_OK, and jitentry::vma.

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:

int resolve_overlaps ( unsigned long long  start_time  ) 

Definition at line 498 of file jitsymbol.c.

References debug, invalidate_earlybirds(), OP_JIT_CONV_FAIL, OP_JIT_CONV_OK, resort_address(), resort_symbol(), scan_overlaps(), and verbprintf.

Referenced by op_jit_convert().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

bfd* cur_bfd
int debug

Definition at line 72 of file opjitconv.c.

enum bfd_architecture dump_bfd_arch

Definition at line 50 of file opjitconv.c.

Referenced by open_elf(), and parse_header().

Definition at line 51 of file opjitconv.c.

Referenced by open_elf(), and parse_header().

char const* dump_bfd_target_name

Definition at line 52 of file opjitconv.c.

Referenced by open_elf(), and parse_header().

Definition at line 65 of file opjitconv.c.

Referenced by create_arrays(), insert_entry(), and op_jit_convert().

asymbol** syms

Definition at line 47 of file opjitconv.c.

Referenced by fill_symtab(), op_jit_convert(), and callgraph_container::output_hint().


Generated on 8 Nov 2012 for Oprofile by  doxygen 1.6.1