GCC Middle and Back End API Reference
expr_hasher Struct Reference
Inheritance diagram for expr_hasher:
Collaboration diagram for expr_hasher:

Public Types

typedef exprvalue_type
 
typedef exprcompare_type
 

Static Public Member Functions

static hashval_t hash (const expr *)
 
static bool equal (const expr *, const expr *)
 
static hashval_t hash (const value_type &)
 
static bool equal (const value_type &existing, const compare_type &candidate)
 
static void mark_deleted (expr *&)
 
static void mark_empty (expr *&)
 
static bool is_deleted (expr *)
 
static bool is_empty (expr *)
 
static void remove (expr *&)
 

Static Public Attributes

static const bool empty_zero_p
 

Detailed Description

Hashtable helpers.   

Member Typedef Documentation

◆ compare_type

typedef expr* pointer_hash< expr >::compare_type
inherited

◆ value_type

typedef expr* pointer_hash< expr >::value_type
inherited

Member Function Documentation

◆ equal() [1/2]

bool expr_hasher::equal ( const expr * exp1,
const expr * exp2 )
inlinestatic
Callback for hashtab.
Return nonzero if exp1 is equivalent to exp2.   

References exp_equiv_p(), expr::expr, gcc_assert, and expr::hash.

◆ equal() [2/2]

bool pointer_hash< expr >::equal ( const value_type & existing,
const compare_type & candidate )
inlinestaticinherited

◆ hash() [1/2]

hashval_t expr_hasher::hash ( const expr * exp)
inlinestatic
Callback for hashtab.
Return the hash value for expression EXP.  We don't actually hash
here, we just return the cached hash value.   

References exp().

◆ hash() [2/2]

hashval_t pointer_hash< expr >::hash ( const value_type & candidate)
inlinestaticinherited

◆ is_deleted()

bool pointer_hash< expr >::is_deleted ( expr * e)
inlinestaticinherited

◆ is_empty()

bool pointer_hash< expr >::is_empty ( expr * e)
inlinestaticinherited

◆ mark_deleted()

void pointer_hash< expr >::mark_deleted ( expr *& e)
inlinestaticinherited

◆ mark_empty()

void pointer_hash< expr >::mark_empty ( expr *& e)
inlinestaticinherited

◆ remove()

void typed_noop_remove< expr * >::remove ( expr * & )
inlinestaticinherited
Remove doing nothing.   

Field Documentation

◆ empty_zero_p

const bool pointer_hash< expr >::empty_zero_p
staticinherited

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