GDB (xrefs)
|
#include "defs.h"
#include "symtab.h"
#include "source.h"
#include "objfiles.h"
#include "block.h"
#include "guile-internal.h"
Go to the source code of this file.
Classes | |
struct | symtab_smob |
struct | sal_smob |
struct | stscm_deleter |
Functions | |
static hashval_t | stscm_hash_symtab_smob (const void *p) |
static int | stscm_eq_symtab_smob (const void *ap, const void *bp) |
static htab_t | stscm_objfile_symtab_map (struct symtab *symtab) |
static size_t | stscm_free_symtab_smob (SCM self) |
static int | stscm_print_symtab_smob (SCM self, SCM port, scm_print_state *pstate) |
static SCM | stscm_make_symtab_smob (void) |
static int | stscm_is_symtab (SCM scm) |
static SCM | gdbscm_symtab_p (SCM scm) |
SCM | stscm_scm_from_symtab (struct symtab *symtab) |
static SCM | stscm_get_symtab_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static symtab_smob * | stscm_get_symtab_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static int | stscm_is_valid (symtab_smob *st_smob) |
static symtab_smob * | stscm_get_valid_symtab_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static SCM | gdbscm_symtab_valid_p (SCM self) |
static SCM | gdbscm_symtab_filename (SCM self) |
static SCM | gdbscm_symtab_fullname (SCM self) |
static SCM | gdbscm_symtab_objfile (SCM self) |
static SCM | gdbscm_symtab_global_block (SCM self) |
static SCM | gdbscm_symtab_static_block (SCM self) |
static int | stscm_print_sal_smob (SCM self, SCM port, scm_print_state *pstate) |
static SCM | stscm_make_sal_smob (void) |
static int | stscm_is_sal (SCM scm) |
static SCM | gdbscm_sal_p (SCM scm) |
SCM | stscm_scm_from_sal (struct symtab_and_line sal) |
static SCM | stscm_get_sal_arg (SCM self, int arg_pos, const char *func_name) |
static sal_smob * | stscm_get_sal_smob_arg (SCM self, int arg_pos, const char *func_name) |
static int | stscm_sal_is_valid (sal_smob *s_smob) |
static sal_smob * | stscm_get_valid_sal_smob_arg (SCM self, int arg_pos, const char *func_name) |
static SCM | gdbscm_sal_valid_p (SCM self) |
static SCM | gdbscm_sal_pc (SCM self) |
static SCM | gdbscm_sal_last (SCM self) |
static SCM | gdbscm_sal_line (SCM self) |
static SCM | gdbscm_sal_symtab (SCM self) |
static SCM | gdbscm_find_pc_line (SCM pc_scm) |
void | gdbscm_initialize_symtabs (void) |
Variables | |
static const char | symtab_smob_name [] = "gdb:symtab" |
static const char | sal_smob_name [] = "gdb:sal" |
static scm_t_bits | symtab_smob_tag |
static scm_t_bits | sal_smob_tag |
static const registry< objfile >::key< htab, stscm_deleter > | stscm_objfile_data_key |
static const scheme_function | symtab_functions [] |
|
static |
Definition at line 584 of file scm-symtab.c.
References find_pc_line(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_parse_function_args(), symtab_and_line::pc, stscm_scm_from_sal(), and unpack().
void gdbscm_initialize_symtabs | ( | void | ) |
Definition at line 677 of file scm-symtab.c.
References gdbscm_define_functions(), gdbscm_make_smob_type(), sal_smob_name, sal_smob_tag, stscm_free_symtab_smob(), stscm_print_sal_smob(), stscm_print_symtab_smob(), symtab_functions, symtab_smob_name, and symtab_smob_tag.
|
static |
Definition at line 546 of file scm-symtab.c.
References symtab_and_line::end, FUNC_NAME, gdbscm_scm_from_ulongest(), sal_smob::sal, and stscm_get_valid_sal_smob_arg().
|
static |
Definition at line 560 of file scm-symtab.c.
References FUNC_NAME, symtab_and_line::line, sal_smob::sal, and stscm_get_valid_sal_smob_arg().
|
static |
Definition at line 436 of file scm-symtab.c.
References stscm_is_sal().
|
static |
Definition at line 534 of file scm-symtab.c.
References FUNC_NAME, gdbscm_scm_from_ulongest(), symtab_and_line::pc, sal_smob::sal, and stscm_get_valid_sal_smob_arg().
|
static |
Definition at line 574 of file scm-symtab.c.
References FUNC_NAME, stscm_get_valid_sal_smob_arg(), and sal_smob::symtab_scm.
|
static |
Definition at line 524 of file scm-symtab.c.
References FUNC_NAME, stscm_get_sal_smob_arg(), and stscm_sal_is_valid().
|
static |
Definition at line 320 of file scm-symtab.c.
References FUNC_NAME, gdbscm_scm_from_c_string(), stscm_get_valid_symtab_smob_arg_unsafe(), symtab_smob::symtab, and symtab_to_filename_for_display().
|
static |
Definition at line 332 of file scm-symtab.c.
References FUNC_NAME, gdbscm_scm_from_c_string(), stscm_get_valid_symtab_smob_arg_unsafe(), symtab_smob::symtab, and symtab_to_fullname().
|
static |
Definition at line 357 of file scm-symtab.c.
References bkscm_scm_from_block(), compunit_symtab::blockvector(), symtab::compunit(), FUNC_NAME, blockvector::global_block(), compunit_symtab::objfile(), stscm_get_valid_symtab_smob_arg_unsafe(), and symtab_smob::symtab.
|
static |
Definition at line 344 of file scm-symtab.c.
References symtab::compunit(), FUNC_NAME, compunit_symtab::objfile(), ofscm_scm_from_objfile(), stscm_get_valid_symtab_smob_arg_unsafe(), and symtab_smob::symtab.
|
static |
Definition at line 220 of file scm-symtab.c.
References stscm_is_symtab().
|
static |
Definition at line 374 of file scm-symtab.c.
References bkscm_scm_from_block(), compunit_symtab::blockvector(), symtab::compunit(), FUNC_NAME, compunit_symtab::objfile(), blockvector::static_block(), stscm_get_valid_symtab_smob_arg_unsafe(), and symtab_smob::symtab.
|
static |
Definition at line 309 of file scm-symtab.c.
References FUNC_NAME, stscm_get_symtab_smob_arg_unsafe(), and stscm_is_valid().
|
static |
Definition at line 125 of file scm-symtab.c.
References bp, and symtab_smob::symtab.
Referenced by stscm_objfile_symtab_map().
|
static |
Definition at line 156 of file scm-symtab.c.
References symtab_smob::base, gdbscm_clear_eqable_gsmob_ptr_slot(), stscm_objfile_symtab_map(), and symtab_smob::symtab.
Referenced by gdbscm_initialize_symtabs().
|
static |
Definition at line 465 of file scm-symtab.c.
References sal_smob_name, and stscm_is_sal().
Referenced by stscm_get_sal_smob_arg().
|
static |
Definition at line 477 of file scm-symtab.c.
References stscm_get_sal_arg().
Referenced by gdbscm_sal_valid_p(), and stscm_get_valid_sal_smob_arg().
|
static |
Definition at line 255 of file scm-symtab.c.
References stscm_is_symtab(), and symtab_smob_name.
Referenced by stscm_get_symtab_smob_arg_unsafe().
|
static |
Definition at line 267 of file scm-symtab.c.
References stscm_get_symtab_arg_unsafe().
Referenced by gdbscm_symtab_valid_p(), and stscm_get_valid_symtab_smob_arg_unsafe().
|
static |
Definition at line 505 of file scm-symtab.c.
References gdbscm_invalid_object_error(), stscm_get_sal_smob_arg(), and stscm_sal_is_valid().
Referenced by gdbscm_sal_last(), gdbscm_sal_line(), gdbscm_sal_pc(), and gdbscm_sal_symtab().
|
static |
Definition at line 287 of file scm-symtab.c.
References gdbscm_invalid_object_error(), stscm_get_symtab_smob_arg_unsafe(), and stscm_is_valid().
Referenced by gdbscm_symtab_filename(), gdbscm_symtab_fullname(), gdbscm_symtab_global_block(), gdbscm_symtab_objfile(), and gdbscm_symtab_static_block().
|
static |
Definition at line 115 of file scm-symtab.c.
References symtab_smob::symtab.
Referenced by stscm_objfile_symtab_map().
|
static |
Definition at line 428 of file scm-symtab.c.
References sal_smob_tag.
Referenced by gdbscm_sal_p(), and stscm_get_sal_arg().
|
static |
Definition at line 212 of file scm-symtab.c.
References symtab_smob_tag.
Referenced by gdbscm_symtab_p(), and stscm_get_symtab_arg_unsafe().
|
static |
Definition at line 278 of file scm-symtab.c.
References symtab_smob::symtab.
Referenced by gdbscm_symtab_valid_p(), and stscm_get_valid_symtab_smob_arg_unsafe().
|
static |
Definition at line 411 of file scm-symtab.c.
References sal_smob::base, gdbscm_init_gsmob(), sal_smob::sal, sal_smob_name, sal_smob_tag, scm_new_smob(), and sal_smob::symtab_scm.
Referenced by stscm_scm_from_sal().
|
static |
Definition at line 196 of file scm-symtab.c.
References symtab_smob::base, gdbscm_init_eqable_gsmob(), scm_new_smob(), symtab_smob::symtab, symtab_smob_name, and symtab_smob_tag.
Referenced by stscm_scm_from_symtab().
|
static |
Definition at line 138 of file scm-symtab.c.
References symtab::compunit(), gdbscm_create_eqable_gsmob_ptr_map(), registry< T >::get(), compunit_symtab::objfile(), registry< T >::set(), stscm_eq_symtab_smob(), stscm_hash_symtab_smob(), and stscm_objfile_data_key.
Referenced by stscm_free_symtab_smob(), and stscm_scm_from_symtab().
|
static |
Definition at line 392 of file scm-symtab.c.
References gdbscm_printf(), symtab_and_line::line, sal_smob::sal, sal_smob::symtab_scm, and symtab_smob_name.
Referenced by gdbscm_initialize_symtabs().
|
static |
Definition at line 176 of file scm-symtab.c.
References gdbscm_printf(), symtab_smob::symtab, symtab_smob_name, and symtab_to_filename_for_display().
Referenced by gdbscm_initialize_symtabs().
|
static |
Definition at line 488 of file scm-symtab.c.
References gdbscm_is_false, symtab_smob::symtab, and sal_smob::symtab_scm.
Referenced by gdbscm_sal_valid_p(), and stscm_get_valid_sal_smob_arg().
SCM stscm_scm_from_sal | ( | struct symtab_and_line | sal | ) |
Definition at line 444 of file scm-symtab.c.
References sal_smob::sal, stscm_make_sal_smob(), stscm_scm_from_symtab(), symtab_and_line::symtab, and sal_smob::symtab_scm.
Referenced by gdbscm_find_pc_line(), and gdbscm_frame_sal().
SCM stscm_scm_from_symtab | ( | struct symtab * | symtab | ) |
Definition at line 228 of file scm-symtab.c.
References symtab_smob::base, gdbscm_fill_eqable_gsmob_ptr_slot(), gdbscm_find_eqable_gsmob_ptr_slot(), stscm_make_symtab_smob(), stscm_objfile_symtab_map(), and symtab_smob::symtab.
Referenced by gdbscm_symbol_symtab(), and stscm_scm_from_sal().
|
static |
Definition at line 74 of file scm-symtab.c.
Referenced by gdbscm_initialize_symtabs(), stscm_get_sal_arg(), and stscm_make_sal_smob().
|
static |
Definition at line 78 of file scm-symtab.c.
Referenced by gdbscm_initialize_symtabs(), stscm_is_sal(), and stscm_make_sal_smob().
|
static |
Definition at line 108 of file scm-symtab.c.
Referenced by stscm_objfile_symtab_map().
|
static |
Definition at line 609 of file scm-symtab.c.
Referenced by gdbscm_initialize_symtabs().
|
static |
Definition at line 72 of file scm-symtab.c.
Referenced by gdbscm_initialize_symtabs(), stscm_get_symtab_arg_unsafe(), stscm_make_symtab_smob(), stscm_print_sal_smob(), and stscm_print_symtab_smob().
|
static |
Definition at line 77 of file scm-symtab.c.
Referenced by gdbscm_initialize_symtabs(), stscm_is_symtab(), and stscm_make_symtab_smob().