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 |
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 * | frscm_frame_smob_to_frame (frame_smob *f_smob) |
static int | frscm_mark_frame_invalid (void **slot, void *info) |
static void | frscm_del_inferior_frames (struct inferior *inferior, void *datum) |
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 struct inferior_data * | frscm_inferior_data_key |
static const scheme_integer_constant | frame_integer_constants [] |
static const scheme_function | frame_functions [] |
|
static |
Definition at line 380 of file scm-frame.c.
References frscm_mark_frame_invalid().
Referenced by gdbscm_initialize_frames().
Definition at line 105 of file scm-frame.c.
References _frame_smob::frame_id, frame_id_eq(), and _frame_smob::inferior.
Referenced by frscm_inferior_frame_map().
struct frame_info* frscm_frame_smob_to_frame | ( | frame_smob * | f_smob | ) |
Definition at line 347 of file scm-frame.c.
References frame_find_by_id(), _frame_smob::frame_id, _frame_smob::frame_id_is_next, 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 136 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().
Definition at line 293 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 324 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 85 of file scm-frame.c.
References frame_id::code_addr, frame_id::code_addr_p, FID_STACK_VALID, _frame_smob::frame_id, hash(), _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 119 of file scm-frame.c.
References frscm_eq_frame_smob(), frscm_hash_frame_smob(), frscm_inferior_data_key, and gdbscm_create_eqable_gsmob_ptr_map().
Referenced by frscm_free_frame_smob(), and frscm_scm_from_frame().
int frscm_is_frame | ( | SCM | scm | ) |
Definition at line 201 of file scm-frame.c.
References frame_smob_tag.
Referenced by frscm_get_frame_arg_unsafe(), and gdbscm_frame_p().
|
static |
Definition at line 182 of file scm-frame.c.
References _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().
|
static |
Definition at line 365 of file scm-frame.c.
References _frame_smob::inferior.
Referenced by frscm_del_inferior_frames().
|
static |
Definition at line 156 of file scm-frame.c.
References fprint_frame_id(), _frame_smob::frame_id, frame_smob_name, gdbscm_printf(), mem_fileopen(), ui_file_delete(), ui_file_xstrdup(), and xfree().
Referenced by gdbscm_initialize_frames().
|
static |
Definition at line 218 of file scm-frame.c.
References _frame_smob::base, _frame_smob::frame_id, frscm_inferior_frame_map(), gdbscm_find_eqable_gsmob_ptr_slot(), get_frame_arch(), get_frame_id(), get_frame_unwind_stop_reason(), get_next_frame(), get_prev_frame(), if(), _frame_smob::inferior, null_frame_id, and TRY.
Referenced by frscm_scm_from_frame_unsafe().
|
static |
Definition at line 278 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 500 of file scm-frame.c.
References _, arscm_scm_from_arch(), CATCH, END_CATCH, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, _frame_smob::gdbarch, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 596 of file scm-frame.c.
References _, bkscm_scm_from_block(), BLOCK_FUNCTION, BLOCK_SUPERBLOCK, CATCH, END_CATCH, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), get_frame_block(), RETURN_MASK_ALL, symbol_objfile(), and TRY.
|
static |
Definition at line 647 of file scm-frame.c.
References _, CATCH, END_CATCH, 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(), RETURN_MASK_ALL, syscm_scm_from_symbol(), and TRY.
|
static |
Definition at line 423 of file scm-frame.c.
References _, CATCH, END_CATCH, 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, RETURN_MASK_ALL, TRY, and xfree().
|
static |
Definition at line 721 of file scm-frame.c.
References _, CATCH, END_CATCH, 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(), get_next_frame(), _frame_smob::inferior, frame_info::next, RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 684 of file scm-frame.c.
References _, CATCH, END_CATCH, 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(), get_prev_frame(), _frame_smob::inferior, frame_info::prev, RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 209 of file scm-frame.c.
References frscm_is_frame().
|
static |
Definition at line 563 of file scm-frame.c.
References _, CATCH, END_CATCH, 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(), RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 790 of file scm-frame.c.
References _, CATCH, do_cleanups(), END_CATCH, 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(), make_cleanup(), regnum, RETURN_MASK_ALL, TRY, user_reg_map_name_to_regnum(), value_of_register(), vlscm_scm_from_value(), and xfree().
|
static |
Definition at line 849 of file scm-frame.c.
References _, bkscm_scm_to_block(), block_keyword, CATCH, do_cleanups(), END_CATCH, exception_none, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, gdb_assert, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), gdbscm_out_of_range_error(), gdbscm_parse_function_args(), gdbscm_scm_to_c_string(), gdbscm_throw(), get_frame_block(), lookup_symbol(), make_cleanup(), read_var_value(), RETURN_MASK_ALL, syscm_get_valid_symbol_arg_unsafe(), syscm_is_symbol(), TRY, VAR_DOMAIN, vlscm_scm_from_value(), and xfree().
|
static |
Definition at line 757 of file scm-frame.c.
References _, CATCH, END_CATCH, find_frame_sal(), frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), RETURN_MASK_ALL, stscm_scm_from_sal(), and TRY.
|
static |
Definition at line 958 of file scm-frame.c.
References _, CATCH, END_CATCH, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, gdbscm_invalid_object_error(), RETURN_MASK_ALL, select_frame(), and TRY.
|
static |
Definition at line 467 of file scm-frame.c.
References _, CATCH, END_CATCH, 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, RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 530 of file scm-frame.c.
References _, CATCH, END_CATCH, 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(), RETURN_MASK_ALL, frame_info::stop_reason, and TRY.
|
static |
Definition at line 398 of file scm-frame.c.
References CATCH, END_CATCH, frscm_frame_smob_to_frame(), frscm_get_frame_smob_arg_unsafe(), FUNC_NAME, GDBSCM_HANDLE_GDB_EXCEPTION, RETURN_MASK_ALL, and TRY.
void gdbscm_initialize_frames | ( | void | ) |
Definition at line 1162 of file scm-frame.c.
References block_keyword, frame_smob_name, frame_smob_tag, frscm_del_inferior_frames(), frscm_free_frame_smob(), frscm_inferior_data_key, frscm_print_frame_smob(), gdbscm_define_functions(), gdbscm_define_integer_constants(), and gdbscm_make_smob_type().
|
static |
Definition at line 990 of file scm-frame.c.
References CATCH, current_inferior(), END_CATCH, frscm_scm_from_frame_unsafe(), GDBSCM_HANDLE_GDB_EXCEPTION, get_current_frame(), RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 1011 of file scm-frame.c.
References _, CATCH, current_inferior(), END_CATCH, frscm_scm_from_frame_unsafe(), GDBSCM_HANDLE_GDB_EXCEPTION, get_selected_frame(), RETURN_MASK_ALL, and TRY.
|
static |
Definition at line 1032 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 76 of file scm-frame.c.
Referenced by gdbscm_frame_read_var(), and gdbscm_initialize_frames().
|
static |
Definition at line 1071 of file scm-frame.c.
|
static |
Definition at line 1049 of file scm-frame.c.
|
static |
Definition at line 70 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 73 of file scm-frame.c.
Referenced by frscm_is_frame(), frscm_make_frame_smob(), and gdbscm_initialize_frames().
|
static |
Definition at line 78 of file scm-frame.c.
Referenced by frscm_inferior_frame_map(), and gdbscm_initialize_frames().