GDB (xrefs)
|
#include "defs.h"
#include "block.h"
#include "dictionary.h"
#include "objfiles.h"
#include "source.h"
#include "symtab.h"
#include "guile-internal.h"
Go to the source code of this file.
Classes | |
struct | block_smob |
struct | block_syms_progress_smob |
struct | bkscm_deleter |
Functions | |
static hashval_t | bkscm_hash_block_smob (const void *p) |
static int | bkscm_eq_block_smob (const void *ap, const void *bp) |
static htab_t | bkscm_objfile_block_map (struct objfile *objfile) |
static size_t | bkscm_free_block_smob (SCM self) |
static int | bkscm_print_block_smob (SCM self, SCM port, scm_print_state *pstate) |
static SCM | bkscm_make_block_smob (void) |
static int | bkscm_is_block (SCM scm) |
static SCM | gdbscm_block_p (SCM scm) |
SCM | bkscm_scm_from_block (const struct block *block, struct objfile *objfile) |
static SCM | bkscm_get_block_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static block_smob * | bkscm_get_block_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static int | bkscm_is_valid (block_smob *b_smob) |
static block_smob * | bkscm_get_valid_block_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static block_smob * | bkscm_get_valid_block (SCM scm, int arg_pos, const char *func_name, SCM *excp) |
const struct block * | bkscm_scm_to_block (SCM block_scm, int arg_pos, const char *func_name, SCM *excp) |
static SCM | gdbscm_block_valid_p (SCM self) |
static SCM | gdbscm_block_start (SCM self) |
static SCM | gdbscm_block_end (SCM self) |
static SCM | gdbscm_block_function (SCM self) |
static SCM | gdbscm_block_superblock (SCM self) |
static SCM | gdbscm_block_global_block (SCM self) |
static SCM | gdbscm_block_static_block (SCM self) |
static SCM | gdbscm_block_global_p (SCM self) |
static SCM | gdbscm_block_static_p (SCM self) |
static SCM | gdbscm_block_symbols (SCM self) |
static int | bkscm_print_block_syms_progress_smob (SCM self, SCM port, scm_print_state *pstate) |
static SCM | bkscm_make_block_syms_progress_smob (void) |
static int | bkscm_is_block_syms_progress (SCM scm) |
static SCM | bkscm_block_syms_progress_p (SCM scm) |
static SCM | gdbscm_make_block_syms_iter (SCM self) |
static SCM | gdbscm_block_next_symbol_x (SCM self) |
static SCM | gdbscm_lookup_block (SCM pc_scm) |
void | gdbscm_initialize_blocks (void) |
Variables | |
static const char | block_smob_name [] = "gdb:block" |
static const char | block_syms_progress_smob_name [] = "gdb:block-symbols-iterator" |
static scm_t_bits | block_smob_tag |
static scm_t_bits | block_syms_progress_smob_tag |
static SCM | bkscm_next_symbol_x_proc |
static const registry< objfile >::key< htab, bkscm_deleter > | bkscm_objfile_data_key |
static const scheme_function | block_functions [] |
|
static |
Definition at line 599 of file scm-block.c.
References bkscm_is_block_syms_progress().
|
static |
Definition at line 124 of file scm-block.c.
References block_smob::block, and bp.
Referenced by bkscm_objfile_block_map().
|
static |
Definition at line 154 of file scm-block.c.
References block_smob::base, bkscm_objfile_block_map(), block_smob::block, gdbscm_clear_eqable_gsmob_ptr_slot(), and block_smob::objfile.
Referenced by gdbscm_initialize_blocks().
|
static |
Definition at line 266 of file scm-block.c.
References bkscm_is_block(), and block_smob_name.
Referenced by bkscm_get_block_smob_arg_unsafe().
|
static |
Definition at line 278 of file scm-block.c.
References bkscm_get_block_arg_unsafe().
Referenced by bkscm_get_valid_block_smob_arg_unsafe(), and gdbscm_block_valid_p().
|
static |
Definition at line 318 of file scm-block.c.
References bkscm_is_block(), bkscm_is_valid(), block_smob_name, gdbscm_make_invalid_object_error(), and gdbscm_make_type_error().
Referenced by bkscm_scm_to_block().
|
static |
Definition at line 298 of file scm-block.c.
References bkscm_get_block_smob_arg_unsafe(), bkscm_is_valid(), and gdbscm_invalid_object_error().
Referenced by gdbscm_block_end(), gdbscm_block_function(), gdbscm_block_global_block(), gdbscm_block_global_p(), gdbscm_block_next_symbol_x(), gdbscm_block_start(), gdbscm_block_static_block(), gdbscm_block_static_p(), gdbscm_block_superblock(), gdbscm_block_symbols(), and gdbscm_make_block_syms_iter().
|
static |
Definition at line 114 of file scm-block.c.
References block_smob::block.
Referenced by bkscm_objfile_block_map().
|
static |
Definition at line 221 of file scm-block.c.
References block_smob_tag.
Referenced by bkscm_get_block_arg_unsafe(), bkscm_get_valid_block(), and gdbscm_block_p().
|
static |
Definition at line 591 of file scm-block.c.
References block_syms_progress_smob_tag.
Referenced by bkscm_block_syms_progress_p(), and gdbscm_block_next_symbol_x().
|
static |
Definition at line 289 of file scm-block.c.
References block_smob::block.
Referenced by bkscm_get_valid_block(), bkscm_get_valid_block_smob_arg_unsafe(), and gdbscm_block_valid_p().
|
static |
Definition at line 204 of file scm-block.c.
References block_smob::base, block_smob::block, block_smob_name, block_smob_tag, gdbscm_init_eqable_gsmob(), block_smob::objfile, and scm_new_smob().
Referenced by bkscm_scm_from_block().
|
static |
Definition at line 573 of file scm-block.c.
References block_syms_progress_smob::base, block_syms_progress_smob_name, block_syms_progress_smob_tag, gdbscm_init_gsmob(), block_syms_progress_smob::initialized_p, block_syms_progress_smob::iter, and scm_new_smob().
Referenced by gdbscm_make_block_syms_iter().
|
static |
Definition at line 137 of file scm-block.c.
References bkscm_eq_block_smob(), bkscm_hash_block_smob(), bkscm_objfile_data_key, gdbscm_create_eqable_gsmob_ptr_map(), registry< T >::get(), and registry< T >::set().
Referenced by bkscm_free_block_smob(), and bkscm_scm_from_block().
|
static |
Definition at line 175 of file scm-block.c.
References block_smob::block, block_smob_name, block::end(), block::function(), gdbscm_printf(), general_symbol_info::print_name(), block::start(), and block::superblock().
Referenced by gdbscm_initialize_blocks().
|
static |
Definition at line 524 of file scm-block.c.
References block_syms_progress_smob_name, block_iterator::compunit_symtab, block_iterator::d, FIRST_LOCAL_BLOCK, gdbscm_printf(), GLOBAL_BLOCK, block_iterator::idx, compunit_symtab::includes, block_syms_progress_smob::initialized_p, block_syms_progress_smob::iter, compunit_symtab::primary_filetab(), STATIC_BLOCK, symtab_to_filename_for_display(), and block_iterator::which.
Referenced by gdbscm_initialize_blocks().
Definition at line 238 of file scm-block.c.
References block_smob::base, bkscm_make_block_smob(), bkscm_objfile_block_map(), block_smob::block, gdbscm_fill_eqable_gsmob_ptr_slot(), gdbscm_find_eqable_gsmob_ptr_slot(), block::objfile(), and block_smob::objfile.
Referenced by gdbscm_block_global_block(), gdbscm_block_static_block(), gdbscm_block_superblock(), gdbscm_frame_block(), gdbscm_lookup_block(), gdbscm_symtab_global_block(), and gdbscm_symtab_static_block().
const struct block * bkscm_scm_to_block | ( | SCM | block_scm, |
int | arg_pos, | ||
const char * | func_name, | ||
SCM * | excp ) |
Definition at line 345 of file scm-block.c.
References bkscm_get_valid_block(), and block_smob::block.
Referenced by gdbscm_frame_read_var(), gdbscm_lookup_symbol(), and gdbscm_lookup_type().
|
static |
Definition at line 387 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), block_smob::block, block::end(), FUNC_NAME, and gdbscm_scm_from_ulongest().
|
static |
Definition at line 399 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), block_smob::block, FUNC_NAME, block::function(), and syscm_scm_from_symbol().
|
static |
Definition at line 434 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), bkscm_scm_from_block(), block_smob::block, FUNC_NAME, block::global_block(), and block_smob::objfile.
|
static |
Definition at line 470 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), block_smob::block, FUNC_NAME, and block::superblock().
|
static |
Definition at line 626 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), bkscm_is_block_syms_progress(), block_smob::block, block_iterator_first(), block_iterator_next(), block_syms_progress_smob_name, FUNC_NAME, gdbscm_end_of_iteration(), block_syms_progress_smob::initialized_p, block_syms_progress_smob::iter, itscm_get_iterator_arg_unsafe(), itscm_iterator_smob_object(), itscm_iterator_smob_progress(), and syscm_scm_from_symbol().
Referenced by gdbscm_initialize_blocks().
|
static |
Definition at line 229 of file scm-block.c.
References bkscm_is_block().
|
static |
Definition at line 375 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), block_smob::block, FUNC_NAME, gdbscm_scm_from_ulongest(), and block::start().
|
static |
Definition at line 451 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), bkscm_scm_from_block(), block_smob::block, FUNC_NAME, block_smob::objfile, block::static_block(), and block::superblock().
|
static |
Definition at line 483 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), block_smob::block, FUNC_NAME, and block::superblock().
|
static |
Definition at line 416 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), bkscm_scm_from_block(), block_smob::block, FUNC_NAME, block_smob::objfile, and block::superblock().
|
static |
Definition at line 499 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), block_smob::block, FUNC_NAME, and syscm_scm_from_symbol().
|
static |
Definition at line 364 of file scm-block.c.
References bkscm_get_block_smob_arg_unsafe(), bkscm_is_valid(), and FUNC_NAME.
void gdbscm_initialize_blocks | ( | void | ) |
Definition at line 773 of file scm-block.c.
References as_a_scm_t_subr(), bkscm_free_block_smob(), bkscm_next_symbol_x_proc, bkscm_print_block_smob(), bkscm_print_block_syms_progress_smob(), block_functions, block_smob_name, block_smob_tag, block_syms_progress_smob_name, block_syms_progress_smob_tag, gdbscm_block_next_symbol_x(), gdbscm_define_functions(), gdbscm_documentation_symbol, gdbscm_make_smob_type(), and gdbscm_scm_from_c_string().
|
static |
Definition at line 669 of file scm-block.c.
References bkscm_scm_from_block(), block_for_pc(), find_pc_compunit_symtab(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_out_of_range_error(), gdbscm_parse_function_args(), compunit_symtab::objfile(), and unpack().
|
static |
Definition at line 608 of file scm-block.c.
References bkscm_get_valid_block_smob_arg_unsafe(), bkscm_make_block_syms_progress_smob(), bkscm_next_symbol_x_proc, FUNC_NAME, and gdbscm_make_iterator().
|
static |
Definition at line 77 of file scm-block.c.
Referenced by gdbscm_initialize_blocks(), and gdbscm_make_block_syms_iter().
|
static |
Definition at line 107 of file scm-block.c.
Referenced by bkscm_objfile_block_map().
|
static |
Definition at line 704 of file scm-block.c.
Referenced by gdbscm_initialize_blocks().
|
static |
Definition at line 69 of file scm-block.c.
Referenced by bkscm_get_block_arg_unsafe(), bkscm_get_valid_block(), bkscm_make_block_smob(), bkscm_print_block_smob(), and gdbscm_initialize_blocks().
|
static |
Definition at line 73 of file scm-block.c.
Referenced by bkscm_is_block(), bkscm_make_block_smob(), and gdbscm_initialize_blocks().
|
static |
Definition at line 70 of file scm-block.c.
Referenced by bkscm_make_block_syms_progress_smob(), bkscm_print_block_syms_progress_smob(), gdbscm_block_next_symbol_x(), and gdbscm_initialize_blocks().
|
static |
Definition at line 74 of file scm-block.c.
Referenced by bkscm_is_block_syms_progress(), bkscm_make_block_syms_progress_smob(), and gdbscm_initialize_blocks().