GCC Middle and Back End API Reference
default_hash_traits< ana::concrete_binding > Struct Reference

#include <store.h>

Inheritance diagram for default_hash_traits< ana::concrete_binding >:
Collaboration diagram for default_hash_traits< ana::concrete_binding >:

Public Types

typedef concrete_binding key_t
typedef ana::concrete_binding value_type
typedef ana::concrete_binding compare_type

Public Member Functions

bool concrete_p () const final override
hashval_t hash () const
bool operator== (const concrete_binding &other) const
void dump_to_pp (pretty_printer *pp, bool simple) const final override
const concrete_bindingdyn_cast_concrete_binding () const final override
const bit_range & get_bit_range () const
bool get_byte_range (byte_range *out) const
bit_offset_t get_start_bit_offset () const
bit_size_t get_size_in_bits () const
bit_offset_t get_next_bit_offset () const
bool overlaps_p (const concrete_binding &other) const
void mark_deleted ()
void mark_empty ()
bool is_deleted () const
bool is_empty () const
bool symbolic_p () const
void dump (bool simple) const
label_text get_desc (bool simple=true) const
virtual const symbolic_binding * dyn_cast_symbolic_binding () const

Static Public Member Functions

static int cmp_ptr_ptr (const void *, const void *)
static const binding_key * make (store_manager *mgr, const region *r)
static int cmp_ptrs (const void *, const void *)
static int cmp (const binding_key *, const binding_key *)
static hashval_t hash (value_type v)
static bool equal (const value_type &existing, const value_type &candidate)
static void mark_deleted (ana::concrete_binding &t)
static void mark_empty (ana::concrete_binding &t)
static bool is_deleted (ana::concrete_binding t)
static bool is_empty (ana::concrete_binding t)
static void remove (ana::concrete_binding &)

Static Public Attributes

static const bool empty_zero_p = false

Private Attributes

bit_range m_bit_range

Member Typedef Documentation

◆ compare_type

◆ key_t

◆ value_type

Member Function Documentation

◆ cmp()

int ana::binding_key::cmp ( const binding_key * ,
const binding_key *  )
staticinherited

◆ cmp_ptr_ptr()

int ana::concrete_binding::cmp_ptr_ptr ( const void * ,
const void *  )
staticinherited

◆ cmp_ptrs()

int ana::binding_key::cmp_ptrs ( const void * ,
const void *  )
staticinherited

◆ concrete_p()

bool ana::concrete_binding::concrete_p ( ) const
inlinefinaloverridevirtualinherited

Implements ana::binding_key.

References final().

◆ dump()

void ana::binding_key::dump ( bool simple) const
inherited

◆ dump_to_pp()

void ana::concrete_binding::dump_to_pp ( pretty_printer * pp,
bool simple ) const
finaloverridevirtualinherited

Implements ana::binding_key.

◆ dyn_cast_concrete_binding()

const concrete_binding * ana::concrete_binding::dyn_cast_concrete_binding ( ) const
inlinefinaloverridevirtualinherited

Reimplemented from ana::binding_key.

References concrete_binding(), and final().

◆ dyn_cast_symbolic_binding()

virtual const symbolic_binding * ana::binding_key::dyn_cast_symbolic_binding ( ) const
inlinevirtualinherited

Reimplemented in ana::symbolic_binding.

References NULL.

◆ equal()

bool member_function_hash_traits< ana::concrete_binding >::equal ( const value_type & existing,
const value_type & candidate )
inlinestaticinherited

◆ get_bit_range()

const bit_range & ana::concrete_binding::get_bit_range ( ) const
inlineinherited

References m_bit_range.

◆ get_byte_range()

bool ana::concrete_binding::get_byte_range ( byte_range * out) const
inherited

◆ get_desc()

label_text ana::binding_key::get_desc ( bool simple = true) const
inherited

◆ get_next_bit_offset()

bit_offset_t ana::concrete_binding::get_next_bit_offset ( ) const
inlineinherited

References m_bit_range.

◆ get_size_in_bits()

bit_size_t ana::concrete_binding::get_size_in_bits ( ) const
inlineinherited

References m_bit_range.

◆ get_start_bit_offset()

bit_offset_t ana::concrete_binding::get_start_bit_offset ( ) const
inlineinherited

References m_bit_range.

◆ hash() [1/2]

hashval_t ana::concrete_binding::hash ( ) const
inlineinherited

◆ hash() [2/2]

hashval_t member_function_hash_traits< ana::concrete_binding >::hash ( value_type v)
inlinestaticinherited

◆ is_deleted() [1/2]

bool ana::concrete_binding::is_deleted ( ) const
inlineinherited

References m_bit_range.

◆ is_deleted() [2/2]

◆ is_empty() [1/2]

bool ana::concrete_binding::is_empty ( ) const
inlineinherited

References m_bit_range.

◆ is_empty() [2/2]

◆ make()

const binding_key * ana::binding_key::make ( store_manager * mgr,
const region * r )
staticinherited

References r.

◆ mark_deleted() [1/2]

void ana::concrete_binding::mark_deleted ( )
inlineinherited

References m_bit_range.

◆ mark_deleted() [2/2]

void member_function_hash_traits< ana::concrete_binding >::mark_deleted ( ana::concrete_binding & t)
inlinestaticinherited

◆ mark_empty() [1/2]

void ana::concrete_binding::mark_empty ( )
inlineinherited

References m_bit_range.

◆ mark_empty() [2/2]

void member_function_hash_traits< ana::concrete_binding >::mark_empty ( ana::concrete_binding & t)
inlinestaticinherited

◆ operator==()

bool ana::concrete_binding::operator== ( const concrete_binding & other) const
inlineinherited

References concrete_binding(), and m_bit_range.

◆ overlaps_p()

bool ana::concrete_binding::overlaps_p ( const concrete_binding & other) const
inherited

References concrete_binding().

◆ remove()

void typed_noop_remove< ana::concrete_binding >::remove ( ana::concrete_binding & )
inlinestaticinherited
Remove doing nothing.   

◆ symbolic_p()

bool ana::binding_key::symbolic_p ( ) const
inlineinherited

References concrete_p().

Field Documentation

◆ empty_zero_p

const bool default_hash_traits< ana::concrete_binding >::empty_zero_p = false
static

◆ m_bit_range


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