GDB (xrefs)

Classes | Macros | Typedefs | Functions | Variables
/tmp/gdb-8.1/gdb/xcoffread.c File Reference
`#include "defs.h"`
`#include "bfd.h"`
`#include <sys/types.h>`
`#include <fcntl.h>`
`#include <ctype.h>`
`#include <sys/file.h>`
`#include <sys/stat.h>`
`#include "coff/internal.h"`
`#include "libcoff.h"`
`#include "coff/xcoff.h"`
`#include "libxcoff.h"`
`#include "coff/rs6000.h"`
`#include "xcoffread.h"`
`#include "symtab.h"`
`#include "gdbtypes.h"`
`#include "symfile.h"`
`#include "objfiles.h"`
`#include "buildsym.h"`
`#include "stabsread.h"`
`#include "expression.h"`
`#include "complaints.h"`
`#include "psympriv.h"`
`#include "gdb-stabs.h"`
`#include "aout/stab_gnu.h"`

Go to the source code of this file.

## Classes
struct | symloc
struct | coff_symbol
struct | coff_symfile_info
struct | find_targ_sec_arg
struct | _inclTable

## Macros
#define | INITIAL_STABVECTOR_LENGTH 40
#define | XCOFF_DATA(objfile)
#define | NUM_OF_FUNCTIONS 20
#define | INITIAL_INCLUDE_TABLE_LENGTH 20
#define | complete_symtab(name, start_addr)
#define | CSECT(PP) ((PP)->x_csect)
#define | CSECT_LEN(PP) (CSECT(PP).x_scnlen.l)
#define | CSECT_ALIGN(PP) (SMTYP_ALIGN(CSECT(PP).x_smtyp))
#define | CSECT_SMTYP(PP) (SMTYP_SMTYP(CSECT(PP).x_smtyp))
#define | CSECT_SCLAS(PP) (CSECT(PP).x_smclas)
#define | SYMBOL_DUP(SYMBOL1, SYMBOL2)
#define | SYMNAME_ALLOC(NAME, ALLOCED)

## Typedefs
typedef struct _inclTable | InclTable

## Functions
static void | bf_notfound_complaint (void)
static void | ef_complaint (int arg1)
static void | eb_complaint (int arg1)
static void | xcoff_initial_scan (struct objfile *, symfile_add_flags)
static void | scan_xcoff_symtab (minimal_symbol_reader &, struct objfile *)
static const char * | xcoff_next_symbol_text (struct objfile *)
static void | record_include_begin (struct coff_symbol *)
static void | enter_line_range (struct subfile *, unsigned, unsigned, CORE_ADDR, CORE_ADDR, unsigned *)
static void | init_stringtab (bfd *, file_ptr, struct objfile *)
static void | xcoff_symfile_init (struct objfile *)
static void | xcoff_new_init (struct objfile *)
static void | xcoff_symfile_finish (struct objfile *)
static char * | coff_getfilename (union internal_auxent *, struct objfile *)
static void | read_symbol (struct internal_syment *, int)
static int | read_symbol_lineno (int)
static CORE_ADDR | read_symbol_nvalue (int)
static struct symbol * | process_xcoff_symbol (struct coff_symbol *, struct objfile *)
static void | read_xcoff_symtab (struct objfile *, struct partial_symtab *)
static int | compare_lte (const void *, const void *)
static struct linetable * | arrange_linetable (struct linetable *)
static void | record_include_end (struct coff_symbol *)
static void | process_linenos (CORE_ADDR, CORE_ADDR)
static int | secnum_to_section (int, struct objfile *)
static asection * | secnum_to_bfd_section (int, struct objfile *)
static void | find_targ_sec (bfd *, asection *, void *)
static void | xcoff_secnum_to_sections (int n_scnum, struct objfile *objfile, asection **bfd_sect, int *secnum)
static void | allocate_include_entry (void)
static void | aix_process_linenos (struct objfile *objfile)
static void | record_minimal_symbol (minimal_symbol_reader &reader, const char *name, CORE_ADDR address, enum minimal_symbol_type ms_type, int n_scnum, struct objfile *objfile)
static void | find_linenos (struct bfd *abfd, struct bfd_section *asect, void *vpinfo)
static void | xcoff_psymtab_to_symtab_1 (struct objfile *objfile, struct partial_symtab *pst)
static void | xcoff_read_symtab (struct partial_symtab *self, struct objfile *objfile)
static struct partial_symtab * | xcoff_start_psymtab (struct objfile *objfile, const char *filename, int first_symnum, std::vector< partial_symbol *> &global_psymbols, std::vector< partial_symbol *> &static_psymbols)
static struct partial_symtab * | xcoff_end_psymtab (struct objfile *objfile, struct partial_symtab *pst, const char **include_list, int num_includes, int capping_symbol_number, struct partial_symtab **dependency_list, int number_dependencies, int textlow_not_set)
static void | swap_sym (struct internal_syment *symbol, union internal_auxent *aux, const char **name, char **raw, unsigned int *symnump, struct objfile *objfile)
static void | function_outside_compilation_unit_complaint (const char *arg1)
CORE_ADDR | xcoff_get_toc_offset (struct objfile *objfile)
static void | xcoff_symfile_offsets (struct objfile *objfile, const struct section_addr_info *addrs)
static int | xcoff_get_core_n_import_files (bfd *abfd)
int | xcoff_get_n_import_files (bfd *abfd)
static void | xcoff_free_info (struct objfile *objfile, void *arg)
void | _initialize_xcoffread (void)

