GDB (xrefs)
Loading...
Searching...
No Matches
Functions
findvar.c File Reference
#include "defs.h"
#include "symtab.h"
#include "gdbtypes.h"
#include "frame.h"
#include "value.h"
#include "gdbcore.h"
#include "inferior.h"
#include "target.h"
#include "symfile.h"
#include "regcache.h"
#include "user-regs.h"
#include "block.h"
#include "objfiles.h"
#include "language.h"
#include "dwarf2/loc.h"
#include "gdbsupport/selftest.h"

Go to the source code of this file.

Functions

template<typename T , typename >
you lose T extract_integer (gdb::array_view< const gdb_byte > buf, enum bfd_endian byte_order)
 
template LONGEST extract_integer< LONGEST > (gdb::array_view< const gdb_byte > buf, enum bfd_endian byte_order)
 
template ULONGEST extract_integer< ULONGEST > (gdb::array_view< const gdb_byte > buf, enum bfd_endian byte_order)
 
int extract_long_unsigned_integer (const gdb_byte *addr, int orig_len, enum bfd_endian byte_order, LONGEST *pval)
 
CORE_ADDR extract_typed_address (const gdb_byte *buf, struct type *type)
 
template<typename T , typename >
void store_integer (gdb_byte *addr, int len, enum bfd_endian byte_order, T val)
 
template void store_integer (gdb_byte *addr, int len, enum bfd_endian byte_order, LONGEST val)
 
template void store_integer (gdb_byte *addr, int len, enum bfd_endian byte_order, ULONGEST val)
 
void store_typed_address (gdb_byte *buf, struct type *type, CORE_ADDR addr)
 
void copy_integer_to_size (gdb_byte *dest, int dest_size, const gdb_byte *source, int source_size, bool is_signed, enum bfd_endian byte_order)
 
struct valuevalue_of_register (int regnum, frame_info_ptr frame)
 
struct valuevalue_of_register_lazy (frame_info_ptr frame, int regnum)
 
CORE_ADDR unsigned_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf)
 
CORE_ADDR signed_pointer_to_address (struct gdbarch *gdbarch, struct type *type, const gdb_byte *buf)
 
void unsigned_address_to_pointer (struct gdbarch *gdbarch, struct type *type, gdb_byte *buf, CORE_ADDR addr)
 
void address_to_signed_pointer (struct gdbarch *gdbarch, struct type *type, gdb_byte *buf, CORE_ADDR addr)
 
enum symbol_needs_kind symbol_read_needs (struct symbol *sym)
 
int symbol_read_needs_frame (struct symbol *sym)
 
static frame_info_ptr follow_static_link (frame_info_ptr frame, const struct dynamic_prop *static_link)
 
static frame_info_ptr get_hosting_frame (struct symbol *var, const struct block *var_block, frame_info_ptr frame)
 
struct valueread_var_value (struct symbol *var, const struct block *var_block, frame_info_ptr frame)
 
struct valuedefault_value_from_register (struct gdbarch *gdbarch, struct type *type, int regnum, struct frame_id frame_id)
 
void read_frame_register_value (struct value *value, frame_info_ptr frame)
 
struct valuevalue_from_register (struct type *type, int regnum, frame_info_ptr frame)
 
CORE_ADDR address_from_register (int regnum, frame_info_ptr frame)
 
void _initialize_findvar ()
 

Function Documentation

◆ _initialize_findvar()

void _initialize_findvar ( )

Definition at line 1072 of file findvar.c.

Referenced by initialize_all_files().

◆ address_from_register()

CORE_ADDR address_from_register ( int  regnum,
frame_info_ptr  frame 
)

◆ address_to_signed_pointer()

void address_to_signed_pointer ( struct gdbarch gdbarch,
struct type type,
gdb_byte *  buf,
CORE_ADDR  addr 
)

Definition at line 337 of file findvar.c.

References type::length(), store_signed_integer(), and type_byte_order().

Referenced by mips_gdbarch_init().

◆ copy_integer_to_size()

void copy_integer_to_size ( gdb_byte *  dest,
int  dest_size,
const gdb_byte *  source,
int  source_size,
bool  is_signed,
enum bfd_endian  byte_order 
)

