105 res = unwinder->
sniffer (unwinder, this_frame, this_cache);
148 if (unwinder_from_target != NULL
150 unwinder_from_target))
154 if (unwinder_from_target != NULL
156 unwinder_from_target))
159 for (entry = table->
list; entry != NULL; entry = entry->
next)
163 internal_error (__FILE__, __LINE__,
_(
"frame_unwind_find_by_frame failed"));
172 void **this_prologue_cache)
186 return UNWIND_OUTERMOST;
188 return UNWIND_NO_REASON;
219 int regnum,
int new_regnum)
246 struct value *reg_val;
258 struct value *reg_val;
274 struct value *reg_val;
struct value * value_zero(struct type *type, enum lval_type lv)
struct value * frame_unwind_got_bytes(struct frame_info *frame, int regnum, gdb_byte *buf)
#define VALUE_FRAME_ID(val)
const struct frame_unwind * target_get_tailcall_unwinder(void)
const struct frame_unwind * target_get_unwinder(void)
struct value * frame_unwind_got_memory(struct frame_info *frame, int regnum, CORE_ADDR addr)
const struct frame_unwind dummy_frame_unwind
struct cleanup * frame_prepare_for_sniffer(struct frame_info *frame, const struct frame_unwind *unwind)
struct frame_unwind_table_entry * next
void * gdbarch_data(struct gdbarch *gdbarch, struct gdbarch_data *data)
struct value * allocate_value_lazy(struct type *type)
void internal_error(const char *file, int line, const char *fmt,...)
frame_sniffer_ftype * sniffer
void set_value_lazy(struct value *value, int val)
struct gdbarch_data * gdbarch_data_register_pre_init(gdbarch_data_pre_init_ftype *pre_init)
void frame_unwind_prepend_unwinder(struct gdbarch *gdbarch, const struct frame_unwind *unwinder)
void frame_unwind_append_unwinder(struct gdbarch *gdbarch, const struct frame_unwind *unwinder)
void store_unsigned_integer(gdb_byte *, int, enum bfd_endian, ULONGEST)
#define GDBARCH_OBSTACK_ZALLOC(GDBARCH, TYPE)
struct gdbarch * frame_unwind_arch(struct frame_info *next_frame)
struct value * frame_unwind_got_constant(struct frame_info *frame, int regnum, ULONGEST val)
void frame_unwind_find_by_frame(struct frame_info *this_frame, void **this_cache)
int frame_id_eq(struct frame_id l, struct frame_id r)
struct frame_id get_frame_id(struct frame_info *fi)
#define CATCH(EXCEPTION, MASK)
void initialize_file_ftype(void)
struct frame_unwind_table_entry ** osabi_head
struct value * value_of_register_lazy(struct frame_info *frame, int regnum)
const struct frame_unwind * unwinder
initialize_file_ftype _initialize_frame_unwind
struct type * register_type(struct gdbarch *gdbarch, int regnum)
#define gdb_assert_not_reached(message)
enum bfd_endian gdbarch_byte_order(struct gdbarch *gdbarch)
#define VALUE_REGNUM(val)
const struct frame_unwind inline_frame_unwind
int default_frame_sniffer(const struct frame_unwind *self, struct frame_info *this_frame, void **this_prologue_cache)
gdb_byte * value_contents_writeable(struct value *value)
static int frame_unwind_try_unwinder(struct frame_info *this_frame, void **this_cache, const struct frame_unwind *unwinder)
struct value * value_at_lazy(struct type *type, CORE_ADDR addr)
struct value * frame_unwind_got_optimized(struct frame_info *frame, int regnum)
void throw_exception(struct gdb_exception exception)
void discard_cleanups(struct cleanup *old_chain)
void mark_value_bytes_optimized_out(struct value *value, int offset, int length)
struct value * frame_unwind_got_register(struct frame_info *frame, int regnum, int new_regnum)
static struct gdbarch_data * frame_unwind_data
void set_value_stack(struct value *value, int val)
static void * frame_unwind_init(struct obstack *obstack)
unsigned long long ULONGEST
enum unwind_stop_reason default_frame_unwind_stop_reason(struct frame_info *this_frame, void **this_cache)
const struct frame_id outer_frame_id
struct value * frame_unwind_got_address(struct frame_info *frame, int regnum, CORE_ADDR addr)
int register_size(struct gdbarch *gdbarch, int regnum)
gdb_byte * value_contents_raw(struct value *value)
struct frame_unwind_table_entry * list
#define OBSTACK_ZALLOC(OBSTACK, TYPE)
#define TYPE_LENGTH(thistype)
void pack_long(gdb_byte *buf, struct type *type, LONGEST num)
enum bfd_endian byte_order
struct gdbarch * get_frame_arch(struct frame_info *this_frame)
void do_cleanups(struct cleanup *old_chain)