GDB (xrefs)
Classes | Defines | Typedefs | Functions | Variables
/home/stan/gdb/src/gdb/machoread.c File Reference
#include "defs.h"
#include "symtab.h"
#include "gdbtypes.h"
#include "bfd.h"
#include "symfile.h"
#include "objfiles.h"
#include "buildsym.h"
#include "gdbcmd.h"
#include "gdbcore.h"
#include "mach-o.h"
#include "gdb_assert.h"
#include "aout/stab_gnu.h"
#include "vec.h"
#include "psympriv.h"
#include "complaints.h"
#include "gdb_bfd.h"
#include <string.h>

Go to the source code of this file.

Classes

struct  oso_el
struct  macho_sym_hash_entry

Defines

#define DSYM_SUFFIX   ".dSYM/Contents/Resources/DWARF/"

Typedefs

typedef struct oso_el oso_el

Functions

 DEF_VEC_O (oso_el)
static void macho_new_init (struct objfile *objfile)
static void macho_symfile_init (struct objfile *objfile)
static void macho_register_oso (VEC(oso_el)**oso_vector_ptr, struct objfile *objfile, asymbol **oso_sym, asymbol **end_sym, unsigned int nbr_syms)
static void macho_symtab_add_minsym (struct objfile *objfile, const asymbol *sym)
static void macho_symtab_read (struct objfile *objfile, long number_of_symbols, asymbol **symbol_table, VEC(oso_el)**oso_vector_ptr)
static int get_archive_prefix_len (const char *name)
static int oso_el_compare_name (const void *vl, const void *vr)
static struct bfd_hash_entry * macho_sym_hash_newfunc (struct bfd_hash_entry *entry, struct bfd_hash_table *table, const char *string)
static CORE_ADDR macho_resolve_oso_sym_with_minsym (struct objfile *main_objfile, asymbol *sym)
static void macho_add_oso_symfile (oso_el *oso, bfd *abfd, const char *name, struct objfile *main_objfile, int symfile_flags)
static void macho_symfile_read_all_oso (VEC(oso_el)**oso_vector_ptr, struct objfile *main_objfile, int symfile_flags)
static bfd * macho_check_dsym (struct objfile *objfile, char **filenamep)
static void macho_symfile_read (struct objfile *objfile, int symfile_flags)
static bfd_byte * macho_symfile_relocate (struct objfile *objfile, asection *sectp, bfd_byte *buf)
static void macho_symfile_finish (struct objfile *objfile)
static void macho_symfile_offsets (struct objfile *objfile, const struct section_addr_info *addrs)
void _initialize_machoread (void)

Variables

static unsigned int mach_o_debug_level = 0
static struct sym_fns macho_sym_fns
initialize_file_ftype _initialize_machoread

Define Documentation

#define DSYM_SUFFIX   ".dSYM/Contents/Resources/DWARF/"

Definition at line 788 of file machoread.c.

Referenced by macho_check_dsym().


Typedef Documentation

typedef struct oso_el oso_el

Function Documentation

void _initialize_machoread ( void  )
static int get_archive_prefix_len ( const char *  name) [static]

Definition at line 360 of file machoread.c.

References name, and strrchr().

Referenced by macho_symfile_read_all_oso().

static void macho_add_oso_symfile ( oso_el oso,
bfd *  abfd,
const char *  name,
struct objfile main_objfile,
int  symfile_flags 
) [static]
static bfd* macho_check_dsym ( struct objfile objfile,
char **  filenamep 
) [static]
static void macho_new_init ( struct objfile objfile) [static]

Definition at line 71 of file machoread.c.

static void macho_register_oso ( VEC(oso_el)**  oso_vector_ptr,
struct objfile objfile,
asymbol **  oso_sym,
asymbol **  end_sym,
unsigned int  nbr_syms 
) [static]
static CORE_ADDR macho_resolve_oso_sym_with_minsym ( struct objfile main_objfile,
asymbol *  sym 
) [static]

Definition at line 429 of file machoread.c.

References _, lookup_minimal_symbol(), name, objfile::obfd, SYMBOL_VALUE_ADDRESS, and warning().

Referenced by macho_add_oso_symfile().

static struct bfd_hash_entry* macho_sym_hash_newfunc ( struct bfd_hash_entry *  entry,
struct bfd_hash_table *  table,
const char *  string 
) [static, read]

Definition at line 398 of file machoread.c.

References string, and macho_sym_hash_entry::sym.

Referenced by macho_add_oso_symfile().

static void macho_symfile_finish ( struct objfile objfile) [static]

Definition at line 973 of file machoread.c.

static void macho_symfile_init ( struct objfile objfile) [static]

Definition at line 76 of file machoread.c.

References objfile::flags, and OBJF_REORDERED.

static void macho_symfile_offsets ( struct objfile objfile,
const struct section_addr_info addrs 
) [static]
static void macho_symfile_read ( struct objfile objfile,
int  symfile_flags 
) [static]
static void macho_symfile_read_all_oso ( VEC(oso_el)**  oso_vector_ptr,
struct objfile main_objfile,
int  symfile_flags 
) [static]
static bfd_byte* macho_symfile_relocate ( struct objfile objfile,
asection *  sectp,
bfd_byte *  buf 
) [static]

Definition at line 955 of file machoread.c.

References _, mach_o_debug_level, objfile::obfd, objfile_name(), and printf_unfiltered().

static void macho_symtab_add_minsym ( struct objfile objfile,
const asymbol *  sym 
) [static]
static void macho_symtab_read ( struct objfile objfile,
long  number_of_symbols,
asymbol **  symbol_table,
VEC(oso_el)**  oso_vector_ptr 
) [static]
static int oso_el_compare_name ( const void *  vl,
const void *  vr 
) [static]

Definition at line 378 of file machoread.c.

References oso_el::name.

Referenced by macho_symfile_read_all_oso().


Variable Documentation

unsigned int mach_o_debug_level = 0 [static]
struct sym_fns macho_sym_fns [static]
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines