GDB (xrefs)
|
#include "defs.h"
#include "frame.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "symtab.h"
#include "gdbcore.h"
#include "block.h"
#include "gdb_assert.h"
#include "gdb_string.h"
#include "trad-frame.h"
#include "alpha-tdep.h"
#include "mdebugread.h"
Go to the source code of this file.
#define PROC_FRAME_OFFSET | ( | proc | ) | ((proc)->pdr.frameoffset) |
Definition at line 81 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_unwind_cache(), alpha_mdebug_frameless(), and alpha_mdebug_max_frame_size_exceeded().
#define PROC_FRAME_REG | ( | proc | ) | ((proc)->pdr.framereg) |
Definition at line 82 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_unwind_cache(), and alpha_mdebug_frameless().
#define PROC_FREG_MASK | ( | proc | ) | ((proc)->pdr.fregmask) |
Definition at line 84 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_unwind_cache().
#define PROC_FREG_OFFSET | ( | proc | ) | ((proc)->pdr.fregoffset) |
Definition at line 86 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_unwind_cache().
#define PROC_LOCALOFF | ( | proc | ) | ((proc)->pdr.localoff) |
Definition at line 88 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_locals_address().
#define PROC_LOW_ADDR | ( | proc | ) | ((proc)->pdr.adr) |
Definition at line 80 of file alpha-mdebug-tdep.c.
#define PROC_PC_REG | ( | proc | ) | ((proc)->pdr.pcreg) |
Definition at line 87 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_prev_register(), and alpha_mdebug_frame_unwind_cache().
#define PROC_REG_MASK | ( | proc | ) | ((proc)->pdr.regmask) |
Definition at line 83 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_unwind_cache().
#define PROC_REG_OFFSET | ( | proc | ) | ((proc)->pdr.regoffset) |
Definition at line 85 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_unwind_cache().
static CORE_ADDR alpha_mdebug_after_prologue | ( | CORE_ADDR | pc, |
struct mdebug_extra_func_info * | proc_desc | ||
) | [static] |
Definition at line 151 of file alpha-mdebug-tdep.c.
References alpha_after_prologue(), and alpha_mdebug_frameless().
Referenced by alpha_mdebug_in_prologue().
static CORE_ADDR alpha_mdebug_frame_args_address | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 366 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_unwind_cache(), ALPHA_NUM_ARG_REGS, and alpha_mdebug_unwind_cache::vfp.
static CORE_ADDR alpha_mdebug_frame_base_address | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 346 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_unwind_cache(), and alpha_mdebug_unwind_cache::vfp.
static struct frame_base* alpha_mdebug_frame_base_sniffer | ( | struct frame_info * | this_frame | ) | [static, read] |
Definition at line 383 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_base, alpha_mdebug_max_frame_size_exceeded(), find_proc_desc(), and get_frame_address_in_block().
Referenced by alpha_mdebug_init_abi().
static CORE_ADDR alpha_mdebug_frame_locals_address | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache | ||
) | [static] |
Definition at line 356 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_unwind_cache(), alpha_mdebug_unwind_cache::proc_desc, PROC_LOCALOFF, and alpha_mdebug_unwind_cache::vfp.
static struct value* alpha_mdebug_frame_prev_register | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache, | ||
int | regnum | ||
) | [static, read] |
Definition at line 280 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_unwind_cache(), ALPHA_PC_REGNUM, alpha_mdebug_unwind_cache::proc_desc, PROC_PC_REG, alpha_mdebug_unwind_cache::saved_regs, and trad_frame_get_prev_register().
static int alpha_mdebug_frame_sniffer | ( | const struct frame_unwind * | self, |
struct frame_info * | this_frame, | ||
void ** | this_cache | ||
) | [static] |
Definition at line 310 of file alpha-mdebug-tdep.c.
References alpha_mdebug_in_prologue(), alpha_mdebug_max_frame_size_exceeded(), find_proc_desc(), and get_frame_address_in_block().
static void alpha_mdebug_frame_this_id | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache, | ||
struct frame_id * | this_id | ||
) | [static] |
Definition at line 267 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_unwind_cache(), frame_id_build(), get_frame_func(), and alpha_mdebug_unwind_cache::vfp.
static struct alpha_mdebug_unwind_cache* alpha_mdebug_frame_unwind_cache | ( | struct frame_info * | this_frame, |
void ** | this_prologue_cache | ||
) | [static, read] |
Definition at line 190 of file alpha-mdebug-tdep.c.
References trad_frame_saved_reg::addr, ALPHA_FP0_REGNUM, ALPHA_SP_REGNUM, find_proc_desc(), FRAME_OBSTACK_ZALLOC, gdb_assert, get_frame_address_in_block(), get_frame_register_unsigned(), alpha_mdebug_unwind_cache::proc_desc, PROC_FRAME_OFFSET, PROC_FRAME_REG, PROC_FREG_MASK, PROC_FREG_OFFSET, PROC_PC_REG, PROC_REG_MASK, PROC_REG_OFFSET, alpha_mdebug_unwind_cache::saved_regs, trad_frame_addr_p(), trad_frame_alloc_saved_regs(), trad_frame_set_value(), ULONGEST, and alpha_mdebug_unwind_cache::vfp.
Referenced by alpha_mdebug_frame_args_address(), alpha_mdebug_frame_base_address(), alpha_mdebug_frame_locals_address(), alpha_mdebug_frame_prev_register(), and alpha_mdebug_frame_this_id().
static int alpha_mdebug_frameless | ( | struct mdebug_extra_func_info * | proc_desc | ) | [static] |
Definition at line 141 of file alpha-mdebug-tdep.c.
References ALPHA_SP_REGNUM, PROC_FRAME_OFFSET, and PROC_FRAME_REG.
Referenced by alpha_mdebug_after_prologue(), and alpha_mdebug_max_frame_size_exceeded().
static int alpha_mdebug_in_prologue | ( | CORE_ADDR | pc, |
struct mdebug_extra_func_info * | proc_desc | ||
) | [static] |
Definition at line 169 of file alpha-mdebug-tdep.c.
References alpha_mdebug_after_prologue().
Referenced by alpha_mdebug_frame_sniffer().
void alpha_mdebug_init_abi | ( | struct gdbarch_info | info, |
struct gdbarch * | gdbarch | ||
) |
Definition at line 404 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frame_base_sniffer(), frame_base_append_sniffer(), frame_unwind_append_unwinder(), and gdbarch_tdep().
Referenced by alpha_linux_init_abi(), alpha_osf1_init_abi(), alphafbsd_init_abi(), alphanbsd_init_abi(), and alphaobsd_init_abi().
static int alpha_mdebug_max_frame_size_exceeded | ( | struct mdebug_extra_func_info * | proc_desc | ) | [static] |
Definition at line 299 of file alpha-mdebug-tdep.c.
References alpha_mdebug_frameless(), and PROC_FRAME_OFFSET.
Referenced by alpha_mdebug_frame_base_sniffer(), and alpha_mdebug_frame_sniffer().
static struct mdebug_extra_func_info* find_proc_desc | ( | CORE_ADDR | pc | ) | [static, read] |
Definition at line 94 of file alpha-mdebug-tdep.c.
References ALPHA_RA_REGNUM, block_for_pc(), BLOCK_START, find_pc_partial_function(), LABEL_DOMAIN, lookup_symbol(), MDEBUG_EFI_SYMBOL_NAME, mdebug_extra_func_info::pdr, and SYMBOL_VALUE_BYTES.
Referenced by alpha_mdebug_frame_base_sniffer(), alpha_mdebug_frame_sniffer(), and alpha_mdebug_frame_unwind_cache().
struct frame_base alpha_mdebug_frame_base [static] |
{ &alpha_mdebug_frame_unwind, alpha_mdebug_frame_base_address, alpha_mdebug_frame_locals_address, alpha_mdebug_frame_args_address }
Definition at line 375 of file alpha-mdebug-tdep.c.
Referenced by alpha_mdebug_frame_base_sniffer().
struct frame_unwind alpha_mdebug_frame_unwind [static] |
{ NORMAL_FRAME, default_frame_unwind_stop_reason, alpha_mdebug_frame_this_id, alpha_mdebug_frame_prev_register, NULL, alpha_mdebug_frame_sniffer }
Definition at line 336 of file alpha-mdebug-tdep.c.