Definition at line 215 of file findvar.c.

Referenced by reg_buffer::raw_collect_integer(), and reg_buffer::raw_supply_integer().

◆ default_value_from_register()

struct value * default_value_from_register ( struct gdbarch gdbarch,
struct type type,
int  regnum,
struct frame_id frame_id frame_id   
)

◆ extract_integer()

template<typename T , typename >
you lose T extract_integer ( gdb::array_view< const gdb_byte >  buf,
enum bfd_endian  byte_order 
)

Definition at line 51 of file findvar.c.

◆ extract_integer< LONGEST >()

template LONGEST extract_integer< LONGEST > ( gdb::array_view< const gdb_byte >  buf,
enum bfd_endian  byte_order 
)

Referenced by extract_signed_integer().

◆ extract_integer< ULONGEST >()

template ULONGEST extract_integer< ULONGEST > ( gdb::array_view< const gdb_byte >  buf,
enum bfd_endian  byte_order 
)

◆ extract_long_unsigned_integer()

int extract_long_unsigned_integer ( const gdb_byte *  addr,
int  orig_len,
enum bfd_endian  byte_order,
LONGEST *  pval 
)

Definition at line 103 of file findvar.c.

References extract_unsigned_integer().

◆ extract_typed_address()

CORE_ADDR extract_typed_address ( const gdb_byte *  buf,
struct type type 
)

◆ follow_static_link()

static frame_info_ptr follow_static_link ( frame_info_ptr  frame,
const struct dynamic_prop static_link 
)
static

◆ get_hosting_frame()

static frame_info_ptr get_hosting_frame ( struct symbol var,
const struct block var_block,
frame_info_ptr  frame 
)
static

◆ read_frame_register_value()

void read_frame_register_value ( struct value value,
frame_info_ptr  frame 
)

◆ read_var_value()

struct value * read_var_value ( struct symbol var,
const struct block var_block,
frame_info_ptr  frame 
)

◆ signed_pointer_to_address()

CORE_ADDR signed_pointer_to_address ( struct gdbarch gdbarch,
struct type type,
const gdb_byte *  buf 
)

Definition at line 317 of file findvar.c.

References extract_signed_integer(), type::length(), and type_byte_order().

Referenced by mips_gdbarch_init().

◆ store_integer() [1/3]

template void store_integer ( gdb_byte *  addr,
int  len,
enum bfd_endian  byte_order,
LONGEST  val 
)

◆ store_integer() [2/3]

template<typename T , typename >
void store_integer ( gdb_byte *  addr,
int  len,
enum bfd_endian  byte_order,
T  val 
)

◆ store_integer() [3/3]

template void store_integer ( gdb_byte *  addr,
int  len,
enum bfd_endian  byte_order,
ULONGEST  val 
)

◆ store_typed_address()

void store_typed_address ( gdb_byte *  buf,
struct type type,
CORE_ADDR  addr 
)

◆ symbol_read_needs()

enum symbol_needs_kind symbol_read_needs ( struct symbol sym)

◆ symbol_read_needs_frame()

int symbol_read_needs_frame ( struct symbol sym)

◆ unsigned_address_to_pointer()

void unsigned_address_to_pointer ( struct gdbarch gdbarch,
struct type type,
gdb_byte *  buf,
CORE_ADDR  addr 
)

Definition at line 328 of file findvar.c.

References type::length(), store_unsigned_integer(), and type_byte_order().

◆ unsigned_pointer_to_address()

CORE_ADDR unsigned_pointer_to_address ( struct gdbarch gdbarch,
struct type type,
const gdb_byte *  buf 
)

Definition at line 308 of file findvar.c.

References extract_unsigned_integer(), type::length(), and type_byte_order().

◆ value_from_register()

struct value * value_from_register ( struct type type,
int  regnum,
frame_info_ptr  frame 
)

◆ value_of_register()

struct value * value_of_register ( int  regnum,
frame_info_ptr  frame 
)

◆ value_of_register_lazy()

struct value * value_of_register_lazy ( frame_info_ptr  frame,
int  regnum 
)