## Variables
static const struct objfile_data * | xcoff_objfile_data_key
static enum language | psymtab_language = language_unknown
static struct coff_symbol | fcn_cs_saved
static bfd * | symfile_bfd
static CORE_ADDR | cur_src_end_addr
static CORE_ADDR | first_object_file_end
static unsigned | local_symesz
static const struct dwarf2_debug_sections | dwarf2_xcoff_names
static InclTable * | inclTable
static int | inclIndx
static int | inclLength
static int | inclDepth
static struct partial_symtab * | this_symtab_psymtab
static struct objfile * | this_symtab_objfile
static int | static_block_base = 0
static int | static_block_section = -1
static int | symname_alloced = 0
static char * | raw_symbol
static unsigned int | first_fun_line_offset
static const struct sym_fns | xcoff_sym_fns

## Macro Definition Documentation

## ◆ complete_symtab

#define complete_symtab | ( |  | name,
|  |  | start_addr
| ) |  |

Value:
{ \
set_last_source_file (name); \
last_source_start_addr = start_addr; \
}
name
const char *const name
Definition: aarch64-tdep.c:76

Definition at line 905 of file xcoffread.c.

Referenced by read_xcoff_symtab().

## ◆ CSECT

#define CSECT | ( |  | PP | ) | ((PP)->x_csect)

## ◆ CSECT_ALIGN

#define CSECT_ALIGN | ( |  | PP | ) | (SMTYP_ALIGN(CSECT(PP).x_smtyp))

## ◆ CSECT_LEN

#define CSECT_LEN | ( |  | PP | ) | (CSECT(PP).x_scnlen.l)

Referenced by read_xcoff_symtab().

## ◆ CSECT_SCLAS

#define CSECT_SCLAS | ( |  | PP | ) | (CSECT(PP).x_smclas)

Referenced by read_xcoff_symtab().

## ◆ CSECT_SMTYP

#define CSECT_SMTYP | ( |  | PP | ) | (SMTYP_SMTYP(CSECT(PP).x_smtyp))

Referenced by read_xcoff_symtab().

## ◆ INITIAL_INCLUDE_TABLE_LENGTH

#define INITIAL_INCLUDE_TABLE_LENGTH 20

Definition at line 542 of file xcoffread.c.

Referenced by allocate_include_entry().

## ◆ INITIAL_STABVECTOR_LENGTH

#define INITIAL_STABVECTOR_LENGTH 40

Definition at line 120 of file xcoffread.c.

## ◆ NUM_OF_FUNCTIONS

#define NUM_OF_FUNCTIONS 20

Referenced by arrange_linetable().

## ◆ SYMBOL_DUP

#define SYMBOL_DUP | ( |  | SYMBOL1,
|  |  | SYMBOL2
| ) |  |

Value:
(SYMBOL2) = XOBNEW (&objfile->objfile_obstack, struct symbol); \
*(SYMBOL2) = *(SYMBOL1);
objfile
Definition: objfiles.h:286
symbol
Definition: symtab.h:1049
objfile::objfile_obstack
Definition: objfiles.h:357

Definition at line 1539 of file xcoffread.c.

Referenced by process_xcoff_symbol().

## ◆ SYMNAME_ALLOC

#define SYMNAME_ALLOC | ( |  | NAME,
|  |  | ALLOCED
| ) |  |

Value:
((ALLOCED) ? (NAME) : obstack_copy0 (&objfile->objfile_obstack, \
(NAME), strlen (NAME)))
objfile
Definition: objfiles.h:286
NAME
#define NAME
Definition: ada-exp.c:237
objfile::objfile_obstack
Definition: objfiles.h:357

Definition at line 1544 of file xcoffread.c.

