Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
wn_attr.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  W2CF_SKIP_ITEM

Defines

#define WN_agoto_addr(wn)   WN_kid0(wn)
#define WN_condbr_cond(wn)   WN_kid0(wn)
#define WN_compgoto_num_cases(wn)   WN_num_entries(wn)
#define WN_compgoto_idx(wn)   WN_kid0(wn)
#define WN_compgoto_table(wn)   WN_kid1(wn)
#define WN_compgoto_has_default_case(wn)   (WN_kid_count(wn) == 3)
#define WN_switch_num_cases(wn)   WN_num_entries(wn)
#define WN_switch_has_default_case(wn)   (WN_kid_count(wn) == 3)
#define WN_opc_rtype(wn)   WN_rtype(wn)
#define WN_opc_operator(wn)   WN_operator(wn)
#define WN_opc_dtype(wn)   WN_desc(wn)
#define WN_opc_name(wn)   OPCODE_name(WN_opcode(wn))
#define WN_is_constant_expr(wn)   (WN_opc_operator(wn) == OPR_INTCONST || WN_opc_operator(wn) == OPR_CONST)
#define INTR_is_adrtmp(intrn)
#define INTR_is_valtmp(intrn)
#define WN_Skip_Parm(arg)   ((arg)!=NULL && WN_opc_operator(arg) == OPR_PARM? WN_kid0(arg) : arg)

Typedefs

typedef mINT64 STAB_OFFSET

Functions

UINT WN_num_var_refs (WN *wn, const ST *st, STAB_OFFSET st_ofst)
TY_IDX Get_Field_Type (TY_IDX base, int field_id)
const char * WN_intrinsic_name (INTRINSIC intr_opc)
TY_IDX WN_intrinsic_return_ty (OPCODE wn_opc, INTRINSIC intr_opc, const WN *call)
BOOL WN_intrinsic_return_to_param (TY_IDX return_ty)
WNWN_Get_PtrAdd_Intconst (WN *wn0, WN *wn1, TY_IDX pointed_ty)
TY_IDX WN_Tree_Type (const WN *wn)
void Remove_Skips (WN *ablock, W2CF_SKIP_ITEM *skip_info, INT *next_info_idx, INT max_info_idx, BOOL clist)
void Restore_Skips (const W2CF_SKIP_ITEM *skip_info, INT number_of_items, BOOL clist)

Define Documentation

#define INTR_is_adrtmp (   intrn)
Value:
((intrn) == INTRN_U4I1ADRTMP || \
    (intrn) == INTRN_U4I2ADRTMP || \
    (intrn) == INTRN_U4I4ADRTMP || \
    (intrn) == INTRN_U4I8ADRTMP || \
    (intrn) == INTRN_U4F4ADRTMP || \
    (intrn) == INTRN_U4F8ADRTMP || \
    (intrn) == INTRN_U4FQADRTMP || \
    (intrn) == INTRN_U4C4ADRTMP || \
    (intrn) == INTRN_U4C8ADRTMP || \
    (intrn) == INTRN_U4CQADRTMP || \
    (intrn) == INTRN_U4VADRTMP  || \
    (intrn) == INTRN_U8I1ADRTMP || \
    (intrn) == INTRN_U8I2ADRTMP || \
    (intrn) == INTRN_U8I4ADRTMP || \
    (intrn) == INTRN_U8I8ADRTMP || \
    (intrn) == INTRN_U8F4ADRTMP || \
    (intrn) == INTRN_U8F8ADRTMP || \
    (intrn) == INTRN_U8FQADRTMP || \
    (intrn) == INTRN_U8C4ADRTMP || \
    (intrn) == INTRN_U8C8ADRTMP || \
    (intrn) == INTRN_U8CQADRTMP || \
    (intrn) == INTRN_U8VADRTMP)

Definition at line 183 of file wn_attr.h.

Referenced by WN2F_String_Argument(), and WN_Tree_Type().

#define INTR_is_valtmp (   intrn)
Value:
((intrn) == INTRN_I4VALTMP || \
    (intrn) == INTRN_I8VALTMP || \
    (intrn) == INTRN_F4VALTMP || \
    (intrn) == INTRN_F8VALTMP || \
    (intrn) == INTRN_FQVALTMP || \
    (intrn) == INTRN_C4VALTMP || \
    (intrn) == INTRN_C8VALTMP || \
    (intrn) == INTRN_CQVALTMP)

