GDB (xrefs)
|
#include "defs.h"
#include "block.h"
#include "frame.h"
#include "inferior.h"
#include "objfiles.h"
#include "symfile.h"
#include "symtab.h"
#include "stack.h"
#include "user-regs.h"
#include "value.h"
#include "guile-internal.h"
#include "unwind_stop_reasons.def"
Go to the source code of this file.
Classes | |
struct | frame_smob |
struct | frscm_deleter |
Macros | |
#define | ENTRY(X) { #X, X } |
#define | SET(name, description) { "FRAME_" #name, name }, |
Functions | |
static hashval_t | frscm_hash_frame_smob (const void *p) |
static int | frscm_eq_frame_smob (const void *ap, const void *bp) |
static htab_t | frscm_inferior_frame_map (struct inferior *inferior) |
static size_t | frscm_free_frame_smob (SCM self) |
static int | frscm_print_frame_smob (SCM self, SCM port, scm_print_state *pstate) |
static SCM | frscm_make_frame_smob (void) |
int | frscm_is_frame (SCM scm) |
static SCM | gdbscm_frame_p (SCM scm) |
static SCM | frscm_scm_from_frame (struct frame_info *frame, struct inferior *inferior) |
static SCM | frscm_scm_from_frame_unsafe (struct frame_info *frame, struct inferior *inferior) |
static SCM | frscm_get_frame_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
frame_smob * | frscm_get_frame_smob_arg_unsafe (SCM self, int arg_pos, const char *func_name) |
struct frame_info_ptr | frscm_frame_smob_to_frame (frame_smob *f_smob) |
static SCM | gdbscm_frame_valid_p (SCM self) |
static SCM | gdbscm_frame_name (SCM self) |
static SCM | gdbscm_frame_type (SCM self) |
static SCM | gdbscm_frame_arch (SCM self) |
static SCM | gdbscm_frame_unwind_stop_reason (SCM self) |
static SCM | gdbscm_frame_pc (SCM self) |
static SCM | gdbscm_frame_block (SCM self) |
static SCM | gdbscm_frame_function (SCM self) |
static SCM | gdbscm_frame_older (SCM self) |
static SCM | gdbscm_frame_newer (SCM self) |
static SCM | gdbscm_frame_sal (SCM self) |
static SCM | gdbscm_frame_read_register (SCM self, SCM register_scm) |
static SCM | gdbscm_frame_read_var (SCM self, SCM symbol_scm, SCM rest) |
static SCM | gdbscm_frame_select (SCM self) |
static SCM | gdbscm_newest_frame (void) |
static SCM | gdbscm_selected_frame (void) |
static SCM | gdbscm_unwind_stop_reason_string (SCM reason_scm) |
void | gdbscm_initialize_frames (void) |
Variables | |
static const char | frame_smob_name [] = "gdb:frame" |
static scm_t_bits | frame_smob_tag |
static SCM | block_keyword |
static const registry< inferior >::key< htab, frscm_deleter > | frscm_inferior_data_key |
static const scheme_integer_constant | frame_integer_constants [] |
static const scheme_function | frame_functions [] |
|
static |
Definition at line 132 of file scm-frame.c.
References bp, frame_smob::frame_id, and frame_smob::inferior.
Referenced by frscm_inferior_frame_map().
struct frame_info_ptr frscm_frame_smob_to_frame | ( | frame_smob * | f_smob | ) |
Definition at line 365 of file scm-frame.c.
References frame_find_by_id(), and get_prev_frame().
Referenced by gdbscm_frame_arch(), gdbscm_frame_block(), gdbscm_frame_function(), gdbscm_frame_name(), gdbscm_frame_newer(), gdbscm_frame_older(), gdbscm_frame_pc(), gdbscm_frame_read_register(), gdbscm_frame_read_var(), gdbscm_frame_sal(), gdbscm_frame_select(), gdbscm_frame_type(), gdbscm_frame_unwind_stop_reason(), gdbscm_frame_valid_p(), and gdbscm_symbol_value().
|
static |
Definition at line 163 of file scm-frame.c.
References frame_smob::base, frscm_inferior_frame_map(), gdbscm_clear_eqable_gsmob_ptr_slot(), and frame_smob::inferior.
Referenced by gdbscm_initialize_frames().
|
static |
Definition at line 311 of file scm-frame.c.
References frame_smob_name, and frscm_is_frame().
Referenced by frscm_get_frame_smob_arg_unsafe().
frame_smob * frscm_get_frame_smob_arg_unsafe | ( | SCM | self, |
int | arg_pos, | ||
const char * | func_name ) |
Definition at line 342 of file scm-frame.c.
References current_inferior(), frscm_get_frame_arg_unsafe(), gdbscm_invalid_object_error(), and frame_smob::inferior.
Referenced by gdbscm_frame_arch(), gdbscm_frame_block(), gdbscm_frame_function(), gdbscm_frame_name(), gdbscm_frame_newer(), gdbscm_frame_older(), gdbscm_frame_pc(), gdbscm_frame_read_register(), gdbscm_frame_read_var(), gdbscm_frame_sal(), gdbscm_frame_select(), gdbscm_frame_type(), gdbscm_frame_unwind_stop_reason(), gdbscm_frame_valid_p(), and gdbscm_symbol_value().
|
static |
Definition at line 112 of file scm-frame.c.
References frame_id::code_addr, frame_id::code_addr_p, FID_STACK_VALID, frame_smob::frame_id, frame_smob::inferior, frame_id::special_addr, frame_id::special_addr_p, frame_id::stack_addr, and frame_id::stack_status.
Referenced by frscm_inferior_frame_map().
|
static |
Definition at line 146 of file scm-frame.c.
References frscm_eq_frame_smob(), frscm_hash_frame_smob(), frscm_inferior_data_key, gdbscm_create_eqable_gsmob_ptr_map(), registry< T >::get(), and registry< T >::set().
Referenced by frscm_free_frame_smob(), and frscm_scm_from_frame().
int frscm_is_frame | ( | SCM | scm | ) |
Definition at line 218 of file scm-frame.c.
References frame_smob_tag.
Referenced by frscm_get_frame_arg_unsafe(), and gdbscm_frame_p().
|
static |
Definition at line 199 of file scm-frame.c.
References frame_smob::base, frame_smob::frame_id, frame_smob::frame_id_is_next, frame_smob_name, frame_smob_tag, frame_smob::gdbarch, gdbscm_init_eqable_gsmob(), frame_smob::inferior, null_frame_id, and scm_new_smob().
Referenced by frscm_scm_from_frame().
|
static |
Definition at line 183 of file scm-frame.c.
References frame_smob::frame_id, frame_smob_name, gdbscm_printf(), and frame_id::to_string().
Referenced by gdbscm_initialize_frames().
|
static |
Definition at line 235 of file scm-frame.c.
References frame_smob::base, frame_smob::frame_id, frame_smob::frame_id_is_next, frscm_inferior_frame_map(), frscm_make_frame_smob(), frame_smob::gdbarch, gdbscm_fill_eqable_gsmob_ptr_slot(), gdbscm_find_eqable_gsmob_ptr_slot(), gdbscm_scm_from_gdb_exception(), get_frame_arch(), get_frame_id(), get_frame_unwind_stop_reason(), get_next_frame(), get_prev_frame(), frame_smob::inferior, null_frame_id, and unpack().
Referenced by frscm_scm_from_frame_unsafe().
|
static |
Definition at line 296 of file scm-frame.c.
References frscm_scm_from_frame(), gdbscm_is_exception(), and gdbscm_throw().
Referenced by gdbscm_frame_newer(), gdbscm_frame_older(), gdbscm_newest_frame(), and gdbscm_selected_frame().
|
static |
Definition at line 493 of file scm-frame.c.
References arscm_scm_from_arch(), frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, frame_smob::gdbarch, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), and unpack().
|
static |
Definition at line 599 of file scm-frame.c.
References bkscm_scm_from_block(), frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, block::function(), GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), get_frame_block(), symbol::objfile(), and unpack().
|
static |
Definition at line 654 of file scm-frame.c.
References find_pc_function(), frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), get_frame_address_in_block(), syscm_scm_from_symbol(), and unpack().
|
static |
Definition at line 412 of file scm-frame.c.
References find_frame_funname(), frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), gdbscm_scm_from_c_string(), language_minimal, name, and unpack().
|
static |
Definition at line 736 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), frscm_scm_from_frame_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), frame_info_ptr::get(), get_next_frame(), frame_smob::inferior, and unpack().
|
static |
Definition at line 695 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), frscm_scm_from_frame_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), frame_info_ptr::get(), get_prev_frame(), frame_smob::inferior, frame_info::prev, and unpack().
|
static |
Definition at line 226 of file scm-frame.c.
References frscm_is_frame().
|
static |
Definition at line 562 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), gdbscm_scm_from_ulongest(), get_frame_pc(), and unpack().
|
static |
Definition at line 813 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), gdbscm_out_of_range_error(), gdbscm_parse_function_args(), get_frame_arch(), regnum, unpack(), user_reg_map_name_to_regnum(), value_of_register(), vlscm_scm_from_value(), and xfree().
|
static |
Definition at line 873 of file scm-frame.c.
References bkscm_scm_to_block(), block_symbol::block, block_keyword, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), gdbscm_out_of_range_error(), gdbscm_parse_function_args(), gdbscm_scm_to_c_string(), gdbscm_throw(), frame_info_ptr::get(), get_frame_block(), lookup_symbol(), read_var_value(), block_symbol::symbol, syscm_get_valid_symbol_arg_unsafe(), syscm_is_symbol(), unpack(), VAR_DOMAIN, and vlscm_scm_from_value().
|
static |
Definition at line 776 of file scm-frame.c.
References find_frame_sal(), frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), stscm_scm_from_sal(), and unpack().
|
static |
Definition at line 980 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), select_frame(), and unpack().
|
static |
Definition at line 456 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), get_frame_type(), NORMAL_FRAME, and unpack().
|
static |
Definition at line 525 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), get_frame_unwind_stop_reason(), and unpack().
|
static |
Definition at line 385 of file scm-frame.c.
References frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, and unpack().
void gdbscm_initialize_frames | ( | void | ) |
Definition at line 1193 of file scm-frame.c.
References block_keyword, frame_functions, frame_integer_constants, frame_smob_name, frame_smob_tag, frscm_free_frame_smob(), frscm_print_frame_smob(), gdbscm_define_functions(), gdbscm_define_integer_constants(), and gdbscm_make_smob_type().
|
static |
Definition at line 1016 of file scm-frame.c.
References current_inferior(), frscm_scm_from_frame_unsafe(), GDBSCM_HANDLE_GDB_EXCEPTION, frame_info_ptr::get(), get_current_frame(), and unpack().
|
static |
Definition at line 1038 of file scm-frame.c.
References current_inferior(), frscm_scm_from_frame_unsafe(), GDBSCM_HANDLE_GDB_EXCEPTION, frame_info_ptr::get(), get_selected_frame(), and unpack().
|
static |
Definition at line 1060 of file scm-frame.c.
References FUNC_NAME, gdbscm_parse_function_args(), gdbscm_scm_from_c_string(), and unwind_stop_reason_to_string().
|
static |
Definition at line 75 of file scm-frame.c.
Referenced by gdbscm_frame_read_var(), and gdbscm_initialize_frames().
|
static |
Definition at line 1099 of file scm-frame.c.
Referenced by gdbscm_initialize_frames().
|
static |
Definition at line 1077 of file scm-frame.c.
Referenced by gdbscm_initialize_frames().
|
static |
Definition at line 69 of file scm-frame.c.
Referenced by frscm_get_frame_arg_unsafe(), frscm_make_frame_smob(), frscm_print_frame_smob(), and gdbscm_initialize_frames().
|
static |
Definition at line 72 of file scm-frame.c.
Referenced by frscm_is_frame(), frscm_make_frame_smob(), and gdbscm_initialize_frames().
|
static |
Definition at line 105 of file scm-frame.c.
Referenced by frscm_inferior_frame_map().