
Go to the source code of this file.
Data Types | |
| type | 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/Subroutines | |
| 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) |
| WN * | WN_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) |
| TY_IDX | Get_Inner_Array_Type (TY_IDX idx) |
| #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 188 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 212 of file wn_attr.h.
Referenced by WN2F_call(), WN2F_String_Argument(), and WN_Tree_Type().
Definition at line 171 of file wn_attr.h.
Referenced by WN2C_compgoto(), WN2C_switch(), and WN2F_compgoto().
Definition at line 182 of file wn_attr.h.
Referenced by WN2C_Function_Call_Lhs(), WN2C_iload(), WN2C_iloadx(), WN2C_istore(), WN2C_istorex(), WN2C_ldid(), WN2C_stid(), and WN2F_cvt().
Definition at line 183 of file wn_attr.h.
Referenced by WN2C_binaryop(), WN2C_unaryop(), WN2C_unsupported(), WN2F_ashr(), WN2F_binaryop(), WN2F_ceil(), WN2F_floor(), WN2F_iloadx(), WN2F_istorex(), WN2F_unaryop(), and WN2F_unsupported().
Definition at line 181 of file wn_attr.h.
Referenced by Accumulate_Expr_PUinfo(), Accumulate_Stmt_PUinfo(), Append_CallSite(), Append_ReturnSite(), Does_Stmt_Store_From_Preg(), Does_Stmt_Store_Into_Preg(), Remove_Skips(), Var_Loaded_From(), Var_Stored_In(), W2C_Push_PU(), W2F_Push_PU(), WN2F_array(), WN2F_ashr(), WN2F_bnor(), WN2F_ceil(), WN2F_complex(), WN2F_const(), WN2F_cvt(), WN2F_cvtl(), WN2F_Denormalize_Array_Idx(), WN2F_eq(), WN2F_Expr_Plus_Literal(), WN2F_floor(), WN2F_Get_Substring_Info(), WN2F_iload(), WN2F_imagpart(), WN2F_intconst(), WN2F_intrinsic_op(), WN2F_io(), WN2F_io_control(), WN2F_io_list(), WN2F_istore(), WN2F_lda(), WN2F_ldid(), WN2F_lshr(), WN2F_madd(), WN2F_mload(), WN2F_mstore(), WN2F_msub(), WN2F_ne(), WN2F_nmadd(), WN2F_nmsub(), WN2F_Offset_Memref(), WN2F_paren(), WN2F_parm(), WN2F_realpart(), WN2F_recip(), WN2F_rsqrt(), WN2F_stid(), WN2F_String_Argument(), WN2F_Substring(), WN2F_tas(), WN2F_translate(), WN_Get_PtrAdd_Intconst(), WN_in_ioitem(), WN_num_var_refs(), and WN_Tree_Type().
Definition at line 180 of file wn_attr.h.
Referenced by WN2C_bnor(), WN2C_complex(), WN2C_cvt(), WN2C_infix_op(), WN2C_intconst(), WN2C_intrinsic_op(), WN2C_madd(), WN2C_msub(), WN2C_nmadd(), WN2C_nmsub(), WN2F_bnor(), WN2F_complex(), WN2F_cvt(), WN2F_Expr_Plus_Literal(), WN2F_Get_Next_LoopBoundOp(), WN2F_imagpart(), WN2F_intconst(), WN2F_lshr(), WN2F_madd(), WN2F_msub(), WN2F_nmadd(), WN2F_nmsub(), WN2F_realpart(), WN2F_recip(), WN2F_rsqrt(), WN_Cvtl_Ty(), and WN_Tree_Type().
Definition at line 222 of file wn_attr.h.
Referenced by WN2F_intrinsic_call(), and WN2F_String_Argument().
| typedef mINT64 STAB_OFFSET |
Definition at line 123 of file wn_attr.cxx.
References FLD_get_to_field(), FLD_type, Is_True, TY_Is_Structured(), and UINT.
Referenced by WN2C_iload(), WN2C_istore(), WN2C_lvalue_wn(), WN2C_mload(), WN2C_mstore(), WN2C_stid(), and WN_Tree_Type().
Definition at line 819 of file wn_attr.cxx.
References Is_True, KIND_ARRAY, TY_etype, and TY_kind.
Referenced by get_to_field_with_name(), WN2C_array(), WN2C_based_lvalue(), WN2C_lvalue_wn(), and WN_Tree_Type().
| void Remove_Skips | ( | WN * | ablock, | |
| W2CF_SKIP_ITEM * | skip_info, | |||
| INT * | next_info_idx, | |||
| INT | max_info_idx, | |||
| BOOL | clist | |||
| ) |
Definition at line 706 of file wn_attr.cxx.
References W2CF_SKIP_ITEM::first, Is_True, iter, W2CF_SKIP_ITEM::last, NULL, OPC_BLOCK, OPR_PRAGMA, W2CF_SKIP_ITEM::parent, skip, WN_first(), WN_ITER_wn, WN_last(), WN_next(), WN_opc_operator, WN_opcode(), WN_pragma(), WN_PRAGMA_CLIST_SKIP_BEGIN, WN_PRAGMA_CLIST_SKIP_END, WN_PRAGMA_FLIST_SKIP_BEGIN, WN_PRAGMA_FLIST_SKIP_END, WN_prev(), WN_WALK_StmtIter(), and WN_WALK_StmtNext().
Referenced by W2C_Push_PU(), and W2F_Push_PU().
| void Restore_Skips | ( | const W2CF_SKIP_ITEM * | skip_info, | |
| INT | number_of_items, | |||
| BOOL | clist | |||
| ) |
Definition at line 780 of file wn_attr.cxx.
References W2CF_SKIP_ITEM::first, W2CF_SKIP_ITEM::last, next, NULL, W2CF_SKIP_ITEM::parent, prev, WN_first(), WN_last(), WN_next(), and WN_prev().
Referenced by W2C_Pop_PU(), and W2F_Pop_PU().
Definition at line 341 of file wn_attr.cxx.
References KIND_ARRAY, NULL, OPR_INTCONST, OPR_MPY, TY_Is_Pointer(), TY_kind, 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().
| const char* WN_intrinsic_name | ( | INTRINSIC | intr_opc | ) |
Definition at line 171 of file wn_attr.cxx.
References ASSERT_WARN, Concat2_Strings(), Concat3_Strings(), DIAG_A_STRING, FALSE, INTRINSIC_FIRST, INTRINSIC_name, INTRN_high_level_name, INTRN_rt_name(), Is_True, NULL, and Number_as_String().
Referenced by WN2C_call(), WN2C_intrinsic_op(), WN2F_call(), and WN2F_intrinsic_op().
Definition at line 329 of file wn_attr.cxx.
References MTYPE_CQ, and TY_mtype.
Referenced by WN2C_call(), and WN2F_call().
Definition at line 205 of file wn_attr.cxx.
References FALSE, INTRINSIC_FIRST, INTRN_return_kind(), IRETURN_C4, IRETURN_C8, IRETURN_CQ, IRETURN_DA1, IRETURN_F4, IRETURN_F8, IRETURN_FQ, IRETURN_I1, IRETURN_I2, IRETURN_I4, IRETURN_I8, IRETURN_PC, IRETURN_PPI4, IRETURN_PPU2, IRETURN_PU1, IRETURN_PV, IRETURN_SZT, IRETURN_U1, IRETURN_U2, IRETURN_U4, IRETURN_U8, IRETURN_UNKNOWN, IRETURN_V, Is_True, MTYPE_C4, MTYPE_C8, MTYPE_CQ, MTYPE_F4, MTYPE_F8, MTYPE_FQ, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, MTYPE_U1, MTYPE_U2, MTYPE_U4, MTYPE_U8, MTYPE_V, OPCODE_rtype(), Stab_Mtype_To_Ty(), Stab_Pointer_To(), WN_kid0(), and WN_Tree_Type().
Referenced by Append_CallSite(), WN2C_call(), WN2C_intrinsic_op(), WN2F_call(), and WN_Tree_Type().
| UINT WN_num_var_refs | ( | WN * | wn, | |
| const ST * | st, | |||
| STAB_OFFSET | st_ofst | |||
| ) |
Definition at line 138 of file wn_attr.cxx.
References NULL, OPR_LDA, OPR_LDID, OPR_STID, UINT, WN_ITER_wn, WN_offset(), WN_opc_operator, WN_st(), WN_WALK_TreeIter(), and WN_WALK_TreeNext().
Referenced by WN2F_LoopBound_VarRef().
Definition at line 398 of file wn_attr.cxx.
References FALSE, FmtAssert, Get_Field_Type(), Get_Inner_Array_Type(), INTR_is_adrtmp, INTR_is_valtmp, KIND_ARRAY, KIND_STRUCT, Make_Pointer_Type(), MTYPE_U1, MTYPE_V, NULL, OPC_VCALL, OPC_VINTRINSIC_CALL, OPCODE_is_expression(), OPERATOR_name(), OPR_ABS, OPR_ADD, OPR_ALLOCA, OPR_ARRAY, OPR_ASHR, OPR_BAND, OPR_BIOR, OPR_BNOR, OPR_BNOT, OPR_BXOR, OPR_CAND, OPR_CEIL, OPR_CIOR, OPR_COMMA, OPR_COMPLEX, OPR_COMPOSE_BITS, OPR_CONST, OPR_CVT, OPR_CVTL, OPR_DIV, OPR_DIVREM, OPR_EQ, OPR_EXTRACT_BITS, OPR_FLOOR, OPR_GE, OPR_GT, OPR_HIGHMPY, OPR_HIGHPART, OPR_ILOAD, OPR_ILOADX, OPR_IMAGPART, OPR_INTCONST, OPR_INTRINSIC_OP, OPR_LAND, OPR_LDA, OPR_LDA_LABEL, 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_SUB, OPR_TAS, OPR_TRUNC, Pointer_Mtype, Stab_Array_Of(), Stab_Get_Mload_Ty(), Stab_Mtype_To_Ty(), Stab_Pointer_To(), TY_AR_etype, TY_etype, TY_Is_Array(), TY_Is_Pointer(), TY_Is_Structured(), TY_kind, TY_pointed, TY_ptr_as_array, Ty_Table, WN_const_val(), WN_Cvtl_Ty(), WN_element_size(), WN_field_id(), WN_Get_PtrAdd_Intconst(), WN_intrinsic(), WN_intrinsic_return_ty(), WN_kid0(), WN_kid1(), WN_load_offset(), WN_opc_operator, WN_opc_rtype, WN_opcode(), WN_operator(), WN_Tree_Type(), and WN_ty().
Referenced by W2F_Translate_Istore_Lhs(), WN2C_address_add(), WN2C_Append_Assignment(), WN2C_array(), WN2C_binaryop(), WN2C_compgoto(), WN2C_const(), WN2C_cvt(), WN2C_cvtl(), WN2C_extract_bits(), WN2C_Function_Call_Lhs(), WN2C_Function_Return_Value(), WN2C_iload(), WN2C_infix_op(), WN2C_is_pointer_diff(), WN2C_istorex(), WN2C_lda(), WN2C_ldid(), 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_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_return(), WN2F_stid(), WN2F_String_Argument(), WN2F_unaryop(), WN_Get_PtrAdd_Intconst(), WN_intrinsic_return_ty(), and WN_Tree_Type().
1.5.6