Definition at line 207 of file wn_attr.h.

Referenced by WN2F_call(), WN2F_String_Argument(), and WN_Tree_Type().

#define WN_agoto_addr (   wn)    WN_kid0(wn)

Definition at line 161 of file wn_attr.h.

#define WN_compgoto_has_default_case (   wn)    (WN_kid_count(wn) == 3)

Definition at line 168 of file wn_attr.h.

Referenced by WN2C_compgoto(), and WN2F_compgoto().

#define WN_compgoto_idx (   wn)    WN_kid0(wn)

Definition at line 166 of file wn_attr.h.

Referenced by WN2C_compgoto(), WN2C_switch(), and WN2F_compgoto().

#define WN_compgoto_num_cases (   wn)    WN_num_entries(wn)

Definition at line 165 of file wn_attr.h.

Referenced by WN2C_compgoto(), and WN2F_compgoto().

#define WN_compgoto_table (   wn)    WN_kid1(wn)

Definition at line 167 of file wn_attr.h.

Referenced by WN2C_compgoto(), and WN2F_compgoto().

#define WN_condbr_cond (   wn)    WN_kid0(wn)

Definition at line 163 of file wn_attr.h.

Referenced by WN2C_condbr(), and WN2F_condbr().

Definition at line 180 of file wn_attr.h.

Referenced by WN2F_Denormalize_Array_Idx(), and WN2F_OLD_Den_Arr_Idx().

#define WN_Skip_Parm (   arg)    ((arg)!=NULL && WN_opc_operator(arg) == OPR_PARM? WN_kid0(arg) : arg)

Definition at line 217 of file wn_attr.h.

Referenced by WN2F_intrinsic_call(), and WN2F_String_Argument().

#define WN_switch_has_default_case (   wn)    (WN_kid_count(wn) == 3)

Definition at line 171 of file wn_attr.h.

Referenced by WN2C_switch().

#define WN_switch_num_cases (   wn)    WN_num_entries(wn)

Definition at line 170 of file wn_attr.h.


Typedef Documentation

Definition at line 159 of file wn_attr.h.


Function Documentation

void Restore_Skips ( const W2CF_SKIP_ITEM skip_info,
INT  number_of_items,
BOOL  clist 
)

Definition at line 701 of file wn_attr.cxx.

References W2CF_SKIP_ITEM::first, W2CF_SKIP_ITEM::last, next, NULL, W2CF_SKIP_ITEM::parent, WN_first(), WN_last(), WN_next(), and WN_prev().

Referenced by W2C_Pop_PU(), and W2F_Pop_PU().

Here is the call graph for this function:

WN* WN_Get_PtrAdd_Intconst ( WN wn0,
WN wn1,
TY_IDX  pointed_ty 
)

Definition at line 293 of file wn_attr.cxx.

References NULL, OPR_INTCONST, OPR_MPY, TY_Is_Pointer(), TY_size(), WN_const_val(), WN_kid0(), WN_kid1(), WN_opc_operator, and WN_Tree_Type().

Referenced by WN2C_address_add(), WN2C_lvalue_wn(), and WN_Tree_Type().

Here is the call graph for this function:

const char* WN_intrinsic_name ( INTRINSIC  intr_opc)

Definition at line 183 of file wn_attr.cxx.

References Unparse_Target::Intrinsic_Name(), and W2X_Unparse_Target.

Referenced by WN2C_call(), WN2C_intrinsic_op(), WN2C_lvalue_st(), WN2F_call(), and WN2F_intrinsic_op().

Here is the call graph for this function:

Definition at line 281 of file wn_attr.cxx.

References MTYPE_CQ, and TY_mtype().

Referenced by WN2C_call(), and WN2F_call().

Here is the call graph for this function:

UINT WN_num_var_refs ( WN wn,
const ST st,
STAB_OFFSET  st_ofst 
)

Definition at line 150 of file wn_attr.cxx.

References NULL, OPR_LDA, OPR_LDID, OPR_STID, WN_ITER_wn, WN_offset(), WN_opc_operator, WN_st(), WN_WALK_TreeIter(), and WN_WALK_TreeNext().

Referenced by WN2F_LoopBound_VarRef().

Here is the call graph for this function:

Definition at line 349 of file wn_attr.cxx.

References Get_Field_Type(), INTR_is_adrtmp, INTR_is_valtmp, KIND_STRUCT, MTYPE_U1, MTYPE_V, NULL, OPC_VCALL, OPC_VINTRINSIC_CALL, OPCODE_is_expression(), OPR_ABS, OPR_ADD, OPR_ALLOCA, OPR_ARRAY, OPR_ARRAY_CONSTRUCT, OPR_ARRAYEXP, OPR_ARRSECTION, OPR_ASHR, OPR_BAND, OPR_BIOR, OPR_BNOR, OPR_BNOT, OPR_BXOR, OPR_CAND, OPR_CEIL, OPR_CIOR, OPR_COMMA, OPR_COMPLEX, OPR_CONST, OPR_CVT, OPR_CVTL, OPR_DIV, OPR_DIVREM, OPR_EQ, OPR_FLOOR, OPR_GE, OPR_GT, OPR_HIGHMPY, OPR_HIGHPART, OPR_ILOAD, OPR_ILOADX, OPR_IMAGPART, OPR_IMPLIED_DO, OPR_INTCONST, OPR_INTRINSIC_OP, OPR_LAND, OPR_LDA, OPR_LDID, OPR_LE, OPR_LIOR, OPR_LNOT, OPR_LOWPART, OPR_LSHR, OPR_LT, OPR_MAX, OPR_MIN, OPR_MLOAD, OPR_MOD, OPR_MPY, OPR_NE, OPR_NEG, OPR_PAREN, OPR_PARM, OPR_RCOMMA, OPR_REALPART, OPR_RECIP, OPR_REM, OPR_RND, OPR_RSQRT, OPR_SELECT, OPR_SHL, OPR_SQRT, OPR_STRCTFLD, OPR_SUB, OPR_TAS, OPR_TRUNC, Pointer_Mtype, Unparse_Target::Reduce_Const_Ptr_Exprs(), Stab_Array_Of(), Stab_Get_Mload_Ty(), Stab_Mtype_To_Ty(), Stab_Pointer_To(), TY_AR_etype(), TY_Is_Array(), TY_Is_Pointer(), TY_Is_Structured(), TY_kind(), TY_pointed(), TY_ptr_as_array(), Ty_Table, W2X_Unparse_Target, WN_const_val(), WN_Cvtl_Ty(), WN_element_size(), WN_field_id(), WN_Get_PtrAdd_Intconst(), WN_get_tld_type(), WN_intrinsic(), WN_intrinsic_return_ty(), WN_kid0(), WN_kid1(), WN_load_addr_ty(), WN_load_offset(), WN_opc_operator, WN_opc_rtype, WN_opcode(), WN_Tree_Type(), and WN_ty().

Referenced by W2F_Translate_Istore_Lhs(), WN2C_address_add(), WN2C_Append_Assignment(), WN2C_array(), WN2C_binaryop(), WN2C_call(), WN2C_compgoto(), WN2C_const(), WN2C_cvtl(), WN2C_Function_Call_Lhs(), WN2C_Function_Return_Value(), WN2C_iload(), WN2C_infix_op(), WN2C_intrinsic_op(), WN2C_is_pointer_diff(), WN2C_istorex(), WN2C_lvalue_wn(), WN2C_memref_lhs(), WN2C_mload(), WN2C_mstore(), WN2C_parm(), WN2C_rcomma(), WN2C_switch(), WN2C_tas(), WN2C_Translate_Arithmetic_Operand(), WN2C_unaryop(), WN2C_Value_Reference(), WN2F_Append_Value_Reference(), WN2F_array(), WN2F_arrsection(), WN2F_binaryop(), WN2F_call(), WN2F_cvtl(), WN2F_do_while(), WN2F_eq(), WN2F_Function_Call_Lhs(), WN2F_Get_Substring_Info(), WN2F_iload(), WN2F_Intr_Funcall(), WN2F_Intr_Infix(), WN2F_intrinsic_call(), WN2F_io_control(), WN2F_ios_definefile(), WN2F_istore(), WN2F_mload(), WN2F_mstore(), WN2F_ne(), WN2F_Prepend_Value_Reference(), WN2F_pstid(), WN2F_pstore(), WN2F_return(), WN2F_stid(), WN2F_String_Argument(), WN2F_unaryop(), WN_Get_PtrAdd_Intconst(), WN_get_tld_type(), WN_intrinsic_return_ty(), and WN_Tree_Type().

Here is the call graph for this function:

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines