GDB (xrefs)
|
#include "defs.h"
#include "block.h"
#include "symtab.h"
#include "symfile.h"
#include "gdb_obstack.h"
#include "cp-support.h"
#include "addrmap.h"
#include "gdbtypes.h"
#include "exceptions.h"
Go to the source code of this file.
struct block* allocate_block | ( | struct obstack * | obstack | ) | [read] |
Definition at line 375 of file block.c.
References BLOCK_DICT, BLOCK_END, BLOCK_FUNCTION, BLOCK_NAMESPACE, BLOCK_START, and BLOCK_SUPERBLOCK.
Referenced by finalize_symtab(), finish_block_internal(), and get_java_class_symtab().
struct block* allocate_global_block | ( | struct obstack * | obstack | ) | [read] |
Definition at line 392 of file block.c.
References global_block::block, and OBSTACK_ZALLOC.
Referenced by finalize_symtab(), finish_block_internal(), and get_java_class_symtab().
struct symbol* block_containing_function | ( | const struct block * | bl | ) | [read] |
Definition at line 90 of file block.c.
References BLOCK_FUNCTION, and BLOCK_SUPERBLOCK.
Referenced by create_sals_line_offset().
struct block* block_for_pc | ( | CORE_ADDR | pc | ) | [read] |
Definition at line 256 of file block.c.
References block_for_pc_sect(), and find_pc_mapped_section().
Referenced by add_local_symbols(), agent_eval_command_one(), create_excep_cond_exprs(), dwarf2_compile_expr_to_ax(), dwarf2_find_location_expression(), encode_actions_1(), evaluate_subexp_standard(), find_condition_and_thread(), find_proc_desc(), frame_id_inner(), gdb_get_vars_command(), gdbpy_block_for_pc(), gen_expr(), gen_maybe_namespace_elt(), get_frame_block(), get_pc_function_start(), init_breakpoint_sal(), inline_frame_sniffer(), locexpr_describe_location_piece(), parse_cmd_to_aexpr(), scope_info(), set_breakpoint_condition(), skip_inline_frames(), skip_prologue_using_sal(), update_breakpoint_locations(), validate_actionline(), and wrap_block_for_pc().
struct block* block_for_pc_sect | ( | CORE_ADDR | pc, |
struct obj_section * | section | ||
) | [read] |
Definition at line 241 of file block.c.
References blockvector_for_pc_sect().
Referenced by block_for_pc(), create_sals_line_offset(), find_pc_sect_function(), and skip_prologue_sal().
struct block* block_global_block | ( | const struct block * | block | ) | [read] |
Definition at line 354 of file block.c.
References BLOCK_SUPERBLOCK.
Referenced by blpy_get_global_block(), lookup_objfile_from_block(), lookup_symbol_file(), and make_symbol_overload_list_namespace().
static void block_initialize_namespace | ( | struct block * | block, |
struct obstack * | obstack | ||
) | [static] |
Definition at line 324 of file block.c.
References BLOCK_NAMESPACE.
Referenced by block_set_scope(), and block_set_using().
int block_inlined_p | ( | const struct block * | bl | ) |
Definition at line 101 of file block.c.
References BLOCK_FUNCTION, and SYMBOL_INLINED.
Referenced by block_linkage_function(), contained_in(), find_frame_funname(), get_frame_block(), inline_frame_sniffer(), lookup_symbol_aux_local(), skip_inline_frames(), skip_prologue_sal(), skip_prologue_using_sal(), and value_of_variable().
struct symbol* block_iter_match_first | ( | const struct block * | block, |
const char * | name, | ||
symbol_compare_ftype * | compare, | ||
struct block_iterator * | iterator | ||
) | [read] |
Definition at line 670 of file block.c.
References block_iter_match_step(), block::dict, block_iterator::dict_iter, dict_iter_match_first(), FIRST_LOCAL_BLOCK, initialize_block_iterator(), and block_iterator::which.
Referenced by ada_add_block_symbols(), and map_block().
struct symbol* block_iter_match_next | ( | const char * | name, |
symbol_compare_ftype * | compare, | ||
struct block_iterator * | iterator | ||
) | [read] |
Definition at line 687 of file block.c.
References block_iter_match_step(), block_iterator::dict_iter, dict_iter_match_next(), FIRST_LOCAL_BLOCK, and block_iterator::which.
Referenced by ada_add_block_symbols(), and map_block().
static struct symbol* block_iter_match_step | ( | struct block_iterator * | iterator, |
const char * | name, | ||
symbol_compare_ftype * | compare, | ||
int | first | ||
) | [static, read] |
Definition at line 629 of file block.c.
References BLOCK_DICT, BLOCKVECTOR, BLOCKVECTOR_BLOCK, block_iterator::dict_iter, dict_iter_match_first(), dict_iter_match_next(), find_iterator_symtab(), FIRST_LOCAL_BLOCK, gdb_assert, block_iterator::idx, and block_iterator::which.
Referenced by block_iter_match_first(), and block_iter_match_next().
struct symbol* block_iter_name_first | ( | const struct block * | block, |
const char * | name, | ||
struct block_iterator * | iterator | ||
) | [read] |
Definition at line 601 of file block.c.
References block_iter_name_step(), block::dict, block_iterator::dict_iter, dict_iter_name_first(), FIRST_LOCAL_BLOCK, initialize_block_iterator(), and block_iterator::which.
Referenced by iterate_over_symbols(), lookup_block_symbol(), and make_symbol_overload_list_block().
struct symbol* block_iter_name_next | ( | const char * | name, |
struct block_iterator * | iterator | ||
) | [read] |
Definition at line 616 of file block.c.
References block_iter_name_step(), block_iterator::dict_iter, dict_iter_name_next(), FIRST_LOCAL_BLOCK, and block_iterator::which.
Referenced by iterate_over_symbols(), lookup_block_symbol(), and make_symbol_overload_list_block().
static struct symbol* block_iter_name_step | ( | struct block_iterator * | iterator, |
const char * | name, | ||
int | first | ||
) | [static, read] |
Definition at line 562 of file block.c.
References BLOCK_DICT, BLOCKVECTOR, BLOCKVECTOR_BLOCK, block_iterator::dict_iter, dict_iter_name_first(), dict_iter_name_next(), find_iterator_symtab(), FIRST_LOCAL_BLOCK, gdb_assert, block_iterator::idx, and block_iterator::which.
Referenced by block_iter_name_first(), and block_iter_name_next().
struct symbol* block_iterator_first | ( | const struct block * | block, |
struct block_iterator * | iterator | ||
) | [read] |
Definition at line 535 of file block.c.
References block_iterator_step(), block::dict, block_iterator::dict_iter, dict_iterator_first(), FIRST_LOCAL_BLOCK, initialize_block_iterator(), and block_iterator::which.
Referenced by blpy_block_syms_iternext().
struct symbol* block_iterator_next | ( | struct block_iterator * | iterator | ) | [read] |
Definition at line 549 of file block.c.
References block_iterator_step(), block_iterator::dict_iter, dict_iterator_next(), FIRST_LOCAL_BLOCK, and block_iterator::which.
Referenced by blpy_block_syms_iternext().
static struct symbol* block_iterator_step | ( | struct block_iterator * | iterator, |
int | first | ||
) | [static, read] |
Definition at line 498 of file block.c.
References BLOCK_DICT, BLOCKVECTOR, BLOCKVECTOR_BLOCK, block_iterator::dict_iter, dict_iterator_first(), dict_iterator_next(), find_iterator_symtab(), FIRST_LOCAL_BLOCK, gdb_assert, block_iterator::idx, and block_iterator::which.
Referenced by block_iterator_first(), and block_iterator_next().
struct symbol* block_linkage_function | ( | const struct block * | bl | ) | [read] |
Definition at line 75 of file block.c.
References BLOCK_FUNCTION, block_inlined_p(), and BLOCK_SUPERBLOCK.
Referenced by dwarf2_compile_expr_to_ax(), dwarf2_find_location_expression(), dwarf_expr_frame_base(), find_old_style_renaming_symbol(), find_pc_sect_function(), gen_expr(), get_pc_function_start(), locexpr_describe_location_piece(), parse_exp_in_context_1(), remove_irrelevant_renamings(), and resolve_sal_pc().
const char* block_scope | ( | const struct block * | block | ) |
Definition at line 269 of file block.c.
References BLOCK_NAMESPACE, and BLOCK_SUPERBLOCK.
Referenced by cp_lookup_symbol_nonlocal(), cp_lookup_transparent_type(), and lookup_symbol_aux_local().
void block_set_scope | ( | struct block * | block, |
const char * | scope, | ||
struct obstack * | obstack | ||
) |
Definition at line 286 of file block.c.
References block_initialize_namespace(), and BLOCK_NAMESPACE.
Referenced by cp_set_block_scope(), and read_func_scope().
void block_set_using | ( | struct block * | block, |
struct using_direct * | using, | ||
struct obstack * | obstack | ||
) |
Definition at line 311 of file block.c.
References block_initialize_namespace(), and BLOCK_NAMESPACE.
Referenced by finish_block_internal().
struct block* block_static_block | ( | const struct block * | block | ) | [read] |
Definition at line 339 of file block.c.
References BLOCK_SUPERBLOCK.
Referenced by ada_lookup_symbol_nonlocal(), blpy_get_static_block(), lookup_symbol_aux_local(), lookup_symbol_static(), make_symbol_overload_list_namespace(), and make_symbol_overload_list_qualified().
struct using_direct* block_using | ( | const struct block * | block | ) | [read] |
Definition at line 298 of file block.c.
References BLOCK_NAMESPACE.
Referenced by cp_lookup_symbol_imports(), and make_symbol_overload_list_using().
int blockvector_contains_pc | ( | struct blockvector * | bv, |
CORE_ADDR | pc | ||
) |
Definition at line 188 of file block.c.
References find_block_in_blockvector().
Referenced by recursively_find_pc_sect_symtab().
struct blockvector* blockvector_for_pc | ( | CORE_ADDR | pc, |
struct block ** | pblock | ||
) | [read] |
Definition at line 231 of file block.c.
References blockvector_for_pc_sect(), and find_pc_mapped_section().
Referenced by block_starting_point_at().
struct blockvector* blockvector_for_pc_sect | ( | CORE_ADDR | pc, |
struct obj_section * | section, | ||
struct block ** | pblock, | ||
struct symtab * | symtab | ||
) | [read] |
Definition at line 159 of file block.c.
References BLOCKVECTOR, find_block_in_blockvector(), and find_pc_sect_symtab().
Referenced by block_for_pc_sect(), blockvector_for_pc(), and resolve_sal_pc().
struct call_site* call_site_for_pc | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) | [read] |
Definition at line 198 of file block.c.
References _, symtab::call_site_htab, find_pc_symtab(), lookup_minimal_symbol_by_pc(), bound_minimal_symbol::minsym, NO_ENTRY_VALUE_ERROR, paddress(), SYMBOL_PRINT_NAME, and throw_error().
Referenced by call_site_find_chain_1(), and dwarf_expr_reg_to_entry_parameter().
Definition at line 48 of file block.c.
References BLOCK_FUNCTION, block_inlined_p(), and BLOCK_SUPERBLOCK.
Referenced by block_innermost_frame(), block_starting_point_at(), display_info(), do_one_display(), frame_id_inner(), push_variable(), resolve_subexp(), watchpoint_check(), and write_var_from_sym().
static struct block* find_block_in_blockvector | ( | struct blockvector * | bl, |
CORE_ADDR | pc | ||
) | [static, read] |
Definition at line 110 of file block.c.
References addrmap_find(), BLOCK_END, BLOCK_START, BLOCKVECTOR_BLOCK, BLOCKVECTOR_MAP, BLOCKVECTOR_NBLOCKS, gdb_assert, and STATIC_BLOCK.
Referenced by blockvector_contains_pc(), and blockvector_for_pc_sect().
static struct symtab* find_iterator_symtab | ( | struct block_iterator * | iterator | ) | [static, read] |
Definition at line 486 of file block.c.
References block_iterator::d, block_iterator::idx, symtab::includes, and block_iterator::symtab.
Referenced by block_iter_match_step(), block_iter_name_step(), and block_iterator_step().
static struct symtab* get_block_symtab | ( | const struct block * | block | ) | [static, read] |
Definition at line 415 of file block.c.
References BLOCK_SUPERBLOCK, gdb_assert, and global_block::symtab.
Referenced by initialize_block_iterator().
static void initialize_block_iterator | ( | const struct block * | block, |
struct block_iterator * | iter | ||
) | [static] |
Definition at line 432 of file block.c.
References block_iterator::block, BLOCK_SUPERBLOCK, block_iterator::d, FIRST_LOCAL_BLOCK, get_block_symtab(), GLOBAL_BLOCK, block_iterator::idx, symtab::includes, STATIC_BLOCK, block_iterator::symtab, symtab::user, and block_iterator::which.
Referenced by block_iter_match_first(), block_iter_name_first(), and block_iterator_first().
void set_block_symtab | ( | struct block * | block, |
struct symtab * | symtab | ||
) |
Definition at line 402 of file block.c.
References BLOCK_SUPERBLOCK, gdb_assert, and global_block::symtab.
Referenced by end_symtab_from_static_block(), finalize_symtab(), and get_java_class_symtab().