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 "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 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 1024 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 336 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 214 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 50 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 102 of file findvar.c.

References extract_unsigned_integer().

◆ extract_typed_address()

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

◆ 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 316 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 327 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 307 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 )