GDB (xrefs)
Loading...
Searching...
No Matches
Classes | Macros | Functions | Variables
alpha-mdebug-tdep.c File Reference
#include "defs.h"
#include "frame.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "symtab.h"
#include "gdbcore.h"
#include "block.h"
#include "trad-frame.h"
#include "alpha-tdep.h"
#include "mdebugread.h"
#include "gdbarch.h"

Go to the source code of this file.

Classes

struct  alpha_mdebug_unwind_cache
 

Macros

#define PROC_LOW_ADDR(proc)   ((proc)->pdr.adr)
 
#define PROC_FRAME_OFFSET(proc)   ((proc)->pdr.frameoffset)
 
#define PROC_FRAME_REG(proc)   ((proc)->pdr.framereg)
 
#define PROC_REG_MASK(proc)   ((proc)->pdr.regmask)
 
#define PROC_FREG_MASK(proc)   ((proc)->pdr.fregmask)
 
#define PROC_REG_OFFSET(proc)   ((proc)->pdr.regoffset)
 
#define PROC_FREG_OFFSET(proc)   ((proc)->pdr.fregoffset)
 
#define PROC_PC_REG(proc)   ((proc)->pdr.pcreg)
 
#define PROC_LOCALOFF(proc)   ((proc)->pdr.localoff)
 

Functions

static struct mdebug_extra_func_infofind_proc_desc (CORE_ADDR pc)
 
static int alpha_mdebug_frameless (struct mdebug_extra_func_info *proc_desc)
 
static CORE_ADDR alpha_mdebug_after_prologue (CORE_ADDR pc, struct mdebug_extra_func_info *proc_desc)
 
static int alpha_mdebug_in_prologue (CORE_ADDR pc, struct mdebug_extra_func_info *proc_desc)
 
static struct alpha_mdebug_unwind_cachealpha_mdebug_frame_unwind_cache (frame_info_ptr this_frame, void **this_prologue_cache)
 
static void alpha_mdebug_frame_this_id (frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id)
 
static struct valuealpha_mdebug_frame_prev_register (frame_info_ptr this_frame, void **this_prologue_cache, int regnum)
 
static int alpha_mdebug_max_frame_size_exceeded (struct mdebug_extra_func_info *proc_desc)
 
