VN_PHI_EXPR Module Reference

#include <opt_vn_expr_taxonomy.h>

Inheritance diagram for VN_PHI_EXPR:

Inheritance graph
[legend]
Collaboration diagram for VN_PHI_EXPR:

Collaboration graph
[legend]

Public Member Functions

void free ()
KIND get_kind () const
UINT32 get_num_opnds () const
VN_VALNUM get_opnd (UINT i=0) const
BOOL has_top_opnd () const
BOOL has_bottom_opnd () const
PHI_TAG get_phi_tag () const
IDTYPE get_block_id () const
void set_opnd (UINT32 i, VN_VALNUM vn)
PTR simplify (VN *v)
size_t hash ()
BOOL is_equal_to (CONST_PTR expr) const
void print (FILE *fp=stderr) const

Static Public Member Functions

static void Init_Free_List ()
static void Reclaim_Free_List ()
static VN_PHI_EXPRCreate (UINT32 num_opnds, IDTYPE block_id, PHI_TAG phi_tag)

Private Member Functions

 VN_PHI_EXPR (UINT32 num_opnds, IDTYPE block_id, PHI_TAG phi_tag)

Private Attributes

IDTYPE _block_id
PHI_TAG _phi_tag
UINT32 _num_opnds
VN_VALNUM _vn [3]
VN_VALNUM_vn_array

Static Private Attributes

static FREE_STACK_Free = NULL

Detailed Description

Definition at line 775 of file opt_vn_expr_taxonomy.h.


Constructor & Destructor Documentation

VN_PHI_EXPR::VN_PHI_EXPR ( UINT32  num_opnds,
IDTYPE  block_id,
PHI_TAG  phi_tag 
) [inline, private]

Definition at line 787 of file opt_vn_expr_taxonomy.h.

References VN_EXPR::_Mpool, _vn_array, VN_VALNUM::Bottom(), CXX_NEW_ARRAY, i, INT, and set_opnd().

Referenced by Create().


Member Function/Subroutine Documentation

static void VN_PHI_EXPR::Init_Free_List (  )  [inline, static]

Definition at line 800 of file opt_vn_expr_taxonomy.h.

References _Free, VN_EXPR::_Mpool, and CXX_NEW.

Referenced by VN_EXPR::Init_Free_Lists().

static void VN_PHI_EXPR::Reclaim_Free_List (  )  [inline, static]

Definition at line 801 of file opt_vn_expr_taxonomy.h.

References _Free, VN_EXPR::_Mpool, CXX_DELETE, and NULL.

Referenced by VN_EXPR::Reclaim_Free_Lists().

VN_PHI_EXPR * VN_PHI_EXPR::Create ( UINT32  num_opnds,
IDTYPE  block_id,
PHI_TAG  phi_tag 
) [static]

void VN_PHI_EXPR::free (  )  [inline, virtual]

Implements VN_EXPR.

Definition at line 807 of file opt_vn_expr_taxonomy.h.

References _Free, VN_EXPR::_Mpool, _vn_array, CXX_DELETE_ARRAY, NULL, and FREE_STACK::push().

Referenced by simplify().

KIND VN_PHI_EXPR::get_kind (  )  const [inline, virtual]

Implements VN_EXPR.

Definition at line 817 of file opt_vn_expr_taxonomy.h.

References VN_EXPR::PHI.

UINT32 VN_PHI_EXPR::get_num_opnds (  )  const [inline, virtual]

Implements VN_EXPR.

Definition at line 822 of file opt_vn_expr_taxonomy.h.

References _num_opnds.

Referenced by get_opnd(), has_bottom_opnd(), has_top_opnd(), hash(), is_equal_to(), print(), set_opnd(), and simplify().

VN_VALNUM VN_PHI_EXPR::get_opnd ( UINT  i = 0  )  const [inline, virtual]

Reimplemented from VN_EXPR.

Definition at line 827 of file opt_vn_expr_taxonomy.h.

References _vn, _vn_array, get_num_opnds(), i, Is_True, and NULL.

Referenced by has_bottom_opnd(), has_top_opnd(), hash(), is_equal_to(), print(), and simplify().

BOOL VN_PHI_EXPR::has_top_opnd (  )  const [inline, virtual]

Implements VN_EXPR.

Definition at line 833 of file opt_vn_expr_taxonomy.h.

References get_num_opnds(), get_opnd(), i, INT, and VN_VALNUM::Top().

Referenced by hash(), and simplify().

BOOL VN_PHI_EXPR::has_bottom_opnd (  )  const [inline, virtual]

Implements VN_EXPR.

Definition at line 840 of file opt_vn_expr_taxonomy.h.

References VN_VALNUM::Bottom(), get_num_opnds(), get_opnd(), i, and INT.

Referenced by hash(), and simplify().

PHI_TAG VN_PHI_EXPR::get_phi_tag (  )  const [inline, virtual]

Reimplemented from VN_EXPR.

Definition at line 847 of file opt_vn_expr_taxonomy.h.

References _phi_tag.

IDTYPE VN_PHI_EXPR::get_block_id (  )  const [inline, virtual]

Reimplemented from VN_EXPR.

Definition at line 852 of file opt_vn_expr_taxonomy.h.

References _block_id.

void VN_PHI_EXPR::set_opnd ( UINT32  i,
VN_VALNUM  vn 
) [inline, virtual]

Reimplemented from VN_EXPR.

Definition at line 857 of file opt_vn_expr_taxonomy.h.

References _vn, _vn_array, get_num_opnds(), Is_True, and NULL.

Referenced by Create(), and VN_PHI_EXPR().

VN_EXPR::PTR VN_PHI_EXPR::simplify ( VN v  )  [virtual]

size_t VN_PHI_EXPR::hash (  )  [inline, virtual]

BOOL VN_PHI_EXPR::is_equal_to ( CONST_PTR  expr  )  const [inline, virtual]

void VN_PHI_EXPR::print ( FILE fp = stderr  )  const [inline, virtual]

Implements VN_EXPR.

Definition at line 891 of file opt_vn_expr_taxonomy.h.

References _block_id, fp, fprintf(), fputs(), get_num_opnds(), get_opnd(), i, INT, INT32, and VN_VALNUM::print().


Field Documentation

FREE_STACK * VN_PHI_EXPR::_Free = NULL [static, private]

Definition at line 779 of file opt_vn_expr_taxonomy.h.

Referenced by Create(), free(), Init_Free_List(), and Reclaim_Free_List().

Definition at line 781 of file opt_vn_expr_taxonomy.h.

Referenced by Create(), get_block_id(), hash(), is_equal_to(), and print().

Definition at line 782 of file opt_vn_expr_taxonomy.h.

Referenced by Create(), get_phi_tag(), and is_equal_to().

Definition at line 783 of file opt_vn_expr_taxonomy.h.

Referenced by Create(), get_num_opnds(), and is_equal_to().

Definition at line 784 of file opt_vn_expr_taxonomy.h.

Referenced by get_opnd(), and set_opnd().

Definition at line 785 of file opt_vn_expr_taxonomy.h.

Referenced by Create(), free(), get_opnd(), set_opnd(), and VN_PHI_EXPR().


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

Generated on Wed Apr 8 17:13:21 2009 for Open64 by  doxygen 1.5.6