GDB (xrefs)
|
#include "defs.h"
#include "dwarf2/read.h"
#include "dwarf2/leb.h"
#include "dwarf2/expr.h"
#include "dwarf2/line-header.h"
#include "dwarf2/section.h"
#include "dwarf2/macro.h"
#include "dwarf2/dwz.h"
#include "buildsym.h"
#include "macrotab.h"
#include "complaints.h"
#include "objfiles.h"
Go to the source code of this file.
Functions | |
static void | dwarf2_macro_malformed_definition_complaint (const char *arg1) |
static struct macro_source_file * | macro_start_file (buildsym_compunit *builder, int file, int line, struct macro_source_file *current_file, const struct line_header *lh) |
static const char * | consume_improper_spaces (const char *p, const char *body) |
static void | parse_macro_definition (struct macro_source_file *file, int line, const char *body) |
static const gdb_byte * | skip_form_bytes (bfd *abfd, const gdb_byte *bytes, const gdb_byte *buffer_end, enum dwarf_form form, unsigned int offset_size, const struct dwarf2_section_info *section) |
static const gdb_byte * | skip_unknown_opcode (unsigned int opcode, const gdb_byte **opcode_definitions, const gdb_byte *mac_ptr, const gdb_byte *mac_end, bfd *abfd, unsigned int offset_size, const struct dwarf2_section_info *section) |
static const gdb_byte * | dwarf_parse_macro_header (const gdb_byte **opcode_definitions, bfd *abfd, const gdb_byte *mac_ptr, unsigned int *offset_size, int section_is_gnu) |
static void | dwarf_decode_macro_bytes (dwarf2_per_objfile *per_objfile, buildsym_compunit *builder, bfd *abfd, const gdb_byte *mac_ptr, const gdb_byte *mac_end, struct macro_source_file *current_file, const struct line_header *lh, const struct dwarf2_section_info *section, int section_is_gnu, int section_is_dwz, unsigned int offset_size, struct dwarf2_section_info *str_section, struct dwarf2_section_info *str_offsets_section, gdb::optional< ULONGEST > str_offsets_base, htab_t include_hash, struct dwarf2_cu *cu) |
void | dwarf_decode_macros (dwarf2_per_objfile *per_objfile, buildsym_compunit *builder, const dwarf2_section_info *section, const struct line_header *lh, unsigned int offset_size, unsigned int offset, struct dwarf2_section_info *str_section, struct dwarf2_section_info *str_offsets_section, gdb::optional< ULONGEST > str_offsets_base, int section_is_gnu, struct dwarf2_cu *cu) |
|
static |
Definition at line 89 of file macro.c.
References complaint.
Referenced by parse_macro_definition().
|
static |
Definition at line 41 of file macro.c.
References complaint.
Referenced by parse_macro_definition().
|
static |
Definition at line 436 of file macro.c.
References dwarf2_section_info::buffer, complaint, dwarf2_get_dwz_file(), dwarf_decode_macro_bytes(), dwarf_parse_macro_header(), macro_source_file::filename, dwarf2_section_info::get_bfd_owner(), macro_source_file::included_by, macro_start_file(), macro_undef(), dwarf2_per_objfile::objfile, objfile_name(), dwarf2_section_info::overflow_complaint(), parse_macro_definition(), dwarf2_per_objfile::per_bfd, producer_is_clang(), dwarf2_section_info::read(), read_1_byte(), read_direct_string(), read_offset(), dwz_file::read_string(), dwarf2_section_info::read_string(), read_unsigned_leb128(), dwarf2_section_info::section, dwarf2_section_info::size, skip_unknown_opcode(), and dwarf2_per_bfd::str.
Referenced by dwarf_decode_macro_bytes(), and dwarf_decode_macros().
void dwarf_decode_macros | ( | dwarf2_per_objfile * | per_objfile, |
buildsym_compunit * | builder, | ||
const dwarf2_section_info * | section, | ||
const struct line_header * | lh, | ||
unsigned int | offset_size, | ||
unsigned int | offset, | ||
struct dwarf2_section_info * | str_section, | ||
struct dwarf2_section_info * | str_offsets_section, | ||
gdb::optional< ULONGEST > | str_offsets_base, | ||
int | section_is_gnu, | ||
struct dwarf2_cu * | cu ) |
Definition at line 802 of file macro.c.
References dwarf2_section_info::buffer, dwarf_decode_macro_bytes(), dwarf_parse_macro_header(), dwarf2_section_info::get_bfd_owner(), macro_start_file(), read_1_byte(), read_direct_string(), read_unsigned_leb128(), dwarf2_section_info::size, skip_unknown_opcode(), xcalloc(), and xfree().
|
static |
Definition at line 378 of file macro.c.
References complaint, flags, read_1_byte(), read_2_bytes(), read_unsigned_leb128(), and version.
Referenced by dwarf_decode_macro_bytes(), and dwarf_decode_macros().
|
static |
Definition at line 49 of file macro.c.
References complaint, line_header::file_file_name(), line_header::file_name_at(), buildsym_compunit::get_macro_table(), macro_define_special(), macro_include(), and macro_set_main().
Referenced by dwarf_decode_macro_bytes(), and dwarf_decode_macros().
|
static |
Definition at line 106 of file macro.c.
References consume_improper_spaces(), dwarf2_macro_malformed_definition_complaint(), macro_define_function(), macro_define_object(), name, and xfree().
Referenced by dwarf_decode_macro_bytes().
|
static |
Definition at line 246 of file macro.c.
References complaint, gdb_skip_leb128(), dwarf2_section_info::get_name(), dwarf2_section_info::overflow_complaint(), read_1_byte(), read_2_bytes(), read_4_bytes(), read_direct_string(), and read_unsigned_leb128().
Referenced by skip_unknown_opcode().
|
static |
Definition at line 335 of file macro.c.
References complaint, read_unsigned_leb128(), and skip_form_bytes().
Referenced by dwarf_decode_macro_bytes(), and dwarf_decode_macros().