static int alpha_mdebug_frame_sniffer (const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
 
static CORE_ADDR alpha_mdebug_frame_base_address (frame_info_ptr this_frame, void **this_prologue_cache)
 
static CORE_ADDR alpha_mdebug_frame_locals_address (frame_info_ptr this_frame, void **this_prologue_cache)
 
static CORE_ADDR alpha_mdebug_frame_args_address (frame_info_ptr this_frame, void **this_prologue_cache)
 
static const struct frame_basealpha_mdebug_frame_base_sniffer (frame_info_ptr this_frame)
 
void alpha_mdebug_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 

Variables

static const struct frame_unwind alpha_mdebug_frame_unwind
 
static const struct frame_base alpha_mdebug_frame_base
 

Macro Definition Documentation

◆ PROC_FRAME_OFFSET

#define PROC_FRAME_OFFSET ( proc)    ((proc)->pdr.frameoffset)

◆ PROC_FRAME_REG

#define PROC_FRAME_REG ( proc)    ((proc)->pdr.framereg)

Definition at line 79 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_unwind_cache(), and alpha_mdebug_frameless().

◆ PROC_FREG_MASK

#define PROC_FREG_MASK ( proc)    ((proc)->pdr.fregmask)

Definition at line 81 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_unwind_cache().

◆ PROC_FREG_OFFSET

#define PROC_FREG_OFFSET ( proc)    ((proc)->pdr.fregoffset)

Definition at line 83 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_unwind_cache().

◆ PROC_LOCALOFF

#define PROC_LOCALOFF ( proc)    ((proc)->pdr.localoff)

Definition at line 85 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_locals_address().

◆ PROC_LOW_ADDR

#define PROC_LOW_ADDR ( proc)    ((proc)->pdr.adr)

Definition at line 77 of file alpha-mdebug-tdep.c.

◆ PROC_PC_REG

#define PROC_PC_REG ( proc)    ((proc)->pdr.pcreg)

◆ PROC_REG_MASK

#define PROC_REG_MASK ( proc)    ((proc)->pdr.regmask)

Definition at line 80 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_unwind_cache().

◆ PROC_REG_OFFSET

#define PROC_REG_OFFSET ( proc)    ((proc)->pdr.regoffset)

Definition at line 82 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_unwind_cache().

Function Documentation

◆ alpha_mdebug_after_prologue()

static CORE_ADDR alpha_mdebug_after_prologue ( CORE_ADDR pc,
struct mdebug_extra_func_info * proc_desc )
static

Definition at line 149 of file alpha-mdebug-tdep.c.

References alpha_after_prologue(), and alpha_mdebug_frameless().

Referenced by alpha_mdebug_in_prologue().

◆ alpha_mdebug_frame_args_address()

static CORE_ADDR alpha_mdebug_frame_args_address ( frame_info_ptr this_frame,
void ** this_prologue_cache )
static

Definition at line 366 of file alpha-mdebug-tdep.c.

References alpha_mdebug_frame_unwind_cache(), and ALPHA_NUM_ARG_REGS.

◆ alpha_mdebug_frame_base_address()

static CORE_ADDR alpha_mdebug_frame_base_address ( frame_info_ptr this_frame,
void ** this_prologue_cache )
static

Definition at line 346 of file alpha-mdebug-tdep.c.

References alpha_mdebug_frame_unwind_cache().

◆ alpha_mdebug_frame_base_sniffer()

static const struct frame_base * alpha_mdebug_frame_base_sniffer ( frame_info_ptr this_frame)
static

◆ alpha_mdebug_frame_locals_address()

static CORE_ADDR alpha_mdebug_frame_locals_address ( frame_info_ptr this_frame,
void ** this_prologue_cache )
static

Definition at line 356 of file alpha-mdebug-tdep.c.

References alpha_mdebug_frame_unwind_cache(), and PROC_LOCALOFF.

◆ alpha_mdebug_frame_prev_register()

static struct value * alpha_mdebug_frame_prev_register ( frame_info_ptr this_frame,
void ** this_prologue_cache,
int regnum )
static

◆ alpha_mdebug_frame_sniffer()

static int alpha_mdebug_frame_sniffer ( const struct frame_unwind * self,
frame_info_ptr this_frame,
void ** this_cache )
static

◆ alpha_mdebug_frame_this_id()

static void alpha_mdebug_frame_this_id ( frame_info_ptr this_frame,
void ** this_prologue_cache,
struct frame_id * this_id )
static

◆ alpha_mdebug_frame_unwind_cache()

static struct alpha_mdebug_unwind_cache * alpha_mdebug_frame_unwind_cache ( frame_info_ptr this_frame,
void ** this_prologue_cache )
static

◆ alpha_mdebug_frameless()

static int alpha_mdebug_frameless ( struct mdebug_extra_func_info * proc_desc)
static

◆ alpha_mdebug_in_prologue()

static int alpha_mdebug_in_prologue ( CORE_ADDR pc,
struct mdebug_extra_func_info * proc_desc )
static

Definition at line 167 of file alpha-mdebug-tdep.c.

References alpha_mdebug_after_prologue().

Referenced by alpha_mdebug_frame_sniffer().

◆ alpha_mdebug_init_abi()

void alpha_mdebug_init_abi ( struct gdbarch_info info,
struct gdbarch * gdbarch )

◆ alpha_mdebug_max_frame_size_exceeded()

static int alpha_mdebug_max_frame_size_exceeded ( struct mdebug_extra_func_info * proc_desc)
static

◆ find_proc_desc()

static struct mdebug_extra_func_info * find_proc_desc ( CORE_ADDR pc)
static

Variable Documentation

◆ alpha_mdebug_frame_base

const struct frame_base alpha_mdebug_frame_base
static
Initial value:
= {
}
static CORE_ADDR alpha_mdebug_frame_args_address(frame_info_ptr this_frame, void **this_prologue_cache)
static CORE_ADDR alpha_mdebug_frame_locals_address(frame_info_ptr this_frame, void **this_prologue_cache)
static CORE_ADDR alpha_mdebug_frame_base_address(frame_info_ptr this_frame, void **this_prologue_cache)
static const struct frame_unwind alpha_mdebug_frame_unwind

Definition at line 375 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_frame_base_sniffer().

◆ alpha_mdebug_frame_unwind

const struct frame_unwind alpha_mdebug_frame_unwind
static
Initial value:
=
{
"alpha mdebug",
NULL,
}
static struct value * alpha_mdebug_frame_prev_register(frame_info_ptr this_frame, void **this_prologue_cache, int regnum)
static int alpha_mdebug_frame_sniffer(const struct frame_unwind *self, frame_info_ptr this_frame, void **this_cache)
static void alpha_mdebug_frame_this_id(frame_info_ptr this_frame, void **this_prologue_cache, struct frame_id *this_id)
enum unwind_stop_reason default_frame_unwind_stop_reason(frame_info_ptr this_frame, void **this_cache)
@ NORMAL_FRAME
Definition frame.h:187

Definition at line 334 of file alpha-mdebug-tdep.c.

Referenced by alpha_mdebug_init_abi().