GDB (xrefs)
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
block Struct Reference

#include "block.h"

Inheritance diagram for block:
global_block

Public Member Functions

CORE_ADDR start () const
 
void set_start (CORE_ADDR start)
 
CORE_ADDR end () const
 
void set_end (CORE_ADDR end)
 
symbolfunction () const
 
void set_function (symbol *function)
 
const blocksuperblock () const
 
void set_superblock (const block *superblock)
 
multidictionarymultidict () const
 
iterator_range< mdict_iterator_wrappermultidict_symbols () const
 
void set_multidict (multidictionary *multidict)
 
gdb::array_view< blockrangeranges ()
 
gdb::array_view< const blockrangeranges () const
 
void set_ranges (blockranges *ranges)
 
bool is_contiguous () const
 
CORE_ADDR entry_pc () const
 
struct objfileobjfile () const
 
struct gdbarchgdbarch () const
 
bool inlined_p () const
 
const char * scope () const
 
void set_scope (const char *scope, struct obstack *obstack)
 
struct using_directget_using () const
 
void set_using (struct using_direct *using_decl, struct obstack *obstack)
 
struct symbollinkage_function () const
 
struct symbolcontaining_function () const
 
const struct blockstatic_block () const
 
bool is_static_block () const
 
const struct blockglobal_block () const
 
bool is_global_block () const
 
const struct blockfunction_block () const
 
void set_compunit_symtab (struct compunit_symtab *)
 
struct dynamic_propstatic_link () const
 
bool contains (const struct block *a, bool allow_nested=false) const
 

Private Member Functions

void initialize_namespace (struct obstack *obstack)
 

Private Attributes

CORE_ADDR m_start = 0
 
CORE_ADDR m_end = 0
 
struct symbolm_function = nullptr
 
const struct blockm_superblock = nullptr
 
struct multidictionarym_multidict = nullptr
 
struct block_namespace_infom_namespace_info = nullptr
 
struct blockrangesm_ranges = nullptr
 

Detailed Description

Definition at line 108 of file block.h.

Member Function Documentation

◆ containing_function()

struct symbol * block::containing_function ( ) const

Definition at line 105 of file block.c.

References function(), and superblock().

Referenced by find_pc_sect_containing_function().

◆ contains()

bool block::contains ( const struct block * a,
bool allow_nested = false ) const

◆ end()

CORE_ADDR block::end ( ) const
inline

◆ entry_pc()

CORE_ADDR block::entry_pc ( ) const
inline

◆ function()

symbol * block::function ( ) const
inline

◆ function_block()

const struct block * block::function_block ( ) const

Definition at line 382 of file block.c.

References function(), and superblock().

Referenced by frame_follow_static_link(), get_out_value_type(), and skip_prologue_sal().

◆ gdbarch()

struct gdbarch * block::gdbarch ( ) const

◆ get_using()

struct using_direct * block::get_using ( ) const

◆ global_block()

const struct block * block::global_block ( ) const

◆ initialize_namespace()

void block::initialize_namespace ( struct obstack * obstack)
private

Definition at line 304 of file block.c.

References m_namespace_info.

Referenced by set_scope(), and set_using().

◆ inlined_p()

bool block::inlined_p ( ) const

◆ is_contiguous()

bool block::is_contiguous ( ) const
inline

◆ is_global_block()

bool block::is_global_block ( ) const
inline

Definition at line 273 of file block.h.

References superblock().

Referenced by get_hosting_frame(), and is_static_block().

◆ is_static_block()

bool block::is_static_block ( ) const
inline

Definition at line 259 of file block.h.

References is_global_block(), and superblock().

Referenced by get_hosting_frame().

◆ linkage_function()

struct symbol * block::linkage_function ( ) const

◆ multidict()

multidictionary * block::multidict ( ) const
inline

◆ multidict_symbols()

iterator_range< mdict_iterator_wrapper > block::multidict_symbols ( ) const
inline

◆ objfile()

struct objfile * block::objfile ( ) const

◆ ranges() [1/2]

gdb::array_view< blockrange > block::ranges ( )
inline

◆ ranges() [2/2]

gdb::array_view< const blockrange > block::ranges ( ) const
inline

Definition at line 164 of file block.h.

References m_ranges, blockranges::nranges, and blockranges::range.

◆ scope()

const char * block::scope ( ) const

◆ set_compunit_symtab()

void block::set_compunit_symtab ( struct compunit_symtab * cu)

◆ set_end()

void block::set_end ( CORE_ADDR end)
inline

◆ set_function()

void block::set_function ( symbol * function)
inline

Definition at line 131 of file block.h.

References function(), and m_function.

Referenced by finalize_symtab(), buildsym_compunit::finish_block_internal(), and parse_symbol().

◆ set_multidict()

void block::set_multidict ( multidictionary * multidict)
inline

Definition at line 151 of file block.h.

References m_multidict, and multidict().

Referenced by finalize_symtab(), buildsym_compunit::finish_block_internal(), and new_block().

◆ set_ranges()

void block::set_ranges ( blockranges * ranges)
inline

Definition at line 173 of file block.h.

References m_ranges, and ranges().

Referenced by dwarf2_record_block_ranges().

◆ set_scope()

void block::set_scope ( const char * scope,
struct obstack * obstack )

◆ set_start()

void block::set_start ( CORE_ADDR start)
inline

◆ set_superblock()

void block::set_superblock ( const block * superblock)
inline

◆ set_using()

void block::set_using ( struct using_direct * using_decl,
struct obstack * obstack )

◆ start()

CORE_ADDR block::start ( ) const
inline

◆ static_block()

const struct block * block::static_block ( ) const

◆ static_link()

struct dynamic_prop * block::static_link ( ) const

Definition at line 408 of file block.c.

References function(), objfile(), and objfile_lookup_static_link().

Referenced by finish_block(), and frame_follow_static_link().

◆ superblock()

const block * block::superblock ( ) const
inline

Member Data Documentation

◆ m_end

CORE_ADDR block::m_end = 0
private

Definition at line 317 of file block.h.

Referenced by end(), and set_end().

◆ m_function

struct symbol* block::m_function = nullptr
private

Definition at line 322 of file block.h.

Referenced by function(), and set_function().

◆ m_multidict

struct multidictionary* block::m_multidict = nullptr
private

Definition at line 334 of file block.h.

Referenced by multidict(), multidict_symbols(), and set_multidict().

◆ m_namespace_info

struct block_namespace_info* block::m_namespace_info = nullptr
private

Definition at line 339 of file block.h.

Referenced by get_using(), initialize_namespace(), scope(), set_scope(), and set_using().

◆ m_ranges

struct blockranges* block::m_ranges = nullptr
private

Definition at line 345 of file block.h.

Referenced by ranges(), ranges(), and set_ranges().

◆ m_start

CORE_ADDR block::m_start = 0
private

Definition at line 316 of file block.h.

Referenced by set_start(), and start().

◆ m_superblock

const struct block* block::m_superblock = nullptr
private

Definition at line 330 of file block.h.

Referenced by set_superblock(), and superblock().


The documentation for this struct was generated from the following files: