Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes

WN_Verifier Class Reference

Collaboration diagram for WN_Verifier:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 WN_Verifier (WN *wn)
 ~WN_Verifier ()
BOOL WN_traverse_tree (WN *wn, WN *parent_wn)

Protected Member Functions

BOOL Is_WHIRL_tree (WN *wn, WN *parent)
BOOL CALL_parent_LDID (WN *wn, WN *parent_wn)
BOOL Proper_Block_Structure (WN *wn, OPCODE op)
BOOL Param_parent_is_Call (WN *wn, WN *parent_wn)
BOOL Call_children_are_PARM (WN *wn)
BOOL Is_legal_wn_opcode (OPCODE opc)
BOOL LDA_ty_not_NULL (WN *wn)
BOOL STID_check_st_class (WN *wn)
BOOL TY_is_not_NULL (WN *wn, OPCODE op)
BOOL ST_is_not_NULL (WN *wn, OPCODE op)
BOOL Load_addr_TY_is_not_NULL (WN *wn, OPCODE op)
BOOL Are_enclosed_pragmas (WN *wn, WN *parent_wn)
BOOL Field_id_valid (WN *wn)

Private Member Functions

BOOL Is_return_register_of_call (WN *call_wn, PREG_NUM preg)
WNOne_level_removed_node (WN *parent_wn, OPERATOR opr)
BOOL Is_dedicated_return_register (WN_OFFSET preg)

Private Attributes

MEM_POOL _mem_pool
WN_MAP _map
BOOL _is_tree_OK
WN_func
stack< pragma_stack_type_pragma_stack

Detailed Description

Definition at line 175 of file wn_verifier.cxx.


Constructor & Destructor Documentation

WN_Verifier::WN_Verifier ( WN wn  ) 

Definition at line 230 of file wn_verifier.cxx.

References _func, _is_tree_OK, _map, _mem_pool, FALSE, MEM_POOL_Initialize, MEM_POOL_Push, OPR_FUNC_ENTRY, WN_MAP_Create, and WN_operator().

Here is the call graph for this function:

WN_Verifier::~WN_Verifier ( void   ) 

Definition at line 249 of file wn_verifier.cxx.

References _map, _mem_pool, MEM_POOL_Delete(), MEM_POOL_Pop, and WN_MAP_Delete.

Here is the call graph for this function:


Member Function Documentation

BOOL WN_Verifier::Are_enclosed_pragmas ( WN wn,
WN parent_wn 
) [protected]
BOOL WN_Verifier::Call_children_are_PARM ( WN wn  )  [protected]

Definition at line 694 of file wn_verifier.cxx.

References DevWarn(), OPCODE_name(), OPCODE_operator(), OPR_CALL, OPR_ICALL, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_IO, OPR_IO_ITEM, OPR_PARM, OPR_PICCALL, WN_kid(), WN_kid_count(), and WN_opcode().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::CALL_parent_LDID ( WN wn,
WN parent_wn 
) [protected]
BOOL WN_Verifier::Field_id_valid ( WN wn  )  [protected]
BOOL WN_Verifier::Is_dedicated_return_register ( WN_OFFSET  preg  )  [private]

Definition at line 444 of file wn_verifier.cxx.

Referenced by CALL_parent_LDID(), and STID_check_st_class().

BOOL WN_Verifier::Is_legal_wn_opcode ( OPCODE  opc  )  [protected]

Definition at line 765 of file wn_verifier.cxx.

References DevWarn(), OPCODE_FIRST, OPCODE_LAST, and OPCODE_name().

Referenced by Is_WHIRL_tree(), and WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::Is_return_register_of_call ( WN call_wn,
PREG_NUM  preg 
) [private]
BOOL WN_Verifier::Is_WHIRL_tree ( WN wn,
WN parent 
) [protected]

Definition at line 428 of file wn_verifier.cxx.

References _map, FALSE, FmtAssert, Is_legal_wn_opcode(), NULL, WN_MAP_Get, WN_MAP_Set, and WN_opcode().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::LDA_ty_not_NULL ( WN wn  )  [protected]

Definition at line 778 of file wn_verifier.cxx.

References DevWarn(), KIND_POINTER, KIND_SCALAR, OPCODE_name(), OPCODE_operator(), OPR_LDA, TY::Print(), TY_kind(), Ty_Table, WN_opcode(), and WN_ty().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::Load_addr_TY_is_not_NULL ( WN wn,
OPCODE  op 
) [protected]

Definition at line 396 of file wn_verifier.cxx.

References FmtAssert, NULL, OPCODE_name(), and WN_load_addr_ty().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

WN * WN_Verifier::One_level_removed_node ( WN parent_wn,
OPERATOR  opr 
) [private]

Definition at line 459 of file wn_verifier.cxx.

References NULL, OPR_LDID, OPR_STID, WN_operator(), and WN_prev().

Referenced by CALL_parent_LDID().

Here is the call graph for this function:

BOOL WN_Verifier::Param_parent_is_Call ( WN wn,
WN parent_wn 
) [protected]

Definition at line 660 of file wn_verifier.cxx.

References DevWarn(), OPCODE_name(), OPCODE_operator(), OPR_CALL, OPR_ICALL, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_IO, OPR_PARM, OPR_PICCALL, and WN_opcode().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::Proper_Block_Structure ( WN wn,
OPCODE  op 
) [protected]

Definition at line 609 of file wn_verifier.cxx.

References FALSE, FmtAssert, NULL, OPC_BLOCK, WN_first(), WN_last(), WN_next(), and WN_prev().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::ST_is_not_NULL ( WN wn,
OPCODE  op 
) [protected]

Definition at line 407 of file wn_verifier.cxx.

References DevWarn(), FmtAssert, NULL, OPCODE_name(), OPERATOR_is_store(), ST_is_not_used(), ST_name(), WN_operator(), WN_st(), and WN_st_idx().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::STID_check_st_class ( WN wn  )  [protected]
BOOL WN_Verifier::TY_is_not_NULL ( WN wn,
OPCODE  op 
) [protected]

Definition at line 387 of file wn_verifier.cxx.

References FmtAssert, NULL, OPCODE_name(), and WN_ty().

Referenced by WN_traverse_tree().

Here is the call graph for this function:

BOOL WN_Verifier::WN_traverse_tree ( WN wn,
WN parent_wn 
)

Member Data Documentation

WN* WN_Verifier::_func [private]

Definition at line 185 of file wn_verifier.cxx.

Referenced by CALL_parent_LDID(), and WN_Verifier().

Definition at line 184 of file wn_verifier.cxx.

Referenced by WN_traverse_tree(), and WN_Verifier().

Definition at line 183 of file wn_verifier.cxx.

Referenced by Is_WHIRL_tree(), WN_Verifier(), and ~WN_Verifier().

Definition at line 182 of file wn_verifier.cxx.

Referenced by WN_traverse_tree(), WN_Verifier(), and ~WN_Verifier().

Definition at line 186 of file wn_verifier.cxx.

Referenced by Are_enclosed_pragmas().


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