GCC Middle and Back End API Reference
expr_hash_elt Class Reference

#include <tree-ssa-scopedtables.h>

Collaboration diagram for expr_hash_elt:

Public Member Functions

 expr_hash_elt (gimple *, tree)
 expr_hash_elt (tree)
 expr_hash_elt (struct hashable_expr *, tree)
 expr_hash_elt (class expr_hash_elt &)
 ~expr_hash_elt ()
void print (FILE *)
tree vop (void)
tree lhs (void)
struct hashable_exprexpr (void)
expr_hash_eltstamp (void)
hashval_t hash (void)

Private Member Functions

expr_hash_eltoperator= (const expr_hash_elt &)

Private Attributes

struct hashable_expr m_expr
tree m_lhs
tree m_vop
hashval_t m_hash
class expr_hash_eltm_stamp

Constructor & Destructor Documentation

◆ expr_hash_elt() [1/4]

◆ expr_hash_elt() [2/4]

expr_hash_elt::expr_hash_elt ( tree )

References expr_hash_elt().

◆ expr_hash_elt() [3/4]

expr_hash_elt::expr_hash_elt ( struct hashable_expr * orig,
tree orig_lhs )
Given a hashable_expr expression ORIG and an ORIG_LHS, construct a hash table element.

References avail_expr_hash(), m_expr, m_hash, m_lhs, m_stamp, m_vop, and NULL_TREE.

◆ expr_hash_elt() [4/4]

expr_hash_elt::expr_hash_elt ( class expr_hash_elt & old_elt)

◆ ~expr_hash_elt()

expr_hash_elt::~expr_hash_elt ( )
Calls and PHIs have a variable number of arguments that are allocated on the heap. Thus we have to have a special dtor to release them.

References EXPR_CALL, EXPR_PHI, free(), and m_expr.

Member Function Documentation

◆ expr()

struct hashable_expr * expr_hash_elt::expr ( void )
inline

◆ hash()

hashval_t expr_hash_elt::hash ( void )
inline

References m_hash.

◆ lhs()

tree expr_hash_elt::lhs ( void )
inline

References m_lhs.

◆ operator=()

expr_hash_elt & expr_hash_elt::operator= ( const expr_hash_elt & )
private

References expr_hash_elt().

◆ print()

void expr_hash_elt::print ( FILE * stream)

◆ stamp()

expr_hash_elt * expr_hash_elt::stamp ( void )
inline

References expr_hash_elt(), and m_stamp.

Referenced by expr_elt_hasher::equal().

◆ vop()

tree expr_hash_elt::vop ( void )
inline

References m_vop.

Field Documentation

◆ m_expr

struct hashable_expr expr_hash_elt::m_expr
private

◆ m_hash

hashval_t expr_hash_elt::m_hash
private

◆ m_lhs

tree expr_hash_elt::m_lhs
private

◆ m_stamp

class expr_hash_elt* expr_hash_elt::m_stamp
private

◆ m_vop

tree expr_hash_elt::m_vop
private

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