Referenced by process_xcoff_symbol().

## ◆ XCOFF_DATA

#define XCOFF_DATA | ( |  | objfile | ) |

Value:
((struct coff_symfile_info *) objfile_data ((objfile), \
xcoff_objfile_data_key))
coff_symfile_info
Definition: coffread.c:54
objfile
Definition: objfiles.h:286

Definition at line 151 of file xcoffread.c.

Referenced by coff_getfilename(), enter_line_range(), init_stringtab(), process_linenos(), read_symbol(), read_symbol_lineno(), read_xcoff_symtab(), scan_xcoff_symtab(), swap_sym(), xcoff_get_toc_offset(), xcoff_initial_scan(), and xcoff_next_symbol_text().

## Typedef Documentation

## ◆ InclTable

typedef struct _inclTable InclTable

## Function Documentation

## ◆ _initialize_xcoffread()

void _initialize_xcoffread | ( | void |  | ) |

Definition at line 3190 of file xcoffread.c.

References add_symtab_fns(), xcoff_free_info(), xcoff_objfile_data_key, and xcoff_sym_fns.

## ◆ aix_process_linenos()

static void aix_process_linenos | ( | struct objfile * | objfile | ) |
| static

Definition at line 813 of file xcoffread.c.

References cur_src_end_addr, last_source_start_addr, process_linenos(), and this_symtab_psymtab.

## ◆ allocate_include_entry()

static void allocate_include_entry | ( | void |  | ) |
| static

Definition at line 591 of file xcoffread.c.

References inclIndx, inclLength, inclTable, INITIAL_INCLUDE_TABLE_LENGTH, memset(), XCNEWVEC, and XRESIZEVEC.

Referenced by record_include_begin(), and record_include_end().

## ◆ arrange_linetable()

static struct linetable * arrange_linetable | ( | struct linetable * | oldLineTb | ) |
| static

Definition at line 434 of file xcoffread.c.

References compare_lte(), linetable::item, linetable_entry::line, linetable::nitems, NUM_OF_FUNCTIONS, linetable_entry::pc, qsort, xfree(), xmalloc(), XNEWVEC, and xrealloc().

Referenced by process_linenos().

## ◆ bf_notfound_complaint()

static void bf_notfound_complaint | ( | void |  | ) |
| static

Definition at line 183 of file xcoffread.c.

References _, complaint, and symfile_complaints.

Referenced by read_symbol_lineno().

## ◆ coff_getfilename()

