GDB (xrefs)
|
#include "defs.h"
#include "block.h"
#include "frame.h"
#include "symtab.h"
#include "objfiles.h"
#include "value.h"
#include "guile-internal.h"
Go to the source code of this file.
Classes | |
struct | symbol_smob |
struct | syscm_gdbarch_data |
Macros | |
#define | X(SYM) { "SYMBOL_" #SYM, SYM } |
Functions | |
static hashval_t | syscm_hash_symbol_smob (const void *p) |
static int | syscm_eq_symbol_smob (const void *ap, const void *bp) |
static void * | syscm_init_arch_symbols (struct gdbarch *gdbarch) |
static htab_t | syscm_get_symbol_map (struct symbol *symbol) |
static size_t | syscm_free_symbol_smob (SCM self) |
static int | syscm_print_symbol_smob (SCM self, SCM port, scm_print_state *pstate) |
static SCM | syscm_make_symbol_smob (void) |
int | syscm_is_symbol (SCM scm) |
static SCM | gdbscm_symbol_p (SCM scm) |
SCM | syscm_scm_from_symbol (struct symbol *symbol) |
static SCM | syscm_get_symbol_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static symbol_smob * | syscm_get_symbol_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static int | syscm_is_valid (symbol_smob *s_smob) |
static symbol_smob * | syscm_get_valid_symbol_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
struct symbol * | syscm_get_valid_symbol_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
static int | syscm_mark_symbol_invalid (void **slot, void *info) |
static void | syscm_del_objfile_symbols (struct objfile *objfile, void *datum) |
static SCM | gdbscm_symbol_valid_p (SCM self) |
static SCM | gdbscm_symbol_type (SCM self) |
static SCM | gdbscm_symbol_symtab (SCM self) |
static SCM | gdbscm_symbol_name (SCM self) |
static SCM | gdbscm_symbol_linkage_name (SCM self) |
static SCM | gdbscm_symbol_print_name (SCM self) |
static SCM | gdbscm_symbol_addr_class (SCM self) |
static SCM | gdbscm_symbol_argument_p (SCM self) |
static SCM | gdbscm_symbol_constant_p (SCM self) |
static SCM | gdbscm_symbol_function_p (SCM self) |
static SCM | gdbscm_symbol_variable_p (SCM self) |
static SCM | gdbscm_symbol_needs_frame_p (SCM self) |
static SCM | gdbscm_symbol_line (SCM self) |
static SCM | gdbscm_symbol_value (SCM self, SCM rest) |
static SCM | gdbscm_lookup_symbol (SCM name_scm, SCM rest) |
static SCM | gdbscm_lookup_global_symbol (SCM name_scm, SCM rest) |
void | gdbscm_initialize_symbols (void) |
Variables | |
static const char | symbol_smob_name [] = "gdb:symbol" |
static scm_t_bits | symbol_smob_tag |
static SCM | block_keyword |
static SCM | domain_keyword |
static SCM | frame_keyword |
static const struct objfile_data * | syscm_objfile_data_key |
static struct gdbarch_data * | syscm_gdbarch_data_key |
static const scheme_integer_constant | symbol_integer_constants [] |
static const scheme_function | symbol_functions [] |
#define X | ( | SYM | ) | { "SYMBOL_" #SYM, SYM } |
void gdbscm_initialize_symbols | ( | void | ) |
Definition at line 802 of file scm-symbol.c.
References block_keyword, domain_keyword, frame_keyword, gdbarch_data_register_post_init(), gdbscm_define_functions(), gdbscm_define_integer_constants(), gdbscm_make_smob_type(), symbol_smob_name, symbol_smob_tag, syscm_del_objfile_symbols(), syscm_free_symbol_smob(), syscm_init_arch_symbols(), syscm_objfile_data_key, and syscm_print_symbol_smob().
|
static |
Definition at line 642 of file scm-symbol.c.
References CATCH, do_cleanups(), domain_keyword, END_CATCH, exception_none, FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_parse_function_args(), lookup_global_symbol(), make_cleanup(), name, RETURN_MASK_ALL, syscm_scm_from_symbol(), TRY, VAR_DOMAIN, and xfree().
|
static |
Definition at line 570 of file scm-symbol.c.
References _, bkscm_scm_to_block(), block_keyword, CATCH, do_cleanups(), domain_keyword, END_CATCH, exception_none, FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS, gdbscm_parse_function_args(), gdbscm_throw(), get_frame_block(), get_selected_frame(), lookup_symbol(), make_cleanup(), name, RETURN_MASK_ALL, selected_frame, syscm_scm_from_symbol(), TRY, field_of_this_result::type, VAR_DOMAIN, and xfree().
|
static |
Definition at line 408 of file scm-symbol.c.
References FUNC_NAME, symbol_smob::symbol, SYMBOL_CLASS, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 420 of file scm-symbol.c.
References FUNC_NAME, symbol_smob::symbol, SYMBOL_IS_ARGUMENT, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 432 of file scm-symbol.c.
References FUNC_NAME, LOC_CONST, LOC_CONST_BYTES, symbol_smob::symbol, SYMBOL_CLASS, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 447 of file scm-symbol.c.
References FUNC_NAME, LOC_BLOCK, symbol_smob::symbol, SYMBOL_CLASS, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 505 of file scm-symbol.c.
References FUNC_NAME, symbol_smob::symbol, SYMBOL_LINE, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 384 of file scm-symbol.c.
References FUNC_NAME, gdbscm_scm_from_c_string(), symbol_smob::symbol, SYMBOL_LINKAGE_NAME, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 372 of file scm-symbol.c.
References FUNC_NAME, gdbscm_scm_from_c_string(), symbol_smob::symbol, SYMBOL_NATURAL_NAME, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 481 of file scm-symbol.c.
References CATCH, END_CATCH, FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, RETURN_MASK_ALL, symbol_smob::symbol, symbol_read_needs_frame(), syscm_get_valid_symbol_smob_arg_unsafe(), and TRY.
|
static |
Definition at line 197 of file scm-symbol.c.
References syscm_is_symbol().
|
static |
Definition at line 396 of file scm-symbol.c.
References FUNC_NAME, gdbscm_scm_from_c_string(), symbol_smob::symbol, SYMBOL_PRINT_NAME, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 358 of file scm-symbol.c.
References FUNC_NAME, stscm_scm_from_symtab(), symbol_smob::symbol, SYMBOL_OBJFILE_OWNED, symbol_symtab(), and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 341 of file scm-symbol.c.
References FUNC_NAME, symbol_smob::symbol, SYMBOL_TYPE, syscm_get_valid_symbol_smob_arg_unsafe(), and tyscm_scm_from_type().
|
static |
Definition at line 329 of file scm-symbol.c.
References FUNC_NAME, syscm_get_symbol_smob_arg_unsafe(), and syscm_is_valid().
|
static |
Definition at line 518 of file scm-symbol.c.
References _, CATCH, END_CATCH, error(), frame_keyword, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_is_false, gdbscm_out_of_range_error(), gdbscm_parse_function_args(), LOC_TYPEDEF, read_var_value(), RETURN_MASK_ALL, symbol_smob::symbol, SYMBOL_CLASS, symbol_read_needs_frame(), syscm_get_valid_symbol_smob_arg_unsafe(), TRY, and vlscm_scm_from_value().
|
static |
Definition at line 462 of file scm-symbol.c.
References FUNC_NAME, LOC_COMPUTED, LOC_LOCAL, LOC_OPTIMIZED_OUT, LOC_REGISTER, LOC_STATIC, symbol_smob::symbol, SYMBOL_CLASS, SYMBOL_IS_ARGUMENT, and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 312 of file scm-symbol.c.
References syscm_mark_symbol_invalid().
Referenced by gdbscm_initialize_symbols().
Definition at line 76 of file scm-symbol.c.
References symbol_smob::symbol.
Referenced by syscm_get_symbol_map(), and syscm_init_arch_symbols().
|
static |
Definition at line 131 of file scm-symbol.c.
References symbol_smob::base, gdbscm_clear_eqable_gsmob_ptr_slot(), syscm_gdbarch_data::htab, symbol_smob::symbol, and syscm_get_symbol_map().
Referenced by gdbscm_initialize_symbols().
Definition at line 233 of file scm-symbol.c.
References symbol_smob_name, and syscm_is_symbol().
Referenced by syscm_get_symbol_smob_arg_unsafe().
|
static |
Definition at line 100 of file scm-symbol.c.
References gdbarch_data(), gdbscm_create_eqable_gsmob_ptr_map(), syscm_gdbarch_data::htab, symbol_arch(), symbol_objfile(), SYMBOL_OBJFILE_OWNED, syscm_eq_symbol_smob(), syscm_hash_symbol_smob(), and syscm_objfile_data_key.
Referenced by syscm_free_symbol_smob(), and syscm_scm_from_symbol().
|
static |
Definition at line 245 of file scm-symbol.c.
References syscm_get_symbol_arg_unsafe().
Referenced by gdbscm_symbol_valid_p(), and syscm_get_valid_symbol_smob_arg_unsafe().
Definition at line 284 of file scm-symbol.c.
References symbol_smob::symbol, and syscm_get_valid_symbol_smob_arg_unsafe().
Referenced by gdbscm_frame_read_var().
|
static |
Definition at line 265 of file scm-symbol.c.
References _, gdbscm_invalid_object_error(), syscm_get_symbol_smob_arg_unsafe(), and syscm_is_valid().
Referenced by gdbscm_symbol_addr_class(), gdbscm_symbol_argument_p(), gdbscm_symbol_constant_p(), gdbscm_symbol_function_p(), gdbscm_symbol_line(), gdbscm_symbol_linkage_name(), gdbscm_symbol_name(), gdbscm_symbol_needs_frame_p(), gdbscm_symbol_print_name(), gdbscm_symbol_symtab(), gdbscm_symbol_type(), gdbscm_symbol_value(), gdbscm_symbol_variable_p(), and syscm_get_valid_symbol_arg_unsafe().
|
static |
Definition at line 66 of file scm-symbol.c.
References symbol_smob::symbol.
Referenced by syscm_get_symbol_map(), and syscm_init_arch_symbols().
|
static |
Definition at line 86 of file scm-symbol.c.
References GDBARCH_OBSTACK_ZALLOC, gdbscm_create_eqable_gsmob_ptr_map(), syscm_gdbarch_data::htab, syscm_eq_symbol_smob(), and syscm_hash_symbol_smob().
Referenced by gdbscm_initialize_symbols().
int syscm_is_symbol | ( | SCM | scm | ) |
Definition at line 189 of file scm-symbol.c.
References symbol_smob_tag.
Referenced by gdbscm_frame_read_var(), gdbscm_symbol_p(), and syscm_get_symbol_arg_unsafe().
|
static |
Definition at line 256 of file scm-symbol.c.
References symbol_smob::symbol.
Referenced by gdbscm_symbol_valid_p(), and syscm_get_valid_symbol_smob_arg_unsafe().
|
static |
Definition at line 173 of file scm-symbol.c.
References gdbscm_init_eqable_gsmob(), scm_new_smob(), symbol_smob::symbol, symbol_smob_name, and symbol_smob_tag.
Referenced by syscm_scm_from_symbol().
|
static |
Definition at line 297 of file scm-symbol.c.
References symbol_smob::symbol.
Referenced by syscm_del_objfile_symbols().
|
static |
Definition at line 151 of file scm-symbol.c.
References gdbscm_printf(), symbol_smob::symbol, SYMBOL_PRINT_NAME, and symbol_smob_name.
Referenced by gdbscm_initialize_symbols().
SCM syscm_scm_from_symbol | ( | struct symbol * | symbol | ) |
Definition at line 206 of file scm-symbol.c.
References symbol_smob::base, gdbscm_fill_eqable_gsmob_ptr_slot(), gdbscm_find_eqable_gsmob_ptr_slot(), syscm_gdbarch_data::htab, symbol_smob::symbol, symbol, syscm_get_symbol_map(), and syscm_make_symbol_smob().
Referenced by gdbscm_block_function(), gdbscm_block_next_symbol_x(), gdbscm_block_symbols(), gdbscm_frame_function(), gdbscm_lookup_global_symbol(), and gdbscm_lookup_symbol().
|
static |
Definition at line 48 of file scm-symbol.c.
Referenced by gdbscm_initialize_symbols(), and gdbscm_lookup_symbol().
|
static |
Definition at line 49 of file scm-symbol.c.
Referenced by gdbscm_initialize_symbols(), gdbscm_lookup_global_symbol(), and gdbscm_lookup_symbol().
|
static |
Definition at line 50 of file scm-symbol.c.
Referenced by gdbscm_initialize_symbols(), and gdbscm_symbol_value().
|
static |
Definition at line 713 of file scm-symbol.c.
|
static |
Definition at line 682 of file scm-symbol.c.
|
static |
Definition at line 42 of file scm-symbol.c.
Referenced by gdbscm_initialize_symbols(), syscm_get_symbol_arg_unsafe(), syscm_make_symbol_smob(), and syscm_print_symbol_smob().
|
static |
Definition at line 45 of file scm-symbol.c.
Referenced by gdbscm_initialize_symbols(), syscm_is_symbol(), and syscm_make_symbol_smob().
|
static |
Definition at line 53 of file scm-symbol.c.
|
static |
Definition at line 52 of file scm-symbol.c.
Referenced by gdbscm_initialize_symbols(), and syscm_get_symbol_map().