#include <sys/types.h>#include <elf.h>#include "defs.h"#include "tracing.h"#include "mempool.h"#include "opt_base.h"#include "topcode.h"#include "wn.h"#include "wn_util.h"#include "pu_info.h"#include "stab.h"#include "w2op.h"#include "stblock.h"#include "region_util.h"#include "opt_wn.h"#include "ir_reader.h"#include "opt_sym.h"#include "opt_htable.h"#include "opt_mu_chi.h"#include "dep_graph.h"#include "pf_cg.h"#include "opt_alias_interface.h"#include "opt_points_to.h"#include "opt_alias_rule.h"#include "config.h"#include "config_opt.h"#include "opt_cvtl_rule.h"#include "opt_main.h"

Go to the source code of this file.
Definition at line 1167 of file opt_wn.cxx.
References Actual_data_size(), CODEREP::Aux_id(), OPT_STAB::Aux_stab_entry(), CODEREP::Bit_size(), AUX_STAB_ENTRY::Bit_size(), CK_CONST, CK_IVAR, CK_OP, CK_VAR, CLASS_PREG, CODEREP::Const_val(), CODEREP::Dsctyp(), CODEREP::Dtyp(), CODEREP::I_bit_size(), INT, INT64, CODEREP::Is_sign_extd(), AUX_STAB_ENTRY::Is_sign_extd(), AUX_STAB_ENTRY::Is_zero_extd(), CODEREP::Kind(), MIN, MTYPE_CLASS_INTEGER, MTYPE_is_signed, MTYPE_is_unsigned, MTYPE_size_min, MTYPE_type_class, CODEREP::Offset(), CODEREP::Op(), OPC_I4I8CVT, OPC_I4U8CVT, OPC_I8U4CVT, OPC_U4I8CVT, OPC_U4U8CVT, OPC_U8U4CVT, OPERATOR_is_scalar_iload(), CODEREP::Opnd(), CODEREP::Opr(), OPR_ASHR, OPR_BAND, OPR_CVT, OPR_CVTL, OPR_ILDBITS, OPR_LSHR, SIGN_0_EXTD, SIGN_1_EXTD, AUX_STAB_ENTRY::St(), ST_class, UINT, val, and AUX_STAB_ENTRY::Value_size().
| WN* Create_identity_assignment | ( | AUX_STAB_ENTRY * | sym, | |
| AUX_ID | aux_id, | |||
| TY_IDX | ty | |||
| ) |
Definition at line 1387 of file opt_wn.cxx.
References AUX_STAB_ENTRY::Bit_ofst(), AUX_STAB_ENTRY::Bit_size(), AUX_STAB_ENTRY::Byte_size(), bytes, copy, AUX_STAB_ENTRY::Field_id(), INT, Ldid_from_mtype_class_and_size(), AUX_STAB_ENTRY::Mclass(), AUX_STAB_ENTRY::Mtype(), MTYPE_BS, MTYPE_is_unsigned, MTYPE_M, Mtype_TransferSign(), MTYPE_U4, MTYPE_V, OPCODE_desc(), OPCODE_make_op(), OPCODE_rtype(), OPR_LDBITS, OPR_LDID, OPR_STBITS, OPR_STID, AUX_STAB_ENTRY::St(), AUX_STAB_ENTRY::St_ofst(), Stid_from_mtype_class_and_size(), TYPE_ID, WN_CreateLdid, WN_CreateStid, WN_field_id(), WN_load_offset(), WN_offset(), WN_set_aux(), WN_set_bit_offset_size(), WN_set_desc(), WN_set_field_id(), WN_set_operator(), WN_set_ty(), and WN_ty().
Referenced by SSA::Insert_identity_assignment_4_loopexit().
Definition at line 1533 of file opt_wn.cxx.
References Current_PU_Info, NULL, PU_Info_child, PU_Info_next, PU_Info_proc_sym, PU_Info_state, PU_Info_tree_ptr, ST_st_idx, Subsect_InMem, WN_func_varrefs, and WT_TREE.
Referenced by OPT_STAB::Add_nested_call_mu_chi(), and ALIAS_CLASSIFICATION::Handle_call_of_nested_PU().
| READ_WRITE Get_MP_modref | ( | const WN * | pragma_list, | |
| const POINTS_TO * | pt, | |||
| const ALIAS_RULE * | rule | |||
| ) |
Definition at line 1467 of file opt_wn.cxx.
References ACCESSED_ILOAD, ACCESSED_ISTORE, ACCESSED_LOAD, ACCESSED_STORE, Alias_Pointer_Parms, ALIAS_RULE::Aliased_Memop(), POINTS_TO::Base(), base, POINTS_TO::Base_is_fixed(), BASE_IS_FIXED, BASE_IS_UNKNOWN, POINTS_TO::Const(), Expand_ST_into_base_and_ofst(), EXPR_IS_ADDR, POINTS_TO::Init(), Is_True, mINT64, NO_READ_NO_WRITE, NULL, OFST_IS_FIXED, READ, READ_AND_WRITE, SCLASS_FORMAL, POINTS_TO::Set_base(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_based_sym(), POINTS_TO::Set_bit_ofst_size(), POINTS_TO::Set_byte_ofst(), POINTS_TO::Set_byte_size(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_F_param(), POINTS_TO::Set_global(), POINTS_TO::Set_named(), POINTS_TO::Set_ofst_kind(), ST_sclass, ST_type, TY_size, Warn_todo(), wn, WN_first(), WN_next(), WN_pragma(), WN_PRAGMA_ACCESSED_ID, WN_pragma_arg2(), and WN_st().
Referenced by OPT_STAB::Add_nested_call_mu_chi().
Definition at line 520 of file opt_wn.cxx.
References INT32, MTYPE_CLASS_INTEGER, MTYPE_CLASS_UNSIGNED, MTYPE_CLASS_UNSIGNED_INTEGER, and MTYPE_type_class.
Referenced by CODEMAP::Canon_cvt(), OPT_STAB::Convert_ST_to_AUX(), CR_match_kids(), OPT_STAB::Create_preg(), STMTREP::Enter_lhs(), OPT_STAB::Enter_symbol(), CODEMAP::Iload_folded(), EXP_WORKLST::Is_the_same_as(), CODEREP::Match(), and CODEREP::Same_bitpos().
| TY_IDX Identity_assignment_type | ( | AUX_STAB_ENTRY * | sym, | |
| OPT_PHASE | phase | |||
| ) |
Definition at line 1329 of file opt_wn.cxx.
References AUX_STAB_ENTRY::Bit_size(), AUX_STAB_ENTRY::Byte_size(), AUX_STAB_ENTRY::Field_id(), Is_Simple_Type(), Is_Structure_Type(), KIND_ARRAY, MAINOPT_PHASE, AUX_STAB_ENTRY::Mclass(), AUX_STAB_ENTRY::Mtype(), mtype, Mtype_from_mtype_class_and_size(), MTYPE_is_unsigned, MTYPE_is_vector, MTYPE_M, MTYPE_To_TY, Mtype_TransferSign(), MTYPE_U4, MTYPE_UNKNOWN, AUX_STAB_ENTRY::St(), ST_type, TY_align, TY_AR_etype, TY_IDX_ZERO, TY_kind, and TY_size.
Referenced by SSA::Insert_identity_assignment_4_loopexit().
Definition at line 1082 of file opt_wn.cxx.
References FALSE, Lod_TY_is_volatile(), TRUE, TY_IDX_ZERO, TY_is_volatile, and TY_pointed.
Referenced by CODEREP::Is_ivar_volatile(), DSE::Required_istore(), DSE::Required_load(), and SSA::Value_number().
Definition at line 1588 of file opt_wn.cxx.
References FALSE, Is_True, MTYPE_I4, MTYPE_is_integral, MTYPE_is_signed, MTYPE_size_min, and TRUE.
Referenced by Sign_extended().
Definition at line 1634 of file opt_wn.cxx.
References FALSE, Is_True, MTYPE_is_integral, MTYPE_is_signed, MTYPE_size_min, and TRUE.
Referenced by Sign_extended().
| BOOL Is_region_with_pragma | ( | WN * | wn, | |
| WN_PRAGMA_ID | pragma_id | |||
| ) |
Definition at line 1572 of file opt_wn.cxx.
References FALSE, FOR_ALL_ELEM, Init, OPR_PRAGMA, TRUE, WN_first(), WN_last(), WN_operator(), WN_pragma(), and WN_region_pragmas.
Referenced by CFG::Add_one_region(), OPT_STAB::Convert_ST_to_AUX(), NORMALIZE_LOOP::Is_outermost_loop_in_parallel_region(), and NORMALIZE_LOOP::Is_pdo_loop().
Definition at line 540 of file opt_wn.cxx.
References FALSE, FmtAssert, MTYPE_B, MTYPE_C10, MTYPE_C4, MTYPE_C8, MTYPE_CQ, MTYPE_F10, MTYPE_F16, MTYPE_F4, MTYPE_F8, MTYPE_FQ, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, MTYPE_M, Mtype_Name(), MTYPE_STRING, MTYPE_U1, MTYPE_U2, MTYPE_U4, MTYPE_U8, MTYPE_UNKNOWN, MTYPE_V, OPC_C10C10LDID, OPC_C4C4LDID, OPC_C8C8LDID, OPC_CQCQLDID, OPC_F10F10LDID, OPC_F4F4LDID, OPC_F8F8LDID, OPC_FQFQLDID, OPC_I4I1LDID, OPC_I4I2LDID, OPC_I4I4LDID, OPC_I8I8LDID, OPC_U4U1LDID, OPC_U4U2LDID, OPC_U4U4LDID, OPC_U8U8LDID, and OPCODE_UNKNOWN.
Referenced by ML_WHIRL_EMITTER::Build_loop_info(), OPT_REVISE_SSA::Form_extract_compose(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), OPT_REVISE_SSA::Update_chi_list_for_old_var(), and OPT_REVISE_SSA::Update_phis().
Definition at line 702 of file opt_wn.cxx.
References Delay_U64_Lowering, FALSE, FmtAssert, MTYPE_CLASS_COMPLEX, MTYPE_CLASS_FLOAT, MTYPE_CLASS_INTEGER, MTYPE_CLASS_UNSIGNED, MTYPE_CLASS_VECTOR, Only_Unsigned_64_Bit_Ops, OPC_C10C10LDID, OPC_C4C4LDID, OPC_C8C8LDID, OPC_CQCQLDID, OPC_F10F10LDID, OPC_F4F4LDID, OPC_F8F8LDID, OPC_FQFQLDID, OPC_I4I1LDID, OPC_I4I2LDID, OPC_I4I4LDID, OPC_I8I8LDID, OPC_U4U1LDID, OPC_U4U2LDID, OPC_U4U4LDID, OPC_U8U8LDID, and OPCODE_UNKNOWN.
Referenced by Create_identity_assignment().
Definition at line 1061 of file opt_wn.cxx.
References FALSE, FLD_last_field(), FLD_type, KIND_STRUCT, Lod_TY_is_volatile(), Make_fld_iter(), TRUE, TY_fld, TY_IDX_ZERO, TY_is_volatile, and TY_kind.
Referenced by CODEMAP::Add_expr(), Ilod_TY_is_volatile(), Lod_TY_is_volatile(), DSE::Required_load(), and DSE::Required_stid().
Definition at line 224 of file opt_wn.cxx.
References FALSE, Is_True, MTYPE_BS, MTYPE_CLASS_UNSIGNED_INTEGER, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, MTYPE_is_vector, MTYPE_signed, MTYPE_size_best, MTYPE_type_class, MTYPE_U1, MTYPE_U2, MTYPE_U4, MTYPE_U8, and MTYPE_V.
Referenced by STMTREP::Enter_lhs(), and RVI_NODE::Mtype().
Definition at line 603 of file opt_wn.cxx.
References Delay_U64_Lowering, FALSE, FmtAssert, MTYPE_C10, MTYPE_C4, MTYPE_C8, MTYPE_CLASS_COMPLEX, MTYPE_CLASS_FLOAT, MTYPE_CLASS_INTEGER, MTYPE_CLASS_UNSIGNED, MTYPE_CLASS_VECTOR, MTYPE_CQ, MTYPE_F10, MTYPE_F4, MTYPE_F8, MTYPE_FQ, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, MTYPE_U1, MTYPE_U2, MTYPE_U4, MTYPE_U8, MTYPE_UNKNOWN, and Only_Unsigned_64_Bit_Ops.
Referenced by SSA::Du2cr(), OPT_REVISE_SSA::Form_extract(), OPT_REVISE_SSA::Form_extract_compose(), SSA::Get_zero_version_CR(), Identity_assignment_type(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), LFTR::Replace_comparison(), OPT_REVISE_SSA::Update_chi_list_for_old_var(), and OPT_REVISE_SSA::Update_phis().
Definition at line 1548 of file opt_wn.cxx.
References FALSE, MAINOPT_PHASE, MTYPE_is_float, MTYPE_IS_INTEGER, OPCODE_desc(), OPCODE_operator(), OPCODE_rtype(), OPR_DIV, OPR_EQ, OPR_GE, OPR_GT, OPR_LE, OPR_LT, OPR_NE, OPR_REM, TRUE, WOPT_Enable_Copy_Prop_LNO_Ops, and WOPT_Enable_CSE_FP_comparison.
Referenced by COPYPROP::Propagatable(), CODEREP::Propagatable_for_ivr(), and COPYPROP::Propagatable_thru_phis().
Definition at line 433 of file opt_wn.cxx.
References OPCODE_operator(), OPERATOR_has_aux(), OPR_IDNAME, OPR_LDA, OPR_LDID, and OPR_STID.
Referenced by cwh_io_analyse_expr(), STMTREP::Enter_lhs(), Gen_stmt_wn(), and SSA::Rename_rhs().
Definition at line 299 of file opt_wn.cxx.
References OPCODE_operator(), and OPERATOR_has_chi().
Referenced by WN_has_chi().
Definition at line 1703 of file opt_wn.cxx.
References OPCODE_operator(), and OPERATOR_is_fake().
Referenced by VALNUM_FRE::_get_occur_cr(), VN::_valnum_op(), VN::_valnum_stmt(), CODEMAP::Add_expr(), ETABLE::Bottom_up_stmt(), STMTREP::Contains_volatile_ref(), ETABLE::Find_new_1st_order_exprs(), ETABLE::LPRE_bottom_up_stmt(), ETABLE::No_replace(), ETABLE::Replace_occurs(), and traverseSR().
Definition at line 1724 of file opt_wn.cxx.
References OPCODE_operator(), and OPERATOR_is_volatile().
Referenced by VN::_valnum_vn_expr(), ETABLE::Append_real_occurrence(), ETABLE::Bottom_up_cr(), CODEMAP::Hash_Op(), ETABLE::Insert_real_occurrence(), CODEREP::Propagatable_for_ivr(), and ETABLE::Recursive_rehash_and_replace().
Definition at line 426 of file opt_wn.cxx.
References OPERATOR_is_scalar_load(), OPERATOR_is_scalar_store(), and OPR_LDA.
Referenced by ALIAS_CLASSIFICATION::Classify_deref_of_expr(), OPT_STAB::Convert_IO_statement(), OPT_STAB::Convert_ST_to_AUX(), Copy_addr_expr(), OPT_STAB::Count_syms(), Get_symbol_info_for_cvt_io(), OPCODE_has_aux(), VER_STAB_ENTRY::Print_use(), OPT_STAB::Remap_aux_synonym(), and WN_has_aux().
Definition at line 274 of file opt_wn.cxx.
References FALSE, OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_CALL, OPR_DEALLOCA, OPR_FORWARD_BARRIER, OPR_ICALL, OPR_INTRINSIC_CALL, OPR_IO, OPR_ISTBITS, OPR_ISTORE, OPR_ISTOREX, OPR_MSTORE, OPR_OPT_CHI, OPR_REGION, OPR_STBITS, OPR_STID, and TRUE.
Referenced by STMTREP::Has_chi(), and OPCODE_has_chi().
Definition at line 356 of file opt_wn.cxx.
References FALSE, OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_CALL, OPR_FORWARD_BARRIER, OPR_ICALL, OPR_ILDBITS, OPR_ILOAD, OPR_ILOADX, OPR_INTRINSIC_CALL, OPR_IO, OPR_MLOAD, OPR_PARM, OPR_REGION, OPR_REGION_EXIT, OPR_RETURN, OPR_RETURN_VAL, and TRUE.
Referenced by STMTREP::Has_mu(), and OPCODE_has_mu().
Definition at line 1694 of file opt_wn.cxx.
References OPERATOR_is_call(), OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_DEALLOCA, and OPR_FORWARD_BARRIER.
Referenced by OPCODE_is_fake().
Definition at line 1708 of file opt_wn.cxx.
References OPERATOR_is_call(), OPR_ALLOCA, OPR_ASM_INPUT, OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_DEALLOCA, and OPR_FORWARD_BARRIER.
Referenced by VALNUM_FRE::_contains_undef_val(), BB_NODE::Clonable(), VALNUM_FRE::collect_cr_occurrences(), Count_occurs(), CODEREP::Exp_has_e_num(), OPCODE_is_volatile(), COPYPROP::Propagatable(), COPYPROP::Propagatable_thru_phis(), and set_volatile_mapCR().
Definition at line 908 of file opt_wn.cxx.
References Current_Dep_Graph, and NULL.
Referenced by ML_WHIRL_EMITTER::Emit().
| void Print_pf_pointer | ( | FILE * | fp, | |
| PF_POINTER * | p | |||
| ) |
Definition at line 1006 of file opt_wn.cxx.
References fprintf(), PF_PTR_lrnum_1L, PF_PTR_lrnum_2L, PF_PTR_wn_pref_1L, and PF_PTR_wn_pref_2L.
Definition at line 410 of file opt_wn.cxx.
References _wn_flag_map, and WN_MAP32_Set.
Referenced by NORMALIZE_LOOP::Normalize_do_loop(), WN_set_aux(), and WN_set_ver().
Definition at line 801 of file opt_wn.cxx.
References Delay_U64_Lowering, FALSE, FmtAssert, MTYPE_CLASS_COMPLEX, MTYPE_CLASS_FLOAT, MTYPE_CLASS_INTEGER, MTYPE_CLASS_UNSIGNED, MTYPE_CLASS_VECTOR, Only_Unsigned_64_Bit_Ops, OPC_C10STID, OPC_C4STID, OPC_C8STID, OPC_CQSTID, OPC_F10STID, OPC_F4STID, OPC_F8STID, OPC_FQSTID, OPC_I1STID, OPC_I2STID, OPC_I4STID, OPC_I8STID, OPC_U1STID, OPC_U2STID, OPC_U4STID, OPC_U8STID, and OPCODE_UNKNOWN.
Referenced by Create_identity_assignment().
| MTYPE Type_for_saved_load | ( | BOOL | hi_ever_sign_extended, | |
| BOOL | lo_ever_sign_extended, | |||
| MTYPE | lod_type | |||
| ) |
Definition at line 1659 of file opt_wn.cxx.
References FALSE, Is_True, MTYPE_I4, MTYPE_I8, MTYPE_size_min, MTYPE_U4, and MTYPE_U8.
Definition at line 937 of file opt_wn.cxx.
References BOOL, CK_IVAR, Current_Dep_Graph, Is_True, CODEREP::Ivar_occ(), CODEREP::Kind(), OCC_TAB_ENTRY::Lno_dep_vertex_load(), OCC_TAB_ENTRY::Lno_dep_vertex_store(), NULL, ok(), OPCODE_is_load(), OPCODE_is_store(), OCC_TAB_ENTRY::Pf_pointer(), PF_PTR_wn_pref_1L, PF_PTR_wn_pref_2L, SET_VISITED_EM, VISITED_EM, WN_MAP_PREFETCH, WN_MAP_Set, and WN_opcode().
Referenced by Gen_exp_wn(), and Gen_stmt_wn().
Definition at line 454 of file opt_wn.cxx.
Referenced by CODEMAP::Add_expr(), OPT_STAB::Allocate_mu_chi_and_virtual_var(), POINTS_TO::Analyze_Lda_Base(), ALIAS_CLASSIFICATION::Classify_deref_of_expr(), SSA::Collect_defs_bb(), CFG::Conv_to_select(), OPT_STAB::Convert_EH_pragmas(), OPT_STAB::Convert_ST_to_AUX(), Copy_addr_expr(), OPT_TAIL::Create_top_label(), ALIAS_CLASSIFICATION::Finalize_ac_map_wn(), Gen_stmt_wn(), OPT_STAB::Generate_asm_mu_chi(), OPT_STAB::Generate_mu_and_chi_list(), OPT_STAB::Has_read_only_parm(), OPT_STAB::Identify_vsym(), CFG::Is_simple_expr(), CFG::Lower_if_stmt(), OPT_STAB::Remap_aux_synonym(), SSA::Rename(), SSA::Rename_rhs(), Same_addr_expr(), Same_store_target(), CFG::Screen_cand(), ALIAS_CLASSIFICATION::ST_of_wn(), OPT_STAB::St_ptr(), OPT_STAB::Transfer_alias_class_to_occ_and_aux(), and ALIAS_CLASSIFICATION::WN_base_id().
Definition at line 219 of file opt_wn.cxx.
References WN_COPY_Tree().
Referenced by CFG::Lower_do_loop(), and CFG::Lower_while_do().
Definition at line 490 of file opt_wn.cxx.
References wn_map_tab::_is_used, wn_map_tab::_kind, Current_Map_Tab, FALSE, i, INT, Is_True, OPCODE_is_leaf(), WN_copy_stmap(), WN_kid(), WN_kid_count(), WN_MAP32_Get, WN_MAP32_Set, WN_MAP64_Get, WN_MAP64_Set, WN_MAP_Get, WN_MAP_KIND_INT32, WN_MAP_KIND_INT64, WN_MAP_KIND_VOIDP, WN_MAP_MAX, WN_MAP_Set, and WN_opcode().
Referenced by CFG::Lower_do_loop(), CFG::Lower_while_do(), and WN_copy_stmap().
Definition at line 928 of file opt_wn.cxx.
References Current_Dep_Graph, and NULL.
Referenced by OPT_STAB::Enter_occ_tab().
Definition at line 978 of file opt_wn.cxx.
References BOOL, Current_Dep_Graph, Is_True, NULL, ok(), OPCODE_is_load(), OPCODE_is_store(), and WN_opcode().
Referenced by RVI_NODE::Create_load(), RVI_NODE::Create_store(), RVI::Insert_load(), and RVI::Insert_store().
Definition at line 396 of file opt_wn.cxx.
References _wn_flag_map, and WN_MAP_Delete.
Referenced by COMP_UNIT::~COMP_UNIT().
Definition at line 403 of file opt_wn.cxx.
References _wn_flag_map, and WN_MAP32_Get.
Referenced by CFG::Add_one_do_loop_stmt(), NORMALIZE_LOOP::Normalize_do_loop(), WN_aux(), WN_set_aux(), WN_set_ver(), WN_sym(), and WN_ver().
Definition at line 1092 of file opt_wn.cxx.
References i1, i2, i4, i8, INT64, Is_True, lo, mINT16, mINT32, mINT64, mINT8, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, MTYPE_U1, MTYPE_U2, MTYPE_U4, MTYPE_U8, mUINT16, mUINT32, mUINT64, OPR_INTCONST, s1, s2, s3, s4, val, WN_const_val(), WN_operator(), and WN_rtype().
Referenced by CODEMAP::Add_expr().
Definition at line 917 of file opt_wn.cxx.
References Current_Dep_Graph, and NULL.
Referenced by OPT_STAB::Enter_occ_tab().
| PF_POINTER* WN_get_pf_pointer | ( | WN * | wn | ) |
Definition at line 999 of file opt_wn.cxx.
References WN_MAP_Get, and WN_MAP_PREFETCH.
Referenced by OPT_STAB::Enter_occ_tab().
Definition at line 440 of file opt_wn.cxx.
References OPERATOR_has_aux(), and WN_operator().
Referenced by OPT_STAB::Convert_EH_pragmas().
| BOOL WN_has_chi | ( | const WN * | wn, | |
| const REGION_LEVEL | region_level | |||
| ) |
Definition at line 255 of file opt_wn.cxx.
References FALSE, Is_True, NULL, opc, OPC_REGION, OPCODE_has_chi(), REGION_get_rid(), RID_TYPE_eh, RID_TYPE_mp, RL_IPA_PREOPT, RL_LAST, RL_LNO_PREOPT, RL_PREOPT, RL_UNKNOWN, TRUE, and WN_opcode().
Referenced by SSA::Collect_defs_bb(), EMITTER::Compute_use_def_stmt(), DSE::Dead_store_elim(), SSA::Find_zero_versions(), Gen_stmt_wn(), RVI::Get_wn_local_attributes(), DSE::Is_deleted_statement(), DSE::Propagate_vsym_bb(), OPT_STAB::Remap_ver_synonym(), SSA::Rename(), DSE::Update_MU_list_for_call(), and SSA::Value_number().
| BOOL WN_has_mu | ( | const WN * | wn, | |
| const REGION_LEVEL | region_level | |||
| ) |
Definition at line 306 of file opt_wn.cxx.
References FALSE, Is_True, NULL, opc, OPCODE_operator(), OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_CALL, OPR_FORWARD_BARRIER, OPR_GOTO_OUTER_BLOCK, OPR_ICALL, OPR_ILDBITS, OPR_ILOAD, OPR_ILOADX, OPR_INTRINSIC_CALL, OPR_IO, OPR_MLOAD, OPR_PARM, OPR_REGION, OPR_REGION_EXIT, OPR_RETURN, OPR_RETURN_VAL, REGION_get_rid(), RID_TYPE_eh, RID_TYPE_mp, RL_IPA_PREOPT, RL_LAST, RL_LNO_PREOPT, RL_PREOPT, RL_UNKNOWN, TRUE, WN_opcode(), and WN_Parm_By_Reference.
Referenced by EMITTER::Compute_use_def_stmt(), DSE::Dead_store_elim(), SSA::Find_zero_versions(), Gen_stmt_wn(), RVI::Get_wn_local_attributes(), RVI::Global_vars(), DSE::Mem_WN_equiv(), DSE::Propagate_vsym_bb(), DSE::Propagate_vsym_wn(), OPT_STAB::Remap_ver_synonym(), SSA::Rename(), SSA::Rename_rhs(), DSE::Set_Required_WN(), and SSA::Value_number().
Definition at line 418 of file opt_wn.cxx.
References OPERATOR_is_scalar_load(), OPERATOR_is_scalar_store(), and WN_operator().
Referenced by DSE::Propagate_vsym_wn(), OPT_STAB::Remap_ver_synonym(), and DSE::Set_Required_WN().
Definition at line 391 of file opt_wn.cxx.
References _wn_flag_map, and WN_MAP32_Create.
Referenced by COMP_UNIT::COMP_UNIT().
Definition at line 472 of file opt_wn.cxx.
References Set_wn_flags(), WN_FLAG_ST_TYPE, Wn_flags(), WN_st_idx(), and WN_ST_IS_AUX.
Referenced by CFG::Conv_to_select(), OPT_STAB::Convert_ST_to_AUX(), Copy_addr_expr(), Create_identity_assignment(), OPT_TAIL::Fixup_exit(), CFG::Lower_if_stmt(), and OPT_STAB::Remap_aux_synonym().
Definition at line 482 of file opt_wn.cxx.
References Set_wn_flags(), WN_FLAG_ST_TYPE, Wn_flags(), WN_st_idx(), and WN_ST_IS_VER.
Referenced by DSE::Propagate_vsym_wn(), OPT_STAB::Remap_ver_synonym(), SSA::Rename(), and SSA::Rename_rhs().
Definition at line 446 of file opt_wn.cxx.
References Is_True, WN_FLAG_ST_TYPE, Wn_flags(), WN_st(), and WN_ST_IS_SYM.
Referenced by CODEMAP::Add_expr(), IVR::Choose_primary_IV(), OPT_STAB::Generate_mu_and_chi_list(), and OPT_STAB::Var_is_loop_index().
Definition at line 462 of file opt_wn.cxx.
References Is_True, WN_FLAG_ST_TYPE, Wn_flags(), WN_st_idx(), and WN_ST_IS_VER.
Referenced by CODEMAP::Cur_def(), STMTREP::Enter_lhs(), OPT_STAB::Find_Based_Pointer(), DSE::Is_deleted_statement(), Is_identity_asgn(), VER_STAB_ENTRY::Print_use(), DSE::Propagate_vsym_wn(), OPT_STAB::Remap_ver_synonym(), DSE::Required_istore(), DSE::Required_load(), DSE::Required_stid(), DSE::Set_Required_WN(), OPT_STAB::Simplify_Pointer(), OPT_STAB::Update_iload_vsym(), DSE::Update_MU_list_for_call(), and SSA::Value_number().
WN_MAP _wn_flag_map [static] |
Definition at line 389 of file opt_wn.cxx.
Referenced by Set_wn_flags(), WN_fini_flags(), Wn_flags(), and WN_init_flags().
1.5.6