static char * coff_getfilename | ( | union internal_auxent * | aux_entry,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 1695 of file xcoffread.c.

References XCOFF_DATA.

Referenced by read_xcoff_symtab(), and scan_xcoff_symtab().

## ◆ compare_lte()

static int compare_lte | ( | const void * | lte1p,
|  | const void * | lte2p
| ) |  |
| static

Definition at line 418 of file xcoffread.c.

References linetable_entry::pc.

Referenced by arrange_linetable().

## ◆ eb_complaint()

static void eb_complaint | ( | int | arg1 | ) |
| static

Definition at line 197 of file xcoffread.c.

References _, complaint, and symfile_complaints.

Referenced by read_xcoff_symtab().

## ◆ ef_complaint()

static void ef_complaint | ( | int | arg1 | ) |
| static

Definition at line 190 of file xcoffread.c.

References _, complaint, and symfile_complaints.

Referenced by read_xcoff_symtab().

## ◆ enter_line_range()

static void enter_line_range | ( | struct subfile * | subfile,
|  | unsigned | beginoffset,
|  | unsigned | endoffset,
|  | CORE_ADDR | startaddr,
|  | CORE_ADDR | endaddr,
|  | unsigned * | firstLine
| ) |  |
| static

Definition at line 835 of file xcoffread.c.

References _, ANOFFSET, complaint, gdbarch_addr_bits_remove(), get_objfile_arch(), objfile::obfd, read_symbol_lineno(), read_symbol_nvalue(), record_line, SECT_OFF_TEXT, objfile::section_offsets, SEEK_SET, symfile_complaints, this_symtab_objfile, and XCOFF_DATA.

Referenced by process_linenos().

## ◆ find_linenos()

static void find_linenos | ( | struct bfd * | abfd,
|  | struct bfd_section * | asect,
|  | void * | vpinfo
| ) |  |
| static

Definition at line 1815 of file xcoffread.c.

References coff_symfile_info::max_lineno_offset, coff_symfile_info::min_lineno_offset, offset, and size.

Referenced by xcoff_initial_scan().

## ◆ find_targ_sec()

static void find_targ_sec | ( | bfd * | abfd,
|  | asection * | sect,
|  | void * | obj
| ) |  |
| static

Definition at line 266 of file xcoffread.c.

References find_targ_sec_arg::bfd_sect, gdb_bfd_section_index(), find_targ_sec_arg::objfile, find_targ_sec_arg::resultp, SECT_OFF_DATA, SECT_OFF_TEXT, and find_targ_sec_arg::targ_index.

Referenced by xcoff_secnum_to_sections().

## ◆ function_outside_compilation_unit_complaint()

static void function_outside_compilation_unit_complaint | ( | const char * | arg1 | ) |
| static

Definition at line 2194 of file xcoffread.c.

References _, complaint, and symfile_complaints.

Referenced by scan_xcoff_symtab().

## ◆ init_stringtab()

static void init_stringtab | ( | bfd * | abfd,
|  | file_ptr | offset,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 1973 of file xcoffread.c.

References _, error(), offset, SEEK_SET, coff_symfile_info::strtbl, and XCOFF_DATA.

Referenced by xcoff_initial_scan().

## ◆ process_linenos()

static void process_linenos | ( | CORE_ADDR | start,
|  | CORE_ADDR | end
| ) |  |
| static

Definition at line 619 of file xcoffread.c.

References arrange_linetable(), current_subfile, _inclTable::end, enter_line_range(), _inclTable::funStartLine, get_last_source_file(), inclIndx, inclTable, subfile::line_vector, subfile::line_vector_length, memset(), subfile::name, name, linetable::nitems, objfile::obfd, offset, pop_subfile(), push_subfile(), partial_symtab::read_symtab_private, start_subfile(), _inclTable::subfile, this_symtab_objfile, this_symtab_psymtab, XCOFF_DATA, xfree(), XNEW, and xrealloc().

Referenced by aix_process_linenos().

## ◆ process_xcoff_symbol()

static struct symbol * process_xcoff_symbol | ( | struct coff_symbol * | cs,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 1552 of file xcoffread.c.

References _, add_symbol_to_list(), ANOFFSET, coff_symbol::c_name, coff_symbol::c_sclass, coff_symbol::c_secnum, coff_symbol::c_type, coff_symbol::c_value, common_block_end(), common_block_start(), complaint, define_symbol(), fcn_cs_saved, file_symbols, global_stabs, global_symbols, initialize_objfile_symbol(), LOC_BLOCK, name, objfile_type::nodebug_data_symbol, objfile_type::nodebug_text_symbol, objfile_type(), secnum_to_section(), objfile::section_offsets, static_block_base, static_block_section, SYMBOL_ACLASS_INDEX, SYMBOL_DOMAIN, SYMBOL_DUP, SYMBOL_SECTION, SYMBOL_SET_LINKAGE_NAME, SYMBOL_TYPE, SYMBOL_VALUE_ADDRESS, symfile_complaints, SYMNAME_ALLOC, symname_alloced, VAR_DOMAIN, and within_function.

Referenced by read_xcoff_symtab().

## ◆ read_symbol()

static void read_symbol | ( | struct internal_syment * | symbol,
|  | int | symno
| ) |  |
| static

Definition at line 1712 of file xcoffread.c.

References _, complaint, local_symesz, objfile::obfd, symfile_complaints, coff_symfile_info::symtbl, coff_symfile_info::symtbl_num_syms, this_symtab_objfile, and XCOFF_DATA.

Referenced by read_symbol_nvalue(), and read_xcoff_symtab().

## ◆ read_symbol_lineno()

static int read_symbol_lineno | ( | int | symno | ) |
| static

Definition at line 1746 of file xcoffread.c.

References bf_notfound_complaint(), local_symesz, name, objfile::obfd, coff_symfile_info::strtbl, symfile_bfd, coff_symfile_info::symtbl, coff_symfile_info::symtbl_num_syms, this_symtab_objfile, and XCOFF_DATA.

Referenced by enter_line_range().

## ◆ read_symbol_nvalue()

static CORE_ADDR read_symbol_nvalue | ( | int | symno | ) |
| static

Definition at line 1733 of file xcoffread.c.

References read_symbol().

Referenced by enter_line_range().

## ◆ read_xcoff_symtab()

static void read_xcoff_symtab | ( | struct objfile * | objfile,
|  | struct partial_symtab * | pst
| ) |  |
| static

Definition at line 1007 of file xcoffread.c.

References _, ANOFFSET, coff_symbol::c_name, coff_symbol::c_naux, coff_symbol::c_sclass, coff_symbol::c_secnum, coff_symbol::c_symnum, coff_symbol::c_type, coff_symbol::c_value, coff_getfilename(), complaint, complete_symtab, partial_symtab::compunit_symtab, context_stack_depth, CSECT_LEN, CSECT_SCLAS, CSECT_SMTYP, cur_src_end_addr, coff_symfile_info::debugsec, define_symbol(), context_stack::depth, eb_complaint(), ef_complaint(), end_stabs(), end_symtab(), fcn_cs_saved, partial_symtab::filename, finish_block(), first_object_file_end, get_last_source_file(), language_unknown, local_symbols, local_symesz, context_stack::locals, context_stack::name, objfile::obfd, context_stack::old_blocks, pop_context(), process_xcoff_symbol(), push_context(), QUIT, raw_symbol, read_symbol(), partial_symtab::read_symtab_private, record_debugformat(), record_include_begin(), record_include_end(), secnum_to_section(), SECT_OFF_TEXT, objfile::section_offsets, set_last_source_file(), context_stack::start_addr, start_stabs(), start_symtab(), static_block_base, static_block_section, coff_symfile_info::strtbl, SYMBOL_SECTION, symfile_complaints, symname_alloced, symnum, coff_symfile_info::symtbl, this_symtab_objfile, this_symtab_psymtab, within_function, and XCOFF_DATA.

Referenced by xcoff_psymtab_to_symtab_1().

## ◆ record_include_begin()

static void record_include_begin | ( | struct coff_symbol * | cs | ) |
| static

Definition at line 551 of file xcoffread.c.

References _, allocate_include_entry(), _inclTable::begin, coff_symbol::c_name, coff_symbol::c_value, complaint, inclDepth, inclIndx, inclTable, _inclTable::name, and symfile_complaints.

Referenced by read_xcoff_symtab().

## ◆ record_include_end()

static void record_include_end | ( | struct coff_symbol * | cs | ) |
| static

Definition at line 572 of file xcoffread.c.

References _, allocate_include_entry(), coff_symbol::c_value, complaint, _inclTable::end, inclDepth, inclIndx, inclTable, and symfile_complaints.

Referenced by read_xcoff_symtab().

## ◆ record_minimal_symbol()

static void record_minimal_symbol | ( | minimal_symbol_reader & | reader,
|  | const char * | name,
|  | CORE_ADDR | address,
|  | enum minimal_symbol_type | ms_type,
|  | int | n_scnum,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 934 of file xcoffread.c.

References name, minimal_symbol_reader::record_with_info(), and secnum_to_section().

Referenced by scan_xcoff_symtab().

## ◆ scan_xcoff_symtab()

static void scan_xcoff_symtab | ( | minimal_symbol_reader & | reader,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 2203 of file xcoffread.c.

References _, add_psymbol_to_list(), ANOFFSET, coff_getfilename(), complaint, deduce_language_from_filename(), partial_symtab::filename, first_fun_line_offset, function_outside_compilation_unit_complaint(), gdbarch_static_transform_name(), gdbarch_static_transform_name_p(), get_objfile_arch(), objfile::global_psymbols, language_c, language_cplus, language_unknown, LOC_BLOCK, LOC_CONST, LOC_STATIC, LOC_TYPEDEF, local_symesz, mst_bss, mst_data, mst_file_bss, mst_file_data, mst_file_text, mst_solib_trampoline, mst_text, name, next_symbol_text, next_symbol_text_func, objfile::obfd, psymtab_language, QUIT, record_minimal_symbol(), secnum_to_bfd_section(), SECT_OFF_DATA, SECT_OFF_TEXT, objfile::section_offsets, set_last_source_file(), startswith(), objfile::static_psymbols, STRUCT_DOMAIN, swap_sym(), symfile_complaints, partial_symtab::texthigh, partial_symtab::textlow, VAR_DOMAIN, warning(), XCOFF_DATA, xcoff_end_psymtab(), xcoff_next_symbol_text(), xcoff_start_psymtab(), xfree(), and xmalloc().

Referenced by xcoff_initial_scan().

## ◆ secnum_to_bfd_section()

static asection * secnum_to_bfd_section | ( | int | n_scnum,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 324 of file xcoffread.c.

References find_targ_sec_arg::bfd_sect, and xcoff_secnum_to_sections().

Referenced by scan_xcoff_symtab().

## ◆ secnum_to_section()

static int secnum_to_section | ( | int | n_scnum,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 312 of file xcoffread.c.

References xcoff_secnum_to_sections().

Referenced by process_xcoff_symbol(), read_xcoff_symtab(), and record_minimal_symbol().

## ◆ swap_sym()

static void swap_sym | ( | struct internal_syment * | symbol,
|  | union internal_auxent * | aux,
|  | const char ** | name,
|  | char ** | raw,
|  | unsigned int * | symnump,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 2147 of file xcoffread.c.

References name, objfile::obfd, and XCOFF_DATA.

Referenced by scan_xcoff_symtab().

## ◆ xcoff_end_psymtab()

static struct partial_symtab* xcoff_end_psymtab | ( | struct objfile * | objfile,
|  | struct partial_symtab * | pst,
|  | const char ** | include_list,
|  | int | num_includes,
|  | int | capping_symbol_number,
|  | struct partial_symtab ** | dependency_list,
|  | int | number_dependencies,
|  | int | textlow_not_set
| ) |  |
| static

Definition at line 2065 of file xcoffread.c.

References allocate_psymtab(), partial_symtab::compunit_symtab, partial_symtab::dependencies, discard_psymtab(), end_psymtab_common(), first_fun_line_offset, partial_symtab::globals_offset, partial_symtab::n_global_syms, partial_symtab::n_static_syms, partial_symtab::number_of_dependencies, partial_symtab::read_symtab, partial_symtab::read_symtab_private, partial_symtab::readin, partial_symtab::statics_offset, partial_symtab::texthigh, and partial_symtab::textlow.

Referenced by scan_xcoff_symtab().

## ◆ xcoff_free_info()

static void xcoff_free_info | ( | struct objfile * | objfile,
|  | void * | arg
| ) |  |
| static

Definition at line 3184 of file xcoffread.c.

References xfree().

Referenced by _initialize_xcoffread().

## ◆ xcoff_get_core_n_import_files()

static int xcoff_get_core_n_import_files | ( | bfd * | abfd | ) |
| static

Definition at line 3123 of file xcoffread.c.

References offset.

Referenced by xcoff_get_n_import_files().

## ◆ xcoff_get_n_import_files()

int xcoff_get_n_import_files | ( | bfd * | abfd | ) |

Definition at line 3156 of file xcoffread.c.

References xcoff_get_core_n_import_files().

Referenced by rs6000_aix_osabi_sniffer(), and rs6000_lynx178_osabi_sniffer().

## ◆ xcoff_get_toc_offset()

CORE_ADDR xcoff_get_toc_offset | ( | struct objfile * | objfile | ) |

Definition at line 2934 of file xcoffread.c.

References XCOFF_DATA.

Referenced by solib_aix_get_toc_value().

## ◆ xcoff_initial_scan()

static void xcoff_initial_scan | ( | struct objfile * | objfile,
|  | symfile_add_flags | symfile_flags
| ) |  |
| static

Definition at line 2951 of file xcoffread.c.

References _, coff_symfile_info::debugsec, dwarf2_build_frame_info(), dwarf2_build_psymtabs(), dwarf2_has_info(), dwarf2_xcoff_names, error(), find_linenos(), objfile::flags, free_pending_blocks(), objfile::global_psymbols, init_psymbol_list(), init_stringtab(), minimal_symbol_reader::install(), coff_symfile_info::max_lineno_offset, coff_symfile_info::min_lineno_offset, name, objfile::obfd, OBJF_READNEVER, objfile_name(), perror_with_name(), scan_xcoff_symtab(), SEEK_SET, size, objfile::static_psymbols, symfile_bfd, coff_symfile_info::symtbl, coff_symfile_info::symtbl_num_syms, and XCOFF_DATA.

## ◆ xcoff_new_init()

static void xcoff_new_init | ( | struct objfile * | objfile | ) |
| static

Definition at line 1925 of file xcoffread.c.

References buildsym_new_init(), and stabsread_new_init().

## ◆ xcoff_next_symbol_text()

static const char * xcoff_next_symbol_text | ( | struct objfile * | objfile | ) |
| static

Definition at line 969 of file xcoffread.c.

References _, complaint, objfile::obfd, raw_symbol, symfile_complaints, symnum, this_symtab_objfile, and XCOFF_DATA.

Referenced by scan_xcoff_symtab(), and xcoff_read_symtab().

## ◆ xcoff_psymtab_to_symtab_1()

static void xcoff_psymtab_to_symtab_1 | ( | struct objfile * | objfile,
|  | struct partial_symtab * | pst
| ) |  |
| static

Definition at line 1839 of file xcoffread.c.

References buildsym_init(), partial_symtab::dependencies, partial_symtab::filename, fprintf_unfiltered(), fputs_filtered(), gdb_flush(), gdb_stderr, gdb_stdout, info_verbose, partial_symtab::number_of_dependencies, printf_filtered(), partial_symtab::read_symtab_private, read_xcoff_symtab(), partial_symtab::readin, stabsread_init(), and wrap_here().

Referenced by xcoff_read_symtab().

## ◆ xcoff_read_symtab()

static void xcoff_read_symtab | ( | struct partial_symtab * | self,
|  | struct objfile * | objfile
| ) |  |
| static

Definition at line 1889 of file xcoffread.c.

References fprintf_unfiltered(), gdb_flush(), gdb_stderr, gdb_stdout, info_verbose, next_symbol_text_func, printf_filtered(), scan_file_globals(), xcoff_next_symbol_text(), and xcoff_psymtab_to_symtab_1().

Referenced by xcoff_start_psymtab().

## ◆ xcoff_secnum_to_sections()

static void xcoff_secnum_to_sections | ( | int | n_scnum,
|  | struct objfile * | objfile,
|  | asection ** | bfd_sect,
|  | int * | secnum
| ) |  |
| static

Definition at line 293 of file xcoffread.c.

References find_targ_sec_arg::bfd_sect, find_targ_sec(), objfile::obfd, find_targ_sec_arg::objfile, find_targ_sec_arg::resultp, SECT_OFF_TEXT, and find_targ_sec_arg::targ_index.

Referenced by secnum_to_bfd_section(), and secnum_to_section().

## ◆ xcoff_start_psymtab()

static struct partial_symtab* xcoff_start_psymtab | ( | struct objfile * | objfile,
|  | const char * | filename,
|  | int | first_symnum,
|  | std::vector< partial_symbol *> & | global_psymbols,
|  | std::vector< partial_symbol *> & | static_psymbols
| ) |  |
| static

Definition at line 2033 of file xcoffread.c.

References deduce_language_from_filename(), partial_symtab::filename, symloc::first_symnum, psymtab_language, partial_symtab::read_symtab, partial_symtab::read_symtab_private, start_psymtab_common(), and xcoff_read_symtab().

Referenced by scan_xcoff_symtab().

## ◆ xcoff_symfile_finish()

static void xcoff_symfile_finish | ( | struct objfile * | objfile | ) |
| static

Definition at line 1958 of file xcoffread.c.

References dwarf2_free_objfile(), inclDepth, inclIndx, inclLength, inclTable, and xfree().

## ◆ xcoff_symfile_init()

static void xcoff_symfile_init | ( | struct objfile * | objfile | ) |
| static

Definition at line 1938 of file xcoffread.c.

References objfile::flags, OBJF_REORDERED, xcoff_objfile_data_key, and XNEW.

## ◆ xcoff_symfile_offsets()

static void xcoff_symfile_offsets | ( | struct objfile * | objfile,
|  | const struct section_addr_info * | addrs
| ) |  |
| static

Definition at line 3056 of file xcoffread.c.

References default_symfile_offsets(), objfile::num_sections, objfile::obfd, objfile::sect_index_bss, objfile::sect_index_data, objfile::sect_index_rodata, objfile::sect_index_text, objfile::sections, and obj_section::the_bfd_section.

## Variable Documentation

## ◆ cur_src_end_addr

CORE_ADDR cur_src_end_addr
| static

Definition at line 112 of file xcoffread.c.

Referenced by aix_process_linenos(), and read_xcoff_symtab().

## ◆ dwarf2_xcoff_names

const struct dwarf2_debug_sections dwarf2_xcoff_names
| static

Initial value:
= {
{ ".dwinfo", NULL },
{ ".dwabrev", NULL },
{ ".dwline", NULL },
{ ".dwloc", NULL },
{ NULL, NULL },
{ NULL, NULL },
{ ".dwmac", NULL },
{ ".dwstr", NULL },
{ NULL, NULL },
{ ".dwrnges", NULL },
{ NULL, NULL },
{ ".dwpbtyp", NULL },
{ NULL, NULL },
{ ".dwframe", NULL },
{ NULL, NULL },
{ NULL, NULL },
{ NULL, NULL },
{ NULL, NULL },
23
}

Definition at line 157 of file xcoffread.c.

Referenced by xcoff_initial_scan().

## ◆ fcn_cs_saved

struct coff_symbol fcn_cs_saved
| static

Definition at line 103 of file xcoffread.c.

Referenced by coff_symtab_read(), process_xcoff_symbol(), and read_xcoff_symtab().

## ◆ first_fun_line_offset

unsigned int first_fun_line_offset
| static

Definition at line 2023 of file xcoffread.c.

Referenced by scan_xcoff_symtab(), and xcoff_end_psymtab().

## ◆ first_object_file_end

CORE_ADDR first_object_file_end
| static

Definition at line 116 of file xcoffread.c.

Referenced by read_xcoff_symtab().

## ◆ inclDepth

int inclDepth
| static

Definition at line 546 of file xcoffread.c.

Referenced by record_include_begin(), record_include_end(), and xcoff_symfile_finish().

## ◆ inclIndx

int inclIndx
| static

Definition at line 544 of file xcoffread.c.

Referenced by allocate_include_entry(), process_linenos(), record_include_begin(), record_include_end(), and xcoff_symfile_finish().

## ◆ inclLength

int inclLength
| static

Definition at line 545 of file xcoffread.c.

Referenced by allocate_include_entry(), and xcoff_symfile_finish().

## ◆ inclTable

InclTable* inclTable
| static

Definition at line 543 of file xcoffread.c.

Referenced by allocate_include_entry(), process_linenos(), record_include_begin(), record_include_end(), and xcoff_symfile_finish().

## ◆ local_symesz

unsigned local_symesz
| static

Definition at line 126 of file xcoffread.c.

Referenced by read_symbol(), read_symbol_lineno(), read_xcoff_symtab(), and scan_xcoff_symtab().

## ◆ psymtab_language

enum language psymtab_language = language_unknown
| static

Definition at line 85 of file xcoffread.c.

Referenced by scan_xcoff_symtab(), and xcoff_start_psymtab().

## ◆ raw_symbol

char* raw_symbol
| static

Definition at line 963 of file xcoffread.c.

Referenced by read_xcoff_symtab(), and xcoff_next_symbol_text().

## ◆ static_block_base

int static_block_base = 0
| static

Definition at line 951 of file xcoffread.c.

Referenced by process_xcoff_symbol(), and read_xcoff_symtab().

## ◆ static_block_section

int static_block_section = -1
| static

Definition at line 955 of file xcoffread.c.

Referenced by process_xcoff_symbol(), and read_xcoff_symtab().

## ◆ symfile_bfd

bfd* symfile_bfd
| static

Definition at line 105 of file xcoffread.c.

Referenced by read_symbol_lineno(), and xcoff_initial_scan().

## ◆ symname_alloced

int symname_alloced = 0
| static

Definition at line 959 of file xcoffread.c.

Referenced by process_xcoff_symbol(), and read_xcoff_symtab().

## ◆ this_symtab_objfile

struct objfile* this_symtab_objfile
| static

Definition at line 613 of file xcoffread.c.

Referenced by enter_line_range(), process_linenos(), read_symbol(), read_symbol_lineno(), read_xcoff_symtab(), and xcoff_next_symbol_text().

## ◆ this_symtab_psymtab

struct partial_symtab* this_symtab_psymtab
| static

Definition at line 610 of file xcoffread.c.

Referenced by aix_process_linenos(), process_linenos(), and read_xcoff_symtab().

## ◆ xcoff_objfile_data_key

const struct objfile_data* xcoff_objfile_data_key
| static

Definition at line 58 of file xcoffread.c.

Referenced by _initialize_xcoffread(), and xcoff_symfile_init().

## ◆ xcoff_sym_fns

const struct sym_fns xcoff_sym_fns
| static

Initial value:
=
{
xcoff_new_init,
xcoff_symfile_init,
xcoff_initial_scan,
NULL,
xcoff_symfile_finish,
xcoff_symfile_offsets,
default_symfile_segments,
aix_process_linenos,
default_symfile_relocate,
NULL,
&psym_functions
}
default_symfile_segments
struct symfile_segment_data * default_symfile_segments(bfd *abfd)
Definition: symfile.c:785
xcoff_new_init
static void xcoff_new_init(struct objfile *)
Definition: xcoffread.c:1925
xcoff_initial_scan
static void xcoff_initial_scan(struct objfile *, symfile_add_flags)
Definition: xcoffread.c:2951
xcoff_symfile_offsets
static void xcoff_symfile_offsets(struct objfile *objfile, const struct section_addr_info *addrs)
Definition: xcoffread.c:3056
default_symfile_relocate
bfd_byte * default_symfile_relocate(struct objfile *objfile, asection *sectp, bfd_byte *buf)
Definition: symfile.c:3625
xcoff_symfile_finish
static void xcoff_symfile_finish(struct objfile *)
Definition: xcoffread.c:1958
xcoff_symfile_init
static void xcoff_symfile_init(struct objfile *)
Definition: xcoffread.c:1938
psym_functions
const struct quick_symbol_functions psym_functions
Definition: psymtab.c:1541
aix_process_linenos
static void aix_process_linenos(struct objfile *objfile)
Definition: xcoffread.c:813

Definition at line 3095 of file xcoffread.c.

Referenced by _initialize_xcoffread().