#include <opt_sym.h>

Definition at line 775 of file opt_sym.h.
typedef mempool_allocator< std::pair<IDTYPE, AUX_ID> > OPT_STAB::AC_VSYM_ALLOC [private] |
| OPT_STAB::OPT_STAB | ( | void | ) | [private] |
| OPT_STAB::OPT_STAB | ( | const OPT_STAB & | ) | [private] |
| OPT_STAB::OPT_STAB | ( | MEM_POOL * | pool | ) |
Definition at line 154 of file opt_sym.cxx.
References _ac_2_vsym_map, _const_found, _cr_sr_annot_mgr, _default_vsym, _has_exc_handler, _occ_pool, _pt_sum, _rgn_trace, _st_chain_pool, _ver_pool, ALIAS_DUMP_FLAG, BASE_IS_UNKNOWN, BOOL, CR_DUMP_FLAG, CXX_NEW, EXPR_IS_ADDR, FALSE, Get_Trace(), POINTS_TO::Init(), MEM_DUMP_FLAG, OFST_IS_UNKNOWN, OPT_POOL_Initialize, OPT_POOL_Push, Points_to_globals(), MEMOP_ANNOT_MGR::Set_active_mgr(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_global(), POINTS_TO::Set_ofst_kind(), OPT_PU_POINTS_TO_SUMMARIZER::Set_opt_stab(), Set_points_to_globals(), Set_WN_box_defs(), Set_WN_box_refs(), Set_WN_sym_map(), TP_GLOBOPT, TP_REGION, TT_REGION_BOUND_DEBUG, TT_REGION_WOPT_DEBUG, and WN_MAP_Create.
| OPT_STAB::~OPT_STAB | ( | void | ) |
Definition at line 209 of file opt_sym.cxx.
References _cr_sr_annot_mgr, _occ_pool, _st_chain_pool, Const_found(), CXX_DELETE, MEM_DUMP_FLAG, MEMOP_ANNOT_MGR::Mem_pool(), OPT_POOL_Delete, OPT_POOL_Pop, Opt_tlog(), WN_box_defs(), WN_box_refs(), WN_MAP_Delete, and WN_sym_map().
| OPT_STAB& OPT_STAB::operator= | ( | const OPT_STAB & | ) | [private] |
Definition at line 412 of file opt_sym.cxx.
References _has_exc_handler, _pt_sum, _st_chain_pool, UNAME_SPACE::All_names(), aux_sym_cnt, BOOL, CLASS_VAR, Clear_BE_ST_addr_used_locally(), CXX_NEW, DevWarn, FALSE, OPT_PU_POINTS_TO_SUMMARIZER::Get_bound_pt_sum(), Get_Current_PU, i, INITV_kind(), INITV_st(), Initv_Table, INITVKIND_SYMOFF, INT, INT32, Is_True, iter, MTYPE_V, PT_SET_MGR::Name_space(), NULL, OPCODE_make_op(), OPERATOR_has_aux(), OPERATOR_is_black_box(), OPERATOR_is_scalar_load(), OPERATOR_is_scalar_store(), OPR_BACKWARD_BARRIER, OPR_BLOCK, OPR_CALL, OPR_FORWARD_BARRIER, OPR_IDNAME, OPR_LDA, OPR_REGION, PU_POINTS_TO_SUMMARY::Out_set(), Pointer_type, REGION_get_rid(), REGION_is_EH(), Rgn_level(), RID_level, SCLASS_PSTATIC, ST_CHAIN_INFO::Set_list_head(), st_chain_map, ST_class, UNIFORM_NAME::ST_for_named_global(), ST_has_initv(), ST_index, ST_is_const_initialized(), ST_is_initialized, ST_sclass, ST_st_idx, St_Table, ST_type, TRUE, UNIFORM_NAME::Type(), UN_NAMED_GLOBAL, WN_CreateLda, WN_first(), WN_kid(), WN_kid_count(), WN_next(), WN_operator(), WN_st(), WN_st_idx(), and WOPT_Enable_Pt_Summary.
Referenced by Create().
Definition at line 1557 of file opt_sym.cxx.
References _rgn_trace, Allow_sim_type(), aux_stab, BOOL, Check_volatility(), CLASS_PREG, CLASS_VAR, Complex_Not_Simulated, Convert_black_box(), Cur_PU_Feedback, Delay_U64_Lowering, Enter_ded_preg(), Enter_symbol(), Fail_FmtAssertion(), FALSE, FEEDBACK::FB_simplify_branch_to_goto(), FmtAssert, fprintf(), Get_Current_PU, Get_mtype_class(), Get_Return_Info(), Get_Return_Mtypes(), Get_Return_Pregs(), i, idx, INT32, Is_region_with_pragma(), Is_True, MAINOPT_PHASE, MAX_NUMBER_OF_REGISTERS_FOR_RETURN, MTYPE_is_integral, MTYPE_signed, MTYPE_size_min, MTYPE_To_Dedicated_PREG(), MTYPE_To_TY, MTYPE_V, NULL, Only_Unsigned_64_Bit_Ops, OPCODE_make_op(), OPERATOR_has_aux(), OPERATOR_is_black_box(), OPERATOR_is_scalar_iload(), OPERATOR_is_scalar_istore(), OPERATOR_is_scalar_load(), OPR_ALTENTRY, OPR_ASM_STMT, OPR_BLOCK, OPR_CALL, OPR_DO_LOOP, OPR_FALSEBR, OPR_FUNC_ENTRY, OPR_GOTO, OPR_ICALL, OPR_ILOAD, OPR_INTCONST, OPR_INTRINSIC_CALL, OPR_LDA, OPR_REGION, OPR_STID, OPR_TRUEBR, Phase(), PU_has_mp, Pu_Table, REGION_consistency_check(), REGION_get_rid(), RETURN_INFO_count(), RETURN_INFO_mtype(), RETURN_INFO_preg(), Rgn_level(), RID_id, RID_level, RID_level_str(), Set_BE_ST_addr_used_locally(), ST_class, ST_pu(), ST_pu_type, ST_type, TFile, TRUE, TY_mtype, TY_ret_type, TYPE_ID, Use_Simulated, WHIRL_Return_Info_On, WN_asm_constraints, WN_aux(), WN_class, WN_const_val(), WN_Delete, WN_desc(), WN_field_id(), WN_first(), WN_kid(), WN_kid0(), WN_kid1(), WN_kid_count(), WN_load_addr_ty(), WN_load_offset(), WN_next(), WN_object_ty(), WN_offset(), WN_operator(), WN_pragma(), WN_PRAGMA_ASM_CONSTRAINT, WN_pragma_asm_copyout_preg(), WN_PRAGMA_MASTER_BEGIN, WN_rtype(), WN_set_aux(), WN_set_desc(), WN_set_kid_count(), WN_set_operator(), WN_set_rtype(), WN_set_ty(), WN_SimplifyIload(), WN_SimplifyIstore(), WN_st(), WN_st_idx(), WN_start, WN_ty(), and WOPT_Enable_Simp_Iload.
Referenced by Create().
Definition at line 1501 of file opt_sym.cxx.
References Convert_IO_statement(), FALSE, FmtAssert, OPERATOR_name(), OPR_IO, and WN_operator().
Referenced by Convert_ST_to_AUX().
Definition at line 1442 of file opt_sym.cxx.
References Add_black_box_def(), Add_black_box_ref(), ALIAS_DUMP_FLAG, POINTS_TO::Analyze_ST_as_base(), CLASS_VAR, CXX_NEW, fprintf(), Get_symbol_info_for_cvt_io(), Get_Trace(), i, INT, IOC_VARFMT, Is_True, OPERATOR_has_aux(), OPERATOR_is_load(), OPERATOR_is_store(), OPERATOR_name(), OPR_IO, OPR_IO_ITEM, OPR_LDA, OPR_LDID, Process_varfmt_for_cvt_io(), SCLASS_FORMAL, ST_class, ST_is_value_parm, ST_name, ST_sclass, TFile, TP_GLOBOPT, Warn_todo(), WN_intrinsic(), WN_kid(), WN_kid0(), WN_kid_count(), WN_object_ty(), WN_offset(), WN_operator(), and WN_st().
Referenced by Convert_black_box().
Definition at line 1410 of file opt_sym.cxx.
References Add_black_box_def(), Add_black_box_ref(), ALIAS_DUMP_FLAG, POINTS_TO::Analyze_ST(), Aux_stab_entry(), aux_stab_iter, CXX_NEW, FOR_ALL_NODE, fprintf(), Get_Trace(), AUX_STAB_ENTRY::Has_nested_ref(), idx, Init, AUX_STAB_ENTRY::St(), ST_name, ST_type, TFile, TP_GLOBOPT, TRUE, and TY_size.
Referenced by Convert_IO_statement().
| POINTS_TO_LIST * OPT_STAB::Create_barrier_defs | ( | WN * | wn | ) | [private] |
Definition at line 1178 of file opt_alias_analysis.cxx.
References CXX_NEW, i, POINTS_TO::Init(), INT, INT32, POINTS_TO::Lower_to_base(), NULL, OPR_DEALLOCA, POINTS_TO_LIST::Prepend(), Simplify_Pointer(), WN_kid(), WN_kid_count(), and WN_operator().
Referenced by Generate_mu_and_chi_list().
Definition at line 1286 of file opt_alias_analysis.cxx.
References aux_stab, POINTS_TO::Const(), FALSE, AUX_STAB_ENTRY::Is_preg(), AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Is_volatile(), AUX_STAB_ENTRY::Points_to(), pt, SCLASS_FORMAL, AUX_STAB_ENTRY::St(), ST_sclass, TRUE, and Var_is_loop_index().
Referenced by Compute_barrier_mu_chi().
| void OPT_STAB::Compute_barrier_mu_chi | ( | OCC_TAB_ENTRY * | occ, | |
| POINTS_TO_LIST * | defs, | |||
| BB_NODE * | bb, | |||
| BOOL | no_dups, | |||
| BOOL | generate_mu, | |||
| BOOL | generate_chi, | |||
| BOOL | is_mp_barrier | |||
| ) | [private] |
Definition at line 1318 of file opt_alias_analysis.cxx.
References Add_to_mu_chi(), aux_stab, aux_stab_iter, FOR_ALL_NODE, Init, POINTS_TO::Local(), POINTS_TO::Named(), Not_affected_by_barrier(), NULL, AUX_STAB_ENTRY::Points_to(), POINTS_TO_NODE::Pt(), Rule(), SCLASS_FORMAL_REF, AUX_STAB_ENTRY::St(), ST_is_shared_auto(), ST_sclass, and WOPT_Enable_Strong_Barrier.
Referenced by Compute_region_mu_chi(), and Generate_mu_and_chi_list().
Definition at line 1925 of file opt_sym.cxx.
References _st_chain_pool, aux_stab, aux_stab_iter, base, AUX_STAB_ENTRY::Base_byte_ofst(), BE_ST_addr_passed(), BE_ST_addr_used_locally(), AUX_STAB_ENTRY::Bit_ofst(), Bit_ofst(), AUX_STAB_ENTRY::Bit_size(), AUX_STAB_ENTRY::Byte_size(), CLASS_VAR, cmp_ofst(), count, CXX_NEW, FALSE, FOR_ALL_NODE, i, DYN_ARRAY< T >::Idx(), idx, Init, INT32, INT64, Is_real_var(), Is_True, KIND_ARRAY, DYN_ARRAY< T >::Lastidx(), ST_CHAIN_INFO::List_head(), LONG_MAX, low, max, MEM_DUMP_FLAG, NULL, OPT_POOL_Alloc, OPT_POOL_Delete, OPT_POOL_Initialize, OPT_POOL_Pop, OPT_POOL_Push, qsort(), SCLASS_REG, Set_BE_ST_addr_passed(), Set_BE_ST_addr_used_locally(), Set_ST_addr_saved(), sorted, St(), ST_addr_saved(), st_chain_map, ST_class, ST_sclass, ST_st_idx, ST_type, TY_kind, UINT64, and WOPT_Enable_Improved_Addr_Taken.
Referenced by Create().
| void OPT_STAB::Update_attr_cache | ( | AUX_ID | idx, | |
| ST * | st, | |||
| POINTS_TO * | pt, | |||
| BOOL * | has_weak_var | |||
| ) | [private] |
Definition at line 2330 of file opt_sym.cxx.
References aux_stab, BE_ST_addr_passed(), BE_ST_addr_used_locally(), POINTS_TO::Const(), CURRENT_SYMTAB, POINTS_TO::Dedicated(), FALSE, FmtAssert, POINTS_TO::Formal(), POINTS_TO::Global(), Inc_const_found(), Is_virtual(), POINTS_TO::Named(), POINTS_TO::Not_addr_passed(), POINTS_TO::Not_addr_saved(), NULL, SCLASS_AUTO, SCLASS_COMMON, SCLASS_DGLOBAL, SCLASS_EXTERN, SCLASS_FORMAL, SCLASS_FORMAL_REF, SCLASS_FSTATIC, SCLASS_PSTATIC, SCLASS_REG, SCLASS_TEXT, SCLASS_UGLOBAL, Set_addr_passed(), Set_addr_saved(), Set_addr_used_locally(), Set_const(), Set_dedicated(), Set_external(), Set_local_static(), Set_named(), Set_ref_formal(), Set_ST_is_const_var, Set_virtual_var(), Set_weak_var(), ST_addr_saved(), ST_IDX_level(), ST_is_const_initialized(), ST_is_const_var, ST_is_initialized, ST_is_private_local(), ST_is_value_parm, ST_sclass, ST_st_idx, ST_type, ST_visible_outside_dso, TRUE, TY_size, POINTS_TO::Weak(), and WOPT_Enable_Update_Vsym.
Referenced by Collect_ST_attr().
Definition at line 2490 of file opt_sym.cxx.
References Addr_passed(), Addr_saved(), Addr_used_locally(), POINTS_TO::Analyze_ST(), aux_stab, Aux_stab_entry(), aux_stab_iter, AUX_STAB_ENTRY::Bit_ofst(), AUX_STAB_ENTRY::Bit_size(), BOOL, BS_Choose(), BS_CHOOSE_FAILURE, BS_Choose_Next(), BS_Create_Empty(), BS_DifferenceD(), BS_IntersectionD(), BS_Union(), BS_UnionD(), POINTS_TO::Byte_Size(), AUX_STAB_ENTRY::Byte_size(), CLASS_VAR, Const(), Dedicated(), External(), FALSE, AUX_STAB_ENTRY::Field_id(), FOR_ALL_NODE, POINTS_TO::Highlevel_Ty(), idx, Init, INT32, AUX_STAB_ENTRY::Is_real_var(), DYN_ARRAY< T >::Lastidx(), n, Named(), NULL, OFST_IS_UNKNOWN, AUX_STAB_ENTRY::Points_to(), pt, POINTS_TO::Reset_no_alias(), POINTS_TO::Reset_not_addr_passed(), POINTS_TO::Reset_not_addr_saved(), Set_addr_passed(), Set_addr_saved(), Set_addr_used_locally(), Set_asm_alias(), Set_call_by_ref(), Set_call_by_value(), Set_const(), Set_dedicated(), AUX_STAB_ENTRY::Set_def_bbs(), Set_external(), POINTS_TO::Set_hl_ty(), Set_inaccessible_to_callees(), Set_indirect(), Set_local_static(), Set_named(), POINTS_TO::Set_ofst_kind(), Set_ref_formal(), Set_unique_pt(), Set_virtual_var(), Set_weak_base(), POINTS_TO::Set_weak_base(), Set_weak_var(), AUX_STAB_ENTRY::St(), ST_class, AUX_STAB_ENTRY::St_group(), AUX_STAB_ENTRY::St_ofst(), ST_strong, ST_type, AUX_STAB_ENTRY::Stype(), AUX_STAB_ENTRY::Ty(), Update_attr_cache(), VT_OTHER, Weak_var(), and WOPT_Enable_Unique_Pt_Vsym.
Referenced by Create().
Definition at line 2269 of file opt_sym.cxx.
References aux_stab, aux_stab_iter, cur, Equivalent(), FOR_ALL_NODE, idx, Init, Is_real_var(), min, pu_wn, and Remap_aux_synonym().
Referenced by Create().
Definition at line 2229 of file opt_sym.cxx.
References ALIAS_DUMP_FLAG, aux_stab, Aux_stab_entry(), Completely_replaced(), fprintf(), Get_Trace(), i, idx, INT32, Is_True, NULL, OPERATOR_has_aux(), OPERATOR_is_black_box(), OPR_BLOCK, OPR_REGION, REGION_get_rid(), Rgn_level(), RID_level, TFile, TP_GLOBOPT, WN_aux(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), WN_offset(), WN_operator(), and WN_set_aux().
Referenced by Canonicalize().
Definition at line 2225 of file opt_alias_analysis.cxx.
References _default_vsym, Adjust_vsym(), ALIAS_CLASSIFICATION::Alias_class(), POINTS_TO::Alias_class(), Alias_classification(), Analyze_Base_Flow_Free(), aux_stab, BASE_IS_UNKNOWN, POINTS_TO::Copy_fully(), Enter_occ_tab(), EXPR_IS_ANY, i, Identify_vsym(), POINTS_TO::Init(), INT32, POINTS_TO::Invalidate_ptr_info(), Is_True, MTYPE_BS, No_alias(), NULL, OFST_IS_INVALID, opc, OPC_BLOCK, OPC_COMPGOTO, OPC_REGION, OPCODE_is_black_box(), OPCODE_is_scf(), OPCODE_name(), OPCODE_operator(), OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_CALL, OPR_DEALLOCA, OPR_FORWARD_BARRIER, OPR_GOTO_OUTER_BLOCK, OPR_ICALL, OPR_ILDBITS, OPR_ILOAD, OPR_ILOADX, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_IO, OPR_ISTBITS, OPR_ISTORE, OPR_ISTOREX, OPR_LDBITS, OPR_LDID, OPR_MLOAD, OPR_MSTORE, OPR_PARM, OPR_PREFETCH, OPR_REGION, OPR_REGION_EXIT, OPR_RETURN, OPR_RETURN_VAL, OPR_STBITS, OPR_STID, OPTIMISTIC_AC_ID, PESSIMISTIC_AC_ID, POINTS_TO::Pointer(), OCC_TAB_ENTRY::Points_to(), Points_to(), REGION_get_rid(), Rgn_level(), RID_level, POINTS_TO::Set_alias_class(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_byte_size(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_ip_alias_class(), POINTS_TO::Set_ofst_kind(), Update_From_Restricted_Map(), WN_aux(), WN_desc(), WN_kid(), WN_kid0(), WN_kid_count(), WN_MAP32_Get, WN_MAP_ALIAS_CLASS, WN_object_size(), WN_opcode(), WN_operator(), WN_Parm_By_Reference, WN_Parm_By_Value, and WOPT_Alias_Class_Limit.
Referenced by Compute_FFA(), and Compute_FFA_for_copy().
Definition at line 4417 of file opt_alias_analysis.cxx.
References Addr_passed(), Addr_saved(), Addr_used_locally(), ALIAS_DUMP_FLAG, Asm_alias(), BS_DifferenceD(), BS_Print(), BS_Union1D(), BS_UnionD(), Call_by_ref(), Call_by_value(), Default_vsym(), External(), fprintf(), Get_Trace(), Inaccessible_to_callees(), Indirect(), Return_vsym(), Set_asm_alias(), Set_call_by_ref(), Set_call_by_value(), Set_indirect(), Set_virtual_var(), TFile, TP_GLOBOPT, and Virtual_var().
Referenced by Compute_FFA().
Definition at line 1819 of file opt_alias_analysis.cxx.
References ALIAS_RULE::Alias_Set_Indirect(), ALIAS_RULE::Aliased_Memop(), aux_stab, BS_Choose(), BS_CHOOSE_FAILURE, BS_Choose_Next(), SLIST::Clear(), CXX_NEW, idx, Is_real_var(), AUX_ID_LIST::New_aux_id_node(), Points_to(), and Rule().
Referenced by Generate_exit_mu(), Generate_mu_and_chi_list(), Update_iload_vsym(), and Update_istore_vsym().
Definition at line 2483 of file opt_alias_analysis.cxx.
References aux_stab, FALSE, BB_LOOP::Index(), BB_NODE::Innermost(), NULL, BB_LOOP::Parent(), St(), TRUE, and WN_sym().
Referenced by Generate_call_mu_chi_by_ref(), Generate_mu_and_chi_list(), and Not_affected_by_barrier().
Definition at line 880 of file opt_alias_analysis.cxx.
References Is_True, OPERATOR_is_scalar_iload(), OPERATOR_is_scalar_istore(), OPR_ILDBITS, OPR_ILOAD, OPR_MLOAD, OPR_MSTORE, POINTS_TO::Set_known_f90_pointer(), POINTS_TO::Set_known_not_f90_pointer(), TY_is_f90_pointer, Ty_Table, WN_load_addr_ty(), WN_operator(), and WN_ty().
Referenced by Analyze_Base_Flow_Free().
Definition at line 3982 of file opt_sym.cxx.
References ALIAS_DUMP_FLAG, Aux_stab_entry(), aux_stab_iter, Base(), base, BOOL, AUX_STAB_ENTRY::Byte_size(), CLASS_VAR, Expand_ST_into_base_and_ofst(), find(), For_all_entries(), FOR_ALL_NODE, Get_Trace(), Init, INT, Is_Trace, Is_Trace_cmd, Is_True, Print_ST(), St(), ST_class, ST_has_nested_ref, St_ofst(), TFile, TP_GLOBOPT, tracing, and TRUE.
Referenced by Create().
Definition at line 3029 of file opt_alias_analysis.cxx.
References Add_nested_call_mu_chi(), POINTS_TO::Alias_class(), ALIAS_RULE::Alias_Set_Indirect(), ALIAS_RULE::Aliased_Memop(), CHI_NODE::Aux_id(), OCC_TAB_ENTRY::Aux_id(), Aux_id_list(), aux_stab, Aux_stab_entry(), aux_stab_iter, BB_REGIONEXIT, BS_Choose(), BS_CHOOSE_FAILURE, BS_Choose_Next(), Cfg(), cnode, Compute_barrier_mu_chi(), Compute_black_box_mu_chi(), Compute_region_mu_chi(), Create_barrier_defs(), cur, FALSE, FOR_ALL_NODE, Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_call_mu_chi_by_value(), Generate_exit_mu(), Get_Current_PU, Get_mem_chi_list(), Get_occ(), Get_stmt_chi_list(), Get_stmt_mu_list(), i, Init, INT32, INTRN_has_no_side_effects(), Is_real_var(), AUX_STAB_ENTRY::Is_real_var(), Is_True, AUX_STAB_ENTRY::Is_virtual(), Is_volatile(), AUX_STAB_ENTRY::Is_volatile(), BB_NODE::Kind(), OCC_TAB_ENTRY::Mem_chi_list(), CHI_LIST::New_chi_node(), CHI_LIST::New_chi_node_no_dups(), OCC_TAB_ENTRY::New_mem_mu_node(), POINTS_TO::No_alias(), NULL, Occ_pool(), OPC_BLOCK, OPC_COMPGOTO, OPC_REGION, OPCODE_is_black_box(), OPCODE_is_scf(), OPCODE_name(), OPCODE_operator(), OPR_ASM_STMT, OPR_BACKWARD_BARRIER, OPR_CALL, OPR_DEALLOCA, OPR_FORWARD_BARRIER, OPR_GOTO_OUTER_BLOCK, OPR_ICALL, OPR_ILDBITS, OPR_ILOAD, OPR_ILOADX, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_IO, OPR_ISTBITS, OPR_ISTORE, OPR_ISTOREX, OPR_LDBITS, OPR_LDID, OPR_MLOAD, OPR_MSTORE, OPR_PARM, OPR_REGION, OPR_REGION_EXIT, OPR_RETURN, OPR_RETURN_VAL, OPR_STBITS, OPR_STID, OPTIMISTIC_AC_ID, PESSIMISTIC_AC_ID, OCC_TAB_ENTRY::Points_to(), Points_to(), AUX_STAB_ENTRY::Points_to(), PU_has_region, REGION_get_rid(), REGION_has_black_regions(), BB_NODE::Regioninfo(), Rgn_level(), CFG::Rid(), BB_REGION::Rid(), RID_level, RID_TYPE_transparent, Rule(), OCC_TAB_ENTRY::Set_pt_list(), TRUE, Update_aux_id_list(), Var_is_loop_index(), Virtual_var(), Weak_base(), WN_aux(), WN_intrinsic(), WN_kid(), WN_kid_count(), WN_object_ty(), WN_opcode(), WN_Parm_By_Reference, WN_Parm_By_Value, WN_sym(), WOPT_Alias_Class_Limit, and WOPT_Enable_Alias_Classification.
Referenced by Compute_FFA(), and Compute_FFA_for_copy().
Definition at line 4074 of file opt_alias_analysis.cxx.
References ALIAS_DUMP_FLAG, Analyze_Base_Flow_Sensitive(), Analyze_Based_Pointer(), CHI_NODE::Aux_id(), aux_stab, BASE_IS_FIXED, BASE_IS_UNKNOWN, POINTS_TO::Base_kind(), POINTS_TO::Based_sym(), BOOL, cnode, POINTS_TO::Const(), EC_Store_Const, ErrMsgLine(), POINTS_TO::F_param(), FALSE, fprintf(), Get_occ(), Get_Trace(), POINTS_TO::Global(), SLIST::Head(), i, INT32, Is_True, MAINOPT_PHASE, OCC_TAB_ENTRY::Mem_chi_list(), SLIST_NODE::Next(), POINTS_TO::Not_addr_saved(), NULL, OPC_COMPGOTO, OPC_REGION, OPCODE_is_black_box(), OPCODE_is_scf(), OPCODE_name(), OPCODE_operator(), OPERATOR_is_scalar_iload(), OPERATOR_is_scalar_istore(), CHI_NODE::Opnd(), OPR_ASM_STMT, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_MLOAD, OPR_MSTORE, OPR_PARM, Phase(), OCC_TAB_ENTRY::Points_to(), SLIST::Remove(), POINTS_TO::Restricted(), CHI_NODE::Result(), Return_vsym(), Rule(), POINTS_TO::Set_based_sym(), POINTS_TO::Set_restricted(), POINTS_TO::Set_unique_pt(), Stype(), TFile, TP_GLOBOPT, TRUE, POINTS_TO::Unique_pt(), Update_From_Restricted_Map(), Update_iload_vsym(), Update_istore_vsym(), USRCPOS_linenum, USRCPOS_srcpos, Ver_stab_entry(), Verify_Restricted_Map(), VT_UNIQUE_VSYM, WN_Get_Linenum(), WN_intrinsic(), WN_kid(), WN_kid0(), WN_kid1(), WN_kid_count(), WN_opcode(), and WOPT_Enable_Update_Vsym.
Referenced by Compute_FSA_dominator_order().
Definition at line 4254 of file opt_alias_analysis.cxx.
References Compute_FSA_stmt_or_expr(), BB_NODE::Dom_bbs(), BB_NODE::Firststmt(), FOR_ALL_ELEM, Init, and BB_NODE::Laststmt().
Referenced by Compute_FSA().
| void OPT_STAB::Compute_black_box_mu_chi | ( | const WN * | wn, | |
| OCC_TAB_ENTRY * | occ | |||
| ) | [private] |
Definition at line 1401 of file opt_alias_analysis.cxx.
References aux_stab, aux_stab_iter, Black_box_defs(), Black_box_refs(), defs, FOR_ALL_NODE, Init, AUX_STAB_ENTRY::Is_real_var(), Is_True, AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Is_volatile(), CHI_LIST::New_chi_node(), MU_LIST::New_mu_node(), POINTS_TO::Not_addr_saved(), NULL, opc, OPCODE_is_black_box(), OPCODE_name(), AUX_STAB_ENTRY::Points_to(), POINTS_TO_NODE::Pt(), ref_iter(), Rule(), OCC_TAB_ENTRY::Stmt_chi_list(), OCC_TAB_ENTRY::Stmt_mu_list(), and WN_opcode().
Referenced by Generate_mu_and_chi_list().
Definition at line 2606 of file opt_alias_analysis.cxx.
References actual, Aux_stab_entry(), AUX_STAB_ENTRY::Byte_size(), FALSE, Get_Current_PU, i, INT32, INT64, Is_real_var(), Is_True, Lda_vsym(), OPR_LDA, OPR_PARM, OPT_IPA_addr_analysis, PU_ipa_addr_analysis(), size, AUX_STAB_ENTRY::St(), AUX_STAB_ENTRY::St_ofst(), TRUE, WN_actual, WN_aux(), WN_kid0(), WN_operator(), and WN_Parm_Read_Only.
Referenced by Generate_call_mu_chi_by_value().
| void OPT_STAB::Generate_call_mu_chi_by_value | ( | WN * | wn, | |
| ST * | call_st, | |||
| MU_LIST * | mu, | |||
| CHI_LIST * | chi, | |||
| INT32 | num_parms | |||
| ) | [private] |
Definition at line 2683 of file opt_alias_analysis.cxx.
References ALIAS_DUMP_FLAG, ALIAS_RULE::Alias_Set_Call_By_Value(), ALIAS_RULE::Aliased_with_Call(), aux_stab, Aux_stab_entry(), BS_Choose(), BS_CHOOSE_FAILURE, BS_Choose_Next(), CLASS_VAR, POINTS_TO::Dedicated(), fprintf(), Get_Trace(), Has_read_only_parm(), how, INT, INTRN_has_no_side_effects(), Is_Global_Symbol, AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Is_volatile(), CHI_LIST::New_chi_node(), MU_LIST::New_mu_node(), NO_READ_NO_WRITE, POINTS_TO::Not_addr_saved(), Occ_pool(), OPR_INTRINSIC_CALL, READ, READ_AND_WRITE, Rule(), ST_class, TFile, TP_GLOBOPT, WN_call_flag(), WN_intrinsic(), WN_operator(), and WRITE.
Referenced by Generate_mu_and_chi_list().
Definition at line 2832 of file opt_alias_analysis.cxx.
References Addr_passed(), Addr_saved(), Addr_used_locally(), ALIAS_RULE::Aliased_with_Asm(), aux_stab, Aux_stab_entry(), aux_stab_iter, BOOL, Default_vsym(), FOR_ALL_NODE, how, Identify_vsym(), Init, INT, Is_virtual(), Is_volatile(), CHI_LIST::New_chi_node(), CHI_LIST::New_chi_node_no_dups(), MU_LIST::New_mu_node(), NO_READ_NO_WRITE, NULL, Occ_pool(), OPR_LDA, Points_to(), READ, READ_AND_WRITE, Return_vsym(), Rule(), AUX_STAB_ENTRY::Set_disable_local_rvi(), strncmp(), strstr(), WN_Asm_Clobbers_Mem, WN_asm_constraints, WN_asm_input_constraint(), WN_Asm_Volatile, WN_aux(), WN_first(), WN_kid(), WN_kid0(), WN_kid_count(), WN_next(), WN_operator(), and WRITE.
Referenced by Generate_mu_and_chi_list().
| void OPT_STAB::Generate_call_mu_chi_by_ref | ( | WN * | wn, | |
| ST * | call_st, | |||
| MU_LIST * | mu, | |||
| CHI_LIST * | chi, | |||
| INT32 | num_parms, | |||
| BB_NODE * | bb | |||
| ) | [private] |
Definition at line 2506 of file opt_alias_analysis.cxx.
References actual, ALIAS_RULE::Alias_Set_Call_By_Ref(), ALIAS_RULE::Aliased_with_Call(), OCC_TAB_ENTRY::Aux_id(), aux_stab, Aux_stab_entry(), BOOL, BS_Choose(), BS_CHOOSE_FAILURE, BS_Choose_Next(), Default_vsym(), FALSE, Get_occ(), how, i, idx, INT32, INTRN_CASSIGNSTMT, AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Is_volatile(), CHI_LIST::New_chi_node(), MU_LIST::New_mu_node(), NO_READ_NO_WRITE, NULL, Occ_pool(), OPR_CALL, OPR_INTRINSIC_CALL, OCC_TAB_ENTRY::Points_to(), Points_to(), READ, READ_AND_WRITE, Return_vsym(), Rule(), AUX_STAB_ENTRY::St(), St(), St_name(), AUX_STAB_ENTRY::St_name(), ST_name, strcmp(), strncmp(), TRUE, Var_is_loop_index(), WN_actual, WN_call_flag(), WN_intrinsic(), WN_kid(), WN_kid_count(), WN_operator(), WN_Parm_By_Reference, WN_st(), and WRITE.
Referenced by Generate_mu_and_chi_list().
Definition at line 2925 of file opt_alias_analysis.cxx.
References Aux_id_list(), aux_stab, Aux_stab_entry(), aux_stab_iter, POINTS_TO::Based_sym(), Default_vsym(), FOR_ALL_NODE, Get_Current_PU, Get_stmt_mu_list(), Init, AUX_STAB_ENTRY::Is_volatile(), POINTS_TO::Local(), Local_static(), MU_LIST::New_mu_node(), NULL, Occ_pool(), AUX_STAB_ENTRY::Points_to(), PU_has_syscall_linkage(), Return_vsym(), SCLASS_FORMAL, SCLASS_FORMAL_REF, AUX_STAB_ENTRY::St(), ST_is_value_parm, ST_sclass, and Update_aux_id_list().
Referenced by Compute_region_mu_chi(), and Generate_mu_and_chi_list().
| void OPT_STAB::Add_nested_call_mu_chi | ( | WN * | wn, | |
| ST * | call_st, | |||
| MU_LIST * | mu, | |||
| CHI_LIST * | chi | |||
| ) | [private] |
Definition at line 2773 of file opt_alias_analysis.cxx.
References aux_stab, Aux_stab_entry(), aux_stab_iter, FOR_ALL_NODE, Get_MP_accessed_id_list(), Get_MP_modref(), how, Init, Is_nested_call(), Is_virtual(), Is_volatile(), CHI_LIST::New_chi_node_no_dups(), MU_LIST::New_mu_node_no_dups(), NULL, Occ_pool(), Points_to(), READ, Rule(), WOPT_Enable_MP_varref, and WRITE.
Referenced by Generate_mu_and_chi_list().
Definition at line 976 of file opt_sym.h.
References _const_found.
Referenced by Update_attr_cache().
| void OPT_STAB::REGION_add_aux_id_points_to | ( | POINTS_TO_SET ** | pset, | |
| AUX_ID | aux_id | |||
| ) | [private] |
Definition at line 1789 of file opt_alias_analysis.cxx.
References points_to_ref::Next, Points_to(), Points_to_copy(), points_to_ref::Pt, ptr, REGION_mem_pool, and TYPE_OPT_POOL_ALLOC.
Referenced by REGION_add_to_bound(), and REGION_merge_aux_id_points_to().
| BOOL OPT_STAB::REGION_merge_aux_id_points_to | ( | POINTS_TO_SET ** | pset, | |
| AUX_ID | aux_id | |||
| ) | [private] |
Definition at line 1801 of file opt_alias_analysis.cxx.
References FALSE, Points_to(), REGION_add_aux_id_points_to(), REGION_search_set(), Rule(), and TRUE.
Referenced by REGION_add_to_bound().
Definition at line 1677 of file opt_alias_analysis.cxx.
References _rgn_trace, POINTS_TO::Base(), BOOL, POINTS_TO::Byte_Ofst(), CLASS_PREG, i, INT, Is_Trace, Is_True, NULL, Points_to(), REGION_add_aux_id_points_to(), REGION_add_preg_in(), REGION_add_preg_out(), REGION_merge_aux_id_points_to(), ret, Return_vsym(), RID_def_in_live_out, RID_id, RID_num_exits, RID_used_in, ST_btype, ST_class, and TFile.
Definition at line 1722 of file opt_alias_analysis.cxx.
References Aux_stab_entry(), POINTS_TO::Base(), CLASS_PREG, POINTS_TO::Const(), POINTS_TO::Global(), i, INT, AUX_STAB_ENTRY::Is_real_var(), Is_True, NULL, Points_to(), pr, REGION_search_preg_set(), REGION_search_set(), RID_aliased_to_globals, RID_aliased_to_indirects, RID_bounds_exist, RID_def_in_live_out, RID_id, RID_num_exits, RID_pregs_in, RID_pregs_out, RID_pregs_out_i, RID_used_in, Rule(), ST_class, AUX_STAB_ENTRY::St_ofst(), and TRUE.
Definition at line 473 of file opt_alias_analysis.cxx.
References Allow_sim_type(), VER_STAB_ENTRY::Aux_id(), Aux_stab_entry(), call(), CHI_STMT, VER_STAB_ENTRY::Chi_wn(), Complex_Not_Simulated, FALSE, Get_Return_Info(), AUX_STAB_ENTRY::Is_dedicated_preg(), MTYPE_To_TY, OPR_CALL, Pu_Table, RETURN_INFO_count(), RETURN_INFO_preg(), AUX_STAB_ENTRY::St_ofst(), ST_pu(), TRUE, VER_STAB_ENTRY::Type(), Use_Simulated, Ver_stab_entry(), WHIRL_Return_Info_On, WN_operator(), WN_rtype(), and WN_st().
Referenced by Simplify_Pointer_Ver().
| VER_STAB_ARRAY_TYPE* OPT_STAB::Ver_stab | ( | void | ) | [inline] |
| void OPT_STAB::Create | ( | COMP_UNIT * | cu, | |
| REGION_LEVEL | rgn_level | |||
| ) |
Definition at line 2663 of file opt_sym.cxx.
References _allow_sim_type, _cfg, _is_varargs_func, _phase, _rgn_level, _rule, _st_chain_pool, _ver_pool, _ver_stab, COMP_UNIT::Alias_mgr(), DYN_ARRAY< T >::Alloc_array(), COMP_UNIT::Arule(), aux_stab, Aux_stab_entry(), aux_stab_iter, aux_sym_cnt, BASE_IS_UNKNOWN, BOOL, DYN_ARRAY< T >::Bzero_array(), Canonicalize(), COMP_UNIT::Cfg(), Collect_addr_passed_for_PU(), Collect_nested_ref_info(), Collect_ST_attr(), Convert_ST_to_AUX(), Count_syms(), Create_vsym(), CURRENT_SYMTAB, CXX_DELETE, CXX_NEW, DBar, EXPR_IS_ADDR, FALSE, fdump_tree(), fprintf(), Get_Current_PU_ST, Get_Preg_Num(), Get_Trace(), COMP_UNIT::Htable(), htable, POINTS_TO::Init(), Init_last_preg(), COMP_UNIT::Input_tree(), Is_True, LOOP_NORM_FLAG, MAINOPT_PHASE, Make_st_group(), COMP_UNIT::Normalize_loop(), NULL, OFST_IS_UNKNOWN, OPR_FUNC_ENTRY, OPR_REGION, COMP_UNIT::Phase(), AUX_STAB_ENTRY::Points_to(), PREG_Table_Size(), pt, pu_wn, POINTS_TO::Set_base(), POINTS_TO::Set_base_kind(), Set_BE_ST_pu_has_valid_addr_flags(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_global(), POINTS_TO::Set_ofst_kind(), SET_OPT_PHASE, Set_return_vsym(), DYN_ARRAY< T >::Setidx(), st_chain_map, ST_pu_type, TFile, TP_WOPT2, trace_loop(), TRUE, TY_has_prototype, TY_is_varargs, UINT, VER_STAB_ARRAY_TYPE, WN_operator(), WN_st(), and WOPT_Enable_IVR.
Referenced by Pre_Optimizer().
Definition at line 1117 of file opt_sym.cxx.
References aux_stab, Aux_stab_entry(), AUX_STAB_ENTRY::Clear_flags(), POINTS_TO::Init(), MTYPE_UNKNOWN, DYN_ARRAY< T >::Newidx(), NULL, AUX_STAB_ENTRY::Points_to(), AUX_STAB_ENTRY::Set_aux_id_list(), AUX_STAB_ENTRY::Set_def_bbs(), POINTS_TO::Set_expr_kind(), AUX_STAB_ENTRY::Set_home_sym(), AUX_STAB_ENTRY::Set_mclass(), AUX_STAB_ENTRY::Set_mtype(), AUX_STAB_ENTRY::Set_nonzerophis(), AUX_STAB_ENTRY::Set_spre_node(), AUX_STAB_ENTRY::Set_st(), AUX_STAB_ENTRY::Set_st_chain(), AUX_STAB_ENTRY::Set_st_group(), AUX_STAB_ENTRY::Set_st_ofst(), AUX_STAB_ENTRY::Set_stype(), AUX_STAB_ENTRY::Set_value_size(), AUX_STAB_ENTRY::Set_zero_cr(), and VT_SPECIAL_VSYM.
Referenced by Adjust_vsym(), Create(), OPT_REVISE_SSA::Get_new_occ(), and Identify_vsym().
Definition at line 1146 of file opt_sym.cxx.
References Alloc_preg(), POINTS_TO::Analyze_ST(), aux_stab, Aux_stab_entry(), CLASS_PREG, AUX_STAB_ENTRY::Clear_flags(), FALSE, Gen_Temp_Symbol(), Get_mtype_class(), Has_exc_handler(), ST_CHAIN_INFO::List_head(), MTYPE_To_PREG, MTYPE_To_TY, DYN_ARRAY< T >::Newidx(), NULL, Phase(), AUX_STAB_ENTRY::Points_to(), PREOPT_IPA0_PHASE, AUX_STAB_ENTRY::Set_def_bbs(), AUX_STAB_ENTRY::Set_home_sym(), AUX_STAB_ENTRY::Set_mclass(), AUX_STAB_ENTRY::Set_mtype(), AUX_STAB_ENTRY::Set_nonzerophis(), AUX_STAB_ENTRY::Set_spre_node(), AUX_STAB_ENTRY::Set_st(), AUX_STAB_ENTRY::Set_st_group(), AUX_STAB_ENTRY::Set_st_ofst(), AUX_STAB_ENTRY::Set_stype(), AUX_STAB_ENTRY::Set_synonym(), AUX_STAB_ENTRY::Set_value_size(), AUX_STAB_ENTRY::Set_zero_cr(), st_chain_map, ST_class, AUX_STAB_ENTRY::St_ofst(), ST_st_idx, sym, TY_size, and VT_NO_LDA_SCALAR.
Referenced by GVN::Apply_cr(), Change_expr_to_temp(), IVR::Choose_primary_IV(), CODEMAP::Convert_to_loop_invar(), OPT_TAIL::Fixup_exit(), EXP_OCCURS::Get_temp_cr(), ETABLE::New_temp_cr(), and SSU::SPRE_candidate().
Definition at line 2804 of file opt_sym.cxx.
References Aux_stab_entry(), aux_stab_iter, POINTS_TO::Based_sym(), FOR_ALL_NODE, i, Init, and AUX_STAB_ENTRY::Points_to().
Referenced by Adjust_vsym(), Identify_vsym(), and IVR::Preprocess_mp_pragma_list().
Definition at line 2940 of file opt_sym.cxx.
References ALIAS_RULE::Aliased_Memop(), Aux_stab_entry(), aux_stab_iter, FOR_ALL_NODE, i, Init, AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Points_to(), Rule(), and AUX_STAB_ENTRY::St().
Referenced by Identify_vsym().
| AUX_ID OPT_STAB::Find_vsym_with_base_ofst_and_size | ( | ST * | base, | |
| INT64 | byte_ofst, | |||
| INT64 | byte_size, | |||
| UINT8 | bit_ofst, | |||
| UINT8 | bit_size | |||
| ) |
Definition at line 2833 of file opt_sym.cxx.
References Aux_stab_entry(), aux_stab_iter, AUX_STAB_ENTRY::Base(), AUX_STAB_ENTRY::Base_byte_ofst(), AUX_STAB_ENTRY::Bit_ofst(), Bit_size(), AUX_STAB_ENTRY::Bit_size(), AUX_STAB_ENTRY::Byte_size(), FOR_ALL_NODE, i, Init, INT32, AUX_STAB_ENTRY::Is_real_var(), AUX_STAB_ENTRY::Set_stype(), AUX_STAB_ENTRY::Stype(), UINT64, UINT8, VT_LDA_SCALAR, VT_LDA_VSYM, and VT_NO_LDA_SCALAR.
Referenced by OPT_REVISE_SSA::Get_new_occ(), Update_iload_vsym(), and Update_istore_vsym().
Definition at line 2962 of file opt_sym.cxx.
References Aux_stab_entry(), aux_stab_iter, FOR_ALL_NODE, i, Init, AUX_STAB_ENTRY::St(), AUX_STAB_ENTRY::St_ofst(), and sym.
Referenced by ALIAS_CLASSIFICATION::Classify_deref_of_expr(), IVR::Preprocess_mp_pragma_list(), and COPYPROP::Prop_const_init_scalar().
Definition at line 3220 of file opt_sym.cxx.
References aux_stab, i, INT32, and DYN_ARRAY< T >::Lastidx().
Referenced by COMP_UNIT::Do_copy_propagate(), ETABLE::SPRE_update_ssa(), and COMP_UNIT::Verify_version().
Definition at line 3238 of file opt_sym.cxx.
References aux_stab, CXX_NEW, i, INT32, and DYN_ARRAY< T >::Lastidx().
Referenced by SSA::Create_CODEMAP(), COMP_UNIT::Do_copy_propagate(), ETABLE::SPRE_update_ssa(), and COMP_UNIT::Verify_version().
Definition at line 3247 of file opt_sym.cxx.
References aux_stab, CXX_NEW, i, INT32, and DYN_ARRAY< T >::Lastidx().
Definition at line 3257 of file opt_sym.cxx.
References aux_stab, i, INT32, Is_True, DYN_ARRAY< T >::Lastidx(), and Stack_elements().
Referenced by SSA::Create_CODEMAP(), COMP_UNIT::Do_copy_propagate(), and COMP_UNIT::Verify_version().
| OPT_PU_POINTS_TO_SUMMARIZER* OPT_STAB::Points_to_summarizer | ( | void | ) | [inline] |
Definition at line 1022 of file opt_sym.h.
References _occ_pool.
Referenced by Add_nested_call_mu_chi(), Compute_FFA_for_copy(), Create_entry_chi(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_call_mu_chi_by_value(), Generate_exit_mu(), Generate_mu_and_chi_list(), EXP_HOISTING::Get_hoisted_exp_occur(), CODEREP::Match(), and Rehash_tree_rec().
Definition at line 1024 of file opt_sym.h.
References _cfg.
Referenced by Analyze_pu_noreturn_attr(), Create_entry_chi(), Generate_mu_and_chi_list(), LOOP_MULTIVER::LOOP_MULTIVER(), LOOP_MULTIVER::Perform_loop_multiversioning(), Remap_ver_synonym(), OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to(), and Update_return_mu().
| const ALIAS_RULE* OPT_STAB::Rule | ( | void | ) | const [inline] |
Definition at line 1025 of file opt_sym.h.
References _rule.
Referenced by Add_nested_call_mu_chi(), Analyze_Based_Pointer(), Compute_barrier_mu_chi(), Compute_black_box_mu_chi(), Compute_FFA(), Compute_FSA_stmt_or_expr(), Compute_region_mu_chi(), Find_vsym_with_st(), Found_aliasing_store_in_loop(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_call_mu_chi_by_value(), Generate_mu_and_chi_list(), LOCAL_CLSC::Get_aux_id_by_alias(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), LOOP_MULTIVER::LOOP_MULTIVER(), SSU::Make_diff_ssu_version_at_phi(), COPYPROP::Propagatable(), REGION_merge_aux_id_points_to(), REGION_verify_bound(), Simplify_Pointer_Ver(), Transfer_alias_class_to_occ_and_aux(), LOCAL_CLSC::Update_alias(), Update_aux_id_list(), and LOCAL_CLSC::Update_cr_alias().
Definition at line 1026 of file opt_sym.h.
References _is_varargs_func.
Referenced by DCE::DCE(), COMP_UNIT::Do_local_rvi(), COMP_UNIT::Find_lr_shrink_cand(), BITWISE_DCE::Make_bb_live(), and SSU::SPRE_candidate().
Definition at line 1031 of file opt_sym.h.
References _allow_sim_type.
Referenced by Convert_ST_to_AUX(), and Its_ret_val_of_malloc().
Definition at line 1032 of file opt_sym.h.
References _has_exc_handler.
Referenced by Create_preg(), DSE::Dead_store_elim(), and DSE::Update_MU_list_for_call().
| AUX_STAB_ENTRY* OPT_STAB::Aux_stab_entry | ( | AUX_ID | v | ) | const [inline] |
Definition at line 1034 of file opt_sym.h.
References aux_stab.
Referenced by Actual_data_size(), CODEMAP::Add_def(), DSE::Add_MU_list_for_calls(), Add_nested_call_mu_chi(), Adjust_vsym(), POINTS_TO::Analyze_Lda_Base(), MEM_ACCESS_ANALYZER::Analyze_mem_access(), MEM_ACCESS_ANALYZER::Analyze_named_symbol_pointer(), MEM_ACCESS_ANALYZER::Analyze_pointer(), BITWISE_DCE::Bits_in_var(), CODEREP::Can_be_speculated(), Change_expr_to_temp(), AUX_STAB_ENTRY::Change_to_new_preg(), CODEREP::Check_if_result_is_address(), ALIAS_CLASSIFICATION::Classify_deref_of_expr(), ALIAS_CLASSIFICATION::Classify_memops(), LOCAL_CLSC::Collect_def(), LOCAL_CLSC::Collect_def_by_chi_list(), SSA::Collect_defs_bb(), Collect_nested_ref_info(), EOCC::Collect_real_occurrences(), Collect_ST_attr(), Compute_FFA(), SSU::Construct(), SSA::Construct(), IVR::Convert_all_ivs(), CODEREP::Convert_type(), COPYPROP::Copy_propagate(), Create(), Create_entry_chi(), Create_preg(), Create_vsym(), IVR::Determine_trip_IV_and_exit_count(), CODEREP::Divisable(), COMP_UNIT::Do_local_rvi(), SSA::Du2cr(), Enter_ded_preg(), STMTREP::Enter_lhs(), Enter_symbol(), LOOP_MULTIVER::Estimate_latency(), LOOP_MULTIVER::Evaluate_cr_rec(), MEM_ACCESS_ANALYZER::Expr_of_ptr_ty(), ALIAS_CLASSIFICATION::Finalize_ac_map_wn(), BITWISE_DCE::Find_and_mark_return_live(), COMP_UNIT::Find_lr_shrink_cand(), WOVP::Find_mm_pair(), OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), OPT_REVISE_SSA::Find_scalars_from_lda_indirects(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld_cr(), Find_sym_with_st_and_ofst(), Find_vsym_with_base(), Find_vsym_with_base_ofst_and_size(), Find_vsym_with_st(), SSA::Find_zero_versions(), Fix_do_loop(), OPT_REVISE_SSA::Form_extract(), OPT_REVISE_SSA::Form_extract_compose(), Gen_exp_wn(), Gen_stmt_wn(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_call_mu_chi_by_value(), Generate_exit_mu(), Generate_mu_and_chi_list(), LOCAL_CLSC::Get_bitpos(), OPT_REVISE_SSA::Get_new_occ(), EXP_OCCURS::Get_temp_cr(), LOCAL_CLSC::Get_use_by_mu_node(), ETABLE::Get_worklst(), SSA::Get_zero_version_CR(), Has_read_only_parm(), IVR::Ident_all_iv_cands(), Identify_vsym(), CODEMAP::Iload_folded(), LOCAL_CLSC::Init_bp_map(), Init_mp_attribute(), SSA::Insert_identity_assignment_4_loopexit(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), STR_RED::Is_cvt_linear(), Its_ret_val_of_malloc(), ETABLE::LPRE_bottom_up_cr(), SSU::Make_diff_ssu_version(), RVI::Map_chi_list(), RVI::Map_mu_list(), RVI::Map_mu_node(), DCE::Mark_chinode_live(), DCE::Mark_statements_dead(), BITWISE_DCE::Mark_stmt_live(), ETABLE::New_temp_cr(), No_truncation_by_value_size(), REMOVE_EMPTY_WORKLIST::operator()(), SSA::Place_phi_node(), Primary_IV_preference(), CODEMAP::Print(), BITWISE_DCE::Print_node_usecnts(), BITWISE_DCE::Print_nodes_with_dead_bits(), Process_varfmt_for_cvt_io(), Proj_defstmt(), WOVP::Promote(), COPYPROP::Prop_const_init_scalar(), COPYPROP::Prop_ivar(), COPYPROP::Prop_var(), PRUNE_BOUND::Prune_boundary_sets(), BITWISE_DCE::Redundant_cvtl(), REGION_live_in_from_chi(), REGION_live_out_from_mu(), REGION_verify_bound(), Remap_aux_synonym(), SSU::Rename(), Rename_aux_id_list_to_bitpos(), DCE::Required_stmt(), RVI::RVI(), Safe_to_speculate(), IVR::Satisfy_primary_IV(), ETABLE::Save_replace_rhs_by_preg(), PRE_RVI_HOOKS::Setup_bitpos(), Simplify_Pointer(), Simplify_Pointer_Ver(), SSU::SPRE_candidate(), EXP_WORKLST::SPRE_perform_insert_delete(), ETABLE::Stmt_is_redundant(), Stores_proj_op_to_temp(), OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to(), Transfer_alias_class_to_occ_and_aux(), U64_LOWER_class(), COMP_UNIT::U64_lower_cr(), LOCAL_CLSC::Update_alias(), OPT_REVISE_SSA::Update_chi_list_for_old_var(), IVR::Update_mp_pragma_list(), OPT_REVISE_SSA::Update_mu_and_chi_list(), OPT_REVISE_SSA::Update_phis(), SSA::Value_number(), and CODEREP::Verify_CODEMAP().
| VER_STAB_ENTRY* OPT_STAB::Ver_stab_entry | ( | VER_ID | v | ) | const [inline] |
Definition at line 1037 of file opt_sym.h.
Referenced by OPT_PU_POINTS_TO_SUMMARIZER::Annotate_points_to_summary(), Compute_FSA_stmt_or_expr(), DSE::Dead_store_elim(), MU_LIST::Delete_def_at_entry_mus(), SSA::Du2cr(), Du_any_use(), Du_aux_id(), Du_coderep(), Du_real_use(), Du_set_coderep(), Du_version(), Du_zero_vers(), Enter_du(), STMTREP::Enter_lhs(), Find_Based_Pointer(), SSA::Find_zero_versions(), Gen_name(), Gen_name_chi(), Is_identity_asgn(), Its_ret_val_of_malloc(), SSA::Make_live_phi_chi_opnd(), SSA::Pointer_Alias_Analysis(), DSE::Prop_vsym_new_result(), Remap_ver_synonym(), SSA::Rename_rhs(), SSA::Resurrect_chi(), SSA::Revive_phi_chi_opnd(), DSE::Set_Required_CHI(), DSE::Set_Required_MU(), DSE::Set_Required_PHI(), DSE::Set_Required_WN(), Simplify_Pointer(), Simplify_Pointer_Ver(), OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to(), Transfer_alias_class_to_occ_and_aux(), and Update_iload_vsym().
Definition at line 1039 of file opt_sym.h.
References aux_stab, and DYN_ARRAY< T >::Lastidx().
Referenced by DSE::DSE(), OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), OPT_REVISE_SSA::Find_scalars_from_lda_indirects(), AUX_STAB_REVERSE_ITER::First(), AUX_STAB_ITER::Is_Empty(), OPT_REVISE_SSA::OPT_REVISE_SSA(), PRUNE_BOUND::PRUNE_BOUND(), SSU::SSU(), TRACK_CUR_VERSION::TRACK_CUR_VERSION(), and OPT_REVISE_SSA::Update_mu_and_chi_list().
| VER_LIST* OPT_STAB::Versions | ( | AUX_ID | var | ) | const [inline] |
Definition at line 1044 of file opt_sym.h.
References aux_stab.
Referenced by Elements_coderep(), NULL_coderep(), Pop_coderep(), Push_coderep(), Stack_elements(), Top_coderep(), and Top_nth_coderep().
Definition at line 1046 of file opt_sym.h.
References aux_stab.
Referenced by Compute_FSA_stmt_or_expr(), Du_stype(), Enter_ded_preg(), Enter_symbol(), and Identify_vsym().
Definition at line 1047 of file opt_sym.h.
References aux_stab.
Referenced by ALIAS_CLASSIFICATION::Base_id(), and Du_base_ofst().
| UINT8 OPT_STAB::Bit_size | ( | AUX_ID | var | ) | const [inline] |
Definition at line 1048 of file opt_sym.h.
References aux_stab.
Referenced by Du_bit_ofst(), Find_vsym_with_base_ofst_and_size(), Print_aux_entry(), and CODEREP::Rvi_home_wn().
| UINT8 OPT_STAB::Bit_ofst | ( | AUX_ID | var | ) | const [inline] |
Definition at line 1049 of file opt_sym.h.
References aux_stab.
Referenced by Du_bit_size(), Make_st_group(), and Print_aux_entry().
Definition at line 1050 of file opt_sym.h.
References aux_stab.
Referenced by VALNUM_FRE::_ivc_classify(), CODEMAP::Add_expr(), GVN::Apply_cr(), Change_expr_to_temp(), Collect_nested_ref_info(), Compute_region_mu_chi(), IVR::Convert_all_ivs(), Convert_EH_pragmas(), Du_st_ofst(), Enter_ded_preg(), STMTREP::Enter_lhs(), OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), OPT_REVISE_SSA::Find_scalars_from_lda_indirects(), OPT_TAIL::Fixup_exit(), OPT_REVISE_SSA::Fold_lda_indirects(), CSE::Get_new_temp_cr(), EXP_OCCURS::Get_temp_cr(), SSA::Get_zero_version_CR(), CODEMAP::Iload_folded(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), Raise_whiledo_stmt_to_doloop(), REGION_live_in_from_chi(), REGION_live_out_from_mu(), SPRE_force_rhs_to_preg(), SPRE_insert_load_to_preg(), OPT_REVISE_SSA::Update_chi_list_for_old_var(), IVR::Update_mp_pragma_list(), OPT_REVISE_SSA::Update_phis(), PRUNE_BOUND::Useset_expr(), Valid_doloop_condition(), and CODEREP::Verify_CODEMAP().
Definition at line 1051 of file opt_sym.h.
References aux_stab.
Referenced by CODEMAP::Add_expr(), ALIAS_CLASSIFICATION::Base_id(), and Collect_nested_ref_info().
Definition at line 1052 of file opt_sym.h.
References aux_stab.
Referenced by VALNUM_FRE::_ivc_classify(), CODEMAP::Add_expr(), ML_WHIRL_EMITTER::Build_loop_info(), Collect_nested_ref_info(), IVR::Convert_all_ivs(), Convert_EH_pragmas(), CR_st(), OPT_TAIL::Create_top_label(), SSA::Du2cr(), Enter_ded_preg(), STMTREP::Enter_lhs(), Enter_symbol(), OPT_TAIL::Exit_is_well_behaved(), CODEMAP::Expand_expr(), Find_Based_Pointer(), Find_doloop_init_stmt(), OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), OPT_REVISE_SSA::Find_scalars_from_lda_indirects(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld_cr(), Fix_do_loop(), OPT_TAIL::Fixup_exit(), Gen_stmt_wn(), Generate_call_mu_chi_by_ref(), SSA::Get_zero_version_CR(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), COPYPROP::Invertible_occurrences(), COPYPROP::Is_function_of_itself(), CODEREP::Is_non_volatile_terminal(), CODEREP::Is_rvi_const_candidate(), CODEREP::Is_rvi_lda_candidate(), ETABLE::LPRE_bottom_up_cr(), BITWISE_DCE::Make_bb_live(), Make_st_group(), Print_aux_entry(), COPYPROP::Prop_var(), COPYPROP::Propagatable(), CODEREP::Propagatable_for_ivr(), COPYPROP::Propagatable_thru_phis(), Raise_whiledo_stmt_to_doloop(), REGION_live_in_from_chi(), REGION_live_out_from_mu(), Rehash_tree_rec(), EXP_WORKLST::Remove_if_saved_to_preg(), DSE::Required_istore(), DSE::Required_stid(), DCE::Required_store(), IVR::Reset_dont_prop(), CODEREP::Rvi_home_wn(), CFG::Screen_cand(), OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to(), OPT_REVISE_SSA::Update_chi_list_for_old_var(), IVR::Update_mp_pragma_list(), OPT_REVISE_SSA::Update_phis(), PRUNE_BOUND::Useset_expr(), Valid_doloop_condition(), SSA::Value_number(), COPYPROP::Var_has_as_value_on_the_other_path(), Var_is_loop_index(), CODEREP::Var_type_conversion(), and STMTREP::Verify_CODEMAP().
| const char* OPT_STAB::St_name | ( | AUX_ID | var | ) | const [inline] |
Definition at line 1053 of file opt_sym.h.
References aux_stab.
Referenced by Generate_call_mu_chi_by_ref(), and Print_aux_entry().
Definition at line 1054 of file opt_sym.h.
References aux_stab.
Referenced by Adjust_vsym(), EMITTER::Compute_use_def_var(), Du_unique_vsym(), CODEMAP::Print(), and Print_aux_entry().
Definition at line 2818 of file opt_sym.cxx.
References Aux_stab_entry(), aux_stab_iter, FOR_ALL_NODE, i, Init, AUX_STAB_ENTRY::Reset_mp_firstprivate(), AUX_STAB_ENTRY::Reset_mp_lastlocal(), AUX_STAB_ENTRY::Reset_mp_reduction(), and AUX_STAB_ENTRY::Set_mp_shared().
Referenced by IVR::Preprocess_mp_pragma_list().
Definition at line 1057 of file opt_sym.h.
References aux_stab.
Referenced by IVR::Preprocess_mp_pragma_list().
Definition at line 1059 of file opt_sym.h.
References aux_stab.
Referenced by IVR::Preprocess_mp_pragma_list().
Definition at line 1060 of file opt_sym.h.
References aux_stab.
Referenced by IVR::Preprocess_mp_pragma_list().
Definition at line 1062 of file opt_sym.h.
References aux_stab.
Referenced by IVR::Preprocess_mp_pragma_list().
Definition at line 1064 of file opt_sym.h.
References aux_stab.
Referenced by Has_read_only_parm(), and CODEMAP::Print().
Definition at line 1065 of file opt_sym.h.
References aux_stab.
Referenced by SSA::Find_zero_versions(), and DSE::Set_Required_CHI().
| UINT16 OPT_STAB::Field_id | ( | AUX_ID | var | ) | const [inline] |
Definition at line 1067 of file opt_sym.h.
References aux_stab.
Referenced by CODEMAP::Iload_folded().
Definition at line 1069 of file opt_sym.h.
References aux_stab.
Referenced by Add_nested_call_mu_chi(), Allocate_mu_chi_and_virtual_var(), Compute_region_mu_chi(), DSE::DSE(), EXC_SCOPE_TRY_ITER::Elem(), Gen_exp_wn(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_mu_and_chi_list(), Identify_vsym(), SSU::Make_diff_ssu_version_at_phi(), CODEREP::Points_to(), COPYPROP::Propagatable(), REGION_add_aux_id_points_to(), REGION_add_to_bound(), REGION_live_in_from_chi(), REGION_live_out_from_mu(), REGION_merge_aux_id_points_to(), PRUNE_BOUND::REGION_remove_from_bound(), REGION_verify_bound(), Simplify_Pointer_Ver(), Transfer_alias_class_to_occ_and_aux(), and Update_aux_id_list().
Definition at line 1072 of file opt_sym.h.
References aux_stab.
Referenced by SSA::Get_zero_version_CR().
Definition at line 1073 of file opt_sym.h.
References aux_stab.
Referenced by SSA::Get_zero_version_CR().
Definition at line 1076 of file opt_sym.h.
References Coderep(), and STACK< T >::Push().
Referenced by CODEMAP::Add_expr(), COPYPROP::Copy_propagate(), STMTREP::Enter_lhs(), CODEMAP::Iload_folded(), ETABLE::SPRE_rename(), ETABLE::SPRE_rename_var(), SSA::Value_number(), and SSA::Value_number_mu_node().
Definition at line 1078 of file opt_sym.h.
References Coderep(), and STACK< T >::Elements().
Referenced by Check_stack().
Definition at line 1079 of file opt_sym.h.
References Coderep(), and STACK< T >::Top().
Referenced by COPYPROP::Copy_propagate(), COPYPROP::Invertible_occurrences(), COPYPROP::Prop_var(), COPYPROP::Propagatable(), COPYPROP::Rehash_inverted_expr(), ETABLE::SPRE_rename_var(), and ETABLE::Stmt_is_redundant().
Definition at line 1080 of file opt_sym.h.
References Coderep(), and STACK< T >::Top_nth().
Referenced by CODEMAP::Add_idef(), and Among_top_nth_coderep().
Definition at line 1081 of file opt_sym.h.
References Coderep(), and STACK< T >::Pop().
Referenced by COPYPROP::Copy_propagate(), CODEMAP::Iload_folded(), ETABLE::SPRE_rename(), and SSA::Value_number().
Definition at line 1082 of file opt_sym.h.
References Coderep(), and STACK< T >::Is_Empty().
Referenced by CODEMAP::Add_expr(), COPYPROP::Invertible_occurrences(), COPYPROP::Prop_var(), COPYPROP::Propagatable(), COPYPROP::Rehash_inverted_expr(), SSA::Value_number(), and SSA::Value_number_mu_node().
Definition at line 1084 of file opt_sym.h.
References aux_stab.
Referenced by DSE::Add_EH_exposed_use(), Gen_name(), Get_name(), SSA::Rename(), SSA::Rename_rhs(), and DSE::Update_MU_list_for_call().
Definition at line 1085 of file opt_sym.h.
References VER_STAB_ENTRY::Aux_id(), and Ver_stab_entry().
Referenced by CODEMAP::Cur_def(), SSA::Du2cr(), Du_base_ofst(), Du_bit_ofst(), Du_bit_size(), Du_is_virtual(), Du_is_volatile(), Du_st_ofst(), Du_stype(), Du_ty(), Du_unique_vsym(), STMTREP::Enter_lhs(), CODEMAP::Iload_folded(), Update_iload_vsym(), and DSE::Update_MU_list_for_call().
Definition at line 1086 of file opt_sym.h.
References Ver_stab_entry(), and VER_STAB_ENTRY::Version().
Referenced by CODEMAP::Cur_def(), SSA::Du2cr(), and STMTREP::Enter_lhs().
| OPT_VAR_TYPE OPT_STAB::Du_stype | ( | VER_ID | du | ) | const [inline] |
| UINT8 OPT_STAB::Du_bit_size | ( | VER_ID | du | ) | const [inline] |
| UINT8 OPT_STAB::Du_bit_ofst | ( | VER_ID | du | ) | const [inline] |
Definition at line 1092 of file opt_sym.h.
References Du_aux_id(), and St_ofst().
Referenced by SSA::Du2cr().
Definition at line 1093 of file opt_sym.h.
References VER_STAB_ENTRY::Coderep(), and Ver_stab_entry().
Referenced by CODEMAP::Cur_def(), SSA::Get_zero_version_CR(), and CODEMAP::Iload_folded().
Definition at line 1094 of file opt_sym.h.
References VER_STAB_ENTRY::Any_use(), and Ver_stab_entry().
Referenced by Du_virtual_use(), and SSA::Value_number().
Definition at line 1095 of file opt_sym.h.
References VER_STAB_ENTRY::Real_use(), and Ver_stab_entry().
Referenced by Du_virtual_use().
Definition at line 1098 of file opt_sym.h.
References Ver_stab_entry(), and VER_STAB_ENTRY::Zero_vers().
Referenced by SSA::Resurrect_chi(), SSA::Resurrect_phi(), and SSA::Value_number().
Definition at line 1099 of file opt_sym.h.
References VER_STAB_ENTRY::Set_coderep(), and Ver_stab_entry().
Referenced by CODEMAP::Cur_def(), SSA::Du2cr(), STMTREP::Enter_lhs(), and SSA::Get_zero_version_CR().
Definition at line 1101 of file opt_sym.h.
References aux_stab.
Referenced by Add_nested_call_mu_chi(), EMITTER::Compute_incomplete_defs(), EMITTER::Compute_use_def_var(), EMITTER::Compute_use_def_zero_ver(), EMITTER::Compute_use_def_zero_version_var(), Du_is_virtual(), Enter_symbol(), Generate_asm_mu_chi(), SSU::Make_diff_ssu_version(), DCE::Mark_phinode_live(), DSE::Set_Required_CHI(), Transfer_alias_class_to_occ_and_aux(), and Update_attr_cache().
Definition at line 1102 of file opt_sym.h.
References aux_stab.
Referenced by Adjust_vsym(), Canonicalize(), EMITTER::Compute_incomplete_defs(), EMITTER::Compute_use_def_stmt(), EMITTER::Compute_use_def_var(), EMITTER::Compute_use_def_zero_ver(), STMTREP::Enter_lhs(), Enter_symbol(), Generate_mu_and_chi_list(), Has_read_only_parm(), SSU::Make_diff_ssu_version(), Make_st_group(), Update_aux_id_list(), and Valid_doloop_condition().
Definition at line 1105 of file opt_sym.h.
References aux_stab.
Referenced by Add_nested_call_mu_chi(), Du_is_volatile(), Enter_symbol(), CODEMAP::Fix_zero_version(), OPT_REVISE_SSA::Fold_lda_iloads(), OPT_REVISE_SSA::Fold_lda_indirects(), Generate_asm_mu_chi(), Generate_mu_and_chi_list(), SSA::Get_zero_version_CR(), CFG::Is_simple_expr(), TRACK_CUR_VERSION::Is_volatile(), SSA::Rename_rhs(), CFG::Screen_cand(), Simplify_Pointer_Ver(), and CODEREP::Verify_CODEMAP().
Definition at line 1106 of file opt_sym.h.
References Du_aux_id(), and Is_volatile().
Referenced by CODEMAP::Cur_def(), SSA::Du2cr(), STMTREP::Enter_lhs(), and SSA::Get_zero_version_CR().
| AUX_ID_LIST* OPT_STAB::Aux_id_list | ( | AUX_ID | id | ) | const [inline] |
Definition at line 1108 of file opt_sym.h.
References aux_stab.
Referenced by Generate_exit_mu(), Generate_mu_and_chi_list(), Update_iload_vsym(), and Update_istore_vsym().
| REGION_LEVEL OPT_STAB::Rgn_level | ( | void | ) | const [inline] |
Definition at line 1111 of file opt_sym.h.
References _rgn_level.
Referenced by Allocate_mu_chi_and_virtual_var(), Convert_ST_to_AUX(), Count_syms(), Generate_mu_and_chi_list(), Remap_aux_synonym(), Remap_ver_synonym(), and SSA::Rename().
Definition at line 3268 of file opt_sym.cxx.
References _ver_stab, i, VER_STAB_ENTRY::Init(), NO_STMT, NULL, Set_version(), Stack(), UINT32, Ver_stab_entry(), and Version().
Referenced by SSA::Construct(), Gen_name_chi(), Gen_name_phi(), SSA::Rename(), and SSA::Rename_rhs().
Definition at line 3284 of file opt_sym.cxx.
References PHI_NODE::Aux_id(), Gen_name(), and PHI_NODE::Set_result().
Referenced by SSA::Rename().
Definition at line 3296 of file opt_sym.cxx.
References CHI_NODE::Aux_id(), Gen_name(), VER_STAB_ENTRY::Set_chi_wn(), CHI_NODE::Set_result(), and Ver_stab_entry().
Referenced by SSA::Rename().
Definition at line 3310 of file opt_sym.cxx.
References Stack().
Referenced by SSA::Rename(), and SSA::Rename_rhs().
| AUX_ID OPT_STAB::Enter_symbol | ( | OPERATOR | opr, | |
| ST * | st, | |||
| INT64 | ofst, | |||
| TY_IDX | wn_object_ty, | |||
| BOOL | is_volatile, | |||
| WN * | wn = NULL | |||
| ) |
Definition at line 701 of file opt_sym.cxx.
References ALIAS_DUMP_FLAG, aux_stab, Aux_stab_entry(), BASE_IS_FIXED, BOOL, CLASS_VAR, AUX_STAB_ENTRY::Clear_flags(), Desc_type_byte_size(), Expand_ST_into_base_and_ofst(), FALSE, FLD_And_Offset_From_Field_Id(), FLD_bofst, FLD_bsize, FLD_type, fprintf(), Get_mtype_class(), Get_Trace(), idx, POINTS_TO::Init(), INITV_kind(), INITV_ofst(), INITV_st(), Initv_Table, INITVKIND_SYMOFF, INT32, INT64, Is_real_var(), Is_True, Is_virtual(), Is_volatile(), ST_CHAIN_INFO::List_head(), mtype, MTYPE_BS, MTYPE_M, MTYPE_size_min, MTYPE_UNKNOWN, DYN_ARRAY< T >::Newidx(), NULL, OPERATOR_is_scalar_store(), OPR_LDA, OPR_LDBITS, OPR_LDID, OPR_STBITS, OPR_STID, AUX_STAB_ENTRY::Points_to(), SCLASS_PSTATIC, SCLASS_REG, AUX_STAB_ENTRY::Set_aux_id_list(), AUX_STAB_ENTRY::Set_base(), AUX_STAB_ENTRY::Set_base_byte_ofst(), AUX_STAB_ENTRY::Set_base_kind(), AUX_STAB_ENTRY::Set_bit_ofst_size(), AUX_STAB_ENTRY::Set_byte_size(), AUX_STAB_ENTRY::Set_const_init(), AUX_STAB_ENTRY::Set_def_bbs(), AUX_STAB_ENTRY::Set_dmod(), AUX_STAB_ENTRY::Set_field_id(), AUX_STAB_ENTRY::Set_has_nested_ref(), POINTS_TO::Set_hl_ty(), AUX_STAB_ENTRY::Set_home_sym(), ST_CHAIN_INFO::Set_list_head(), AUX_STAB_ENTRY::Set_mclass(), AUX_STAB_ENTRY::Set_mtype(), AUX_STAB_ENTRY::Set_no_register(), AUX_STAB_ENTRY::Set_nonzerophis(), AUX_STAB_ENTRY::Set_spre_node(), AUX_STAB_ENTRY::Set_st(), AUX_STAB_ENTRY::Set_st_group(), AUX_STAB_ENTRY::Set_st_ofst(), Set_ST_pt_to_unique_mem, AUX_STAB_ENTRY::Set_stype(), AUX_STAB_ENTRY::Set_synonym(), AUX_STAB_ENTRY::Set_ty(), AUX_STAB_ENTRY::Set_value_size(), AUX_STAB_ENTRY::Set_volatile(), AUX_STAB_ENTRY::Set_zero_cr(), St(), st_chain_map, ST_class, ST_has_initv(), ST_has_nested_ref, ST_is_const_initialized(), ST_is_initialized, ST_name, ST_sclass, ST_st_idx, St_Table, ST_type, strlen(), strncmp(), Stype(), sym, TFile, TP_GLOBOPT, TRUE, TY_is_volatile, TY_size, UINT, UINT32, UINT64, UINT8, VT_LDA_SCALAR, VT_LDA_VSYM, VT_NO_LDA_SCALAR, VT_OTHER, VT_SPECIAL_VSYM, VT_UNIQUE_VSYM, WN_bit_offset(), WN_bit_size(), WN_desc(), WN_field_id(), WN_hl_object_ty(), WN_rtype(), WN_ty(), and WOPT_Set_Unique_Pt.
Referenced by Convert_ST_to_AUX(), OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), OPT_REVISE_SSA::Find_scalars_from_lda_indirects(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld(), and OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld_cr().
Definition at line 1034 of file opt_sym.cxx.
References _st_chain_pool, POINTS_TO::Analyze_ST(), aux_stab, Aux_stab_entry(), AUX_STAB_ENTRY::Clear_flags(), CXX_NEW, FALSE, idx, Is_True, ST_CHAIN_INFO::List_head(), MTYPE_UNKNOWN, DYN_ARRAY< T >::Newidx(), NULL, AUX_STAB_ENTRY::Points_to(), AUX_STAB_ENTRY::Set_home_sym(), ST_CHAIN_INFO::Set_list_head(), AUX_STAB_ENTRY::Set_mclass(), AUX_STAB_ENTRY::Set_mtype(), AUX_STAB_ENTRY::Set_nonzerophis(), AUX_STAB_ENTRY::Set_spre_node(), AUX_STAB_ENTRY::Set_st(), AUX_STAB_ENTRY::Set_st_group(), AUX_STAB_ENTRY::Set_st_ofst(), AUX_STAB_ENTRY::Set_stype(), AUX_STAB_ENTRY::Set_synonym(), AUX_STAB_ENTRY::Set_value_size(), AUX_STAB_ENTRY::Set_zero_cr(), St(), st_chain_map, St_ofst(), AUX_STAB_ENTRY::St_ofst(), ST_st_idx, ST_type, Stype(), sym, TY_size, and VT_NO_LDA_SCALAR.
Referenced by Convert_ST_to_AUX().
Definition at line 3011 of file opt_sym.cxx.
References _ac_2_vsym_map, _alias_classification, ALIAS_CLASSIFICATION::Alias_class(), ALIAS_DUMP_FLAG, Alias_Pointer_Parms, aux_stab, Aux_stab_entry(), POINTS_TO::Based_sym(), BOOL, CLASS_VAR, POINTS_TO::Copy_fully(), Create_vsym(), Default_vsym(), EXPR_IS_ANY, Find_addr_recur(), Find_vsym_with_base(), Find_vsym_with_st(), FmtAssert, fprintf(), Get_Trace(), POINTS_TO::Init(), INT64, Is_True, NULL, offset, OPERATOR_is_load(), OPERATOR_is_scalar_istore(), OPERATOR_is_store(), OPR_ASM_INPUT, OPR_LDA, OPR_LDID, OPR_MSTORE, OPR_PARM, OPTIMISTIC_AC_ID, PESSIMISTIC_AC_ID, Points_to(), AUX_STAB_ENTRY::Points_to(), Print_ST(), POINTS_TO::Restricted(), SCLASS_FORMAL, POINTS_TO::Set_alias_class(), POINTS_TO::Set_based_sym(), POINTS_TO::Set_default_vsym(), Set_default_vsym(), POINTS_TO::Set_restricted(), AUX_STAB_ENTRY::Set_st(), AUX_STAB_ENTRY::Set_stype(), POINTS_TO::Set_unique_pt(), AUX_STAB_ENTRY::Special_vsym(), ST_class, ST_Has_Dope_Vector(), ST_is_value_parm, ST_pt_to_unique_mem, ST_sclass, ST_type, Stype(), TFile, TP_GLOBOPT, TRUE, TY_is_restrict, POINTS_TO::Unique_pt(), Update_From_Restricted_Map(), VT_SPECIAL_VSYM, VT_UNIQUE_VSYM, WN_aux(), WN_kid0(), WN_kid1(), WN_offset(), WN_operator(), WOPT_Enable_Unique_Pt_Vsym, and WOPT_Enable_Vsym_Unique.
Referenced by Allocate_mu_chi_and_virtual_var(), Generate_asm_mu_chi(), and OPT_REVISE_SSA::Get_new_occ().
Definition at line 1128 of file opt_sym.h.
References VER_STAB_ENTRY::Set_stmt(), and Ver_stab_entry().
Referenced by SSA::Construct(), and SSA::Rename().
Definition at line 1131 of file opt_sym.h.
References VER_STAB_ENTRY::Set_stmt(), and Ver_stab_entry().
Definition at line 1134 of file opt_sym.h.
References VER_STAB_ENTRY::Set_stmt(), and Ver_stab_entry().
Definition at line 1137 of file opt_sym.h.
References ENTRY_STMT, VER_STAB_ENTRY::Set_type(), and Ver_stab_entry().
Definition at line 1140 of file opt_sym.h.
References _ver_pool, MEM_DUMP_FLAG, OPT_POOL_Delete, and OPT_POOL_Pop.
Referenced by SSA::Create_CODEMAP().
Definition at line 1155 of file opt_sym.h.
References _local_static, and BS_MemberP().
Referenced by OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var().
Definition at line 1156 of file opt_sym.h.
References _dedicated, and BS_MemberP().
Referenced by SSA::Insert_identity_assignment_4_loopexit().
Definition at line 1162 of file opt_sym.h.
References _call_by_value, and BS_MemberP().
Referenced by ALIAS_RULE::Alias_Set_Call_By_Value().
Definition at line 1163 of file opt_sym.h.
References _call_by_ref, and BS_MemberP().
Referenced by ALIAS_RULE::Alias_Set_Call_By_Ref().
Definition at line 1164 of file opt_sym.h.
References _asm_alias, and BS_MemberP().
Referenced by ALIAS_RULE::Alias_Set_Asm().
Definition at line 1168 of file opt_sym.h.
References _addr_saved, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1169 of file opt_sym.h.
References _addr_passed, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1170 of file opt_sym.h.
References _addr_used_locally, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1171 of file opt_sym.h.
References _external, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1172 of file opt_sym.h.
References _local_static, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1173 of file opt_sym.h.
References _dedicated, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1174 of file opt_sym.h.
References _ref_formal, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1175 of file opt_sym.h.
References _named, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1176 of file opt_sym.h.
References _const, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1178 of file opt_sym.h.
References _unique_pt, and BS_Union1D().
Referenced by Collect_ST_attr().
Definition at line 1179 of file opt_sym.h.
References _virtual_var, and BS_Union1D().
Referenced by Collect_ST_attr(), Update_alias_set_with_virtual_var(), and Update_attr_cache().
Definition at line 1180 of file opt_sym.h.
References _weak_var, and BS_Union1D().
Referenced by Collect_ST_attr(), and Update_attr_cache().
Definition at line 1181 of file opt_sym.h.
References _weak_base, and BS_Union1D().
Referenced by Collect_ST_attr().
Definition at line 1183 of file opt_sym.h.
References _addr_saved.
Referenced by Collect_ST_attr(), Generate_asm_mu_chi(), Print_aux_entry(), Update_alias_set_with_virtual_var(), and Update_return_mu().
Definition at line 1184 of file opt_sym.h.
References _addr_passed.
Referenced by Collect_ST_attr(), Generate_asm_mu_chi(), Print_aux_entry(), and Update_alias_set_with_virtual_var().
Definition at line 1185 of file opt_sym.h.
References _addr_used_locally.
Referenced by Collect_ST_attr(), Generate_asm_mu_chi(), and Update_alias_set_with_virtual_var().
Definition at line 1186 of file opt_sym.h.
References _external.
Referenced by Collect_ST_attr(), Print_aux_entry(), and Update_alias_set_with_virtual_var().
Definition at line 1187 of file opt_sym.h.
References _local_static.
Referenced by Generate_exit_mu(), and Update_return_mu().
Definition at line 1188 of file opt_sym.h.
References _dedicated.
Referenced by Collect_ST_attr(), and Transfer_alias_class_to_occ_and_aux().
Definition at line 1193 of file opt_sym.h.
References _indirect.
Referenced by ALIAS_RULE::Alias_Set_Indirect(), LOCAL_CLSC::Get_aux_id_by_alias(), and Update_alias_set_with_virtual_var().
Definition at line 1194 of file opt_sym.h.
References _inaccessible_to_callees.
Referenced by Incorporate_alias_class_info(), Transfer_alias_class_to_occ_and_aux(), and Update_alias_set_with_virtual_var().
Definition at line 1195 of file opt_sym.h.
References _call_by_value.
Referenced by Update_alias_set_with_virtual_var().
Definition at line 1196 of file opt_sym.h.
References _call_by_ref.
Referenced by Update_alias_set_with_virtual_var().
Definition at line 1197 of file opt_sym.h.
References _virtual_var.
Referenced by Generate_mu_and_chi_list(), and Update_alias_set_with_virtual_var().
Definition at line 1199 of file opt_sym.h.
References _weak_base.
Referenced by Generate_mu_and_chi_list().
Definition at line 1200 of file opt_sym.h.
References _asm_alias.
Referenced by Update_alias_set_with_virtual_var().
Definition at line 1212 of file opt_sym.h.
References _indirect.
Referenced by Collect_ST_attr(), and Update_alias_set_with_virtual_var().
Definition at line 1213 of file opt_sym.h.
References _inaccessible_to_callees.
Referenced by Collect_ST_attr(), Incorporate_alias_class_info(), and Transfer_alias_class_to_occ_and_aux().
Definition at line 1214 of file opt_sym.h.
References _call_by_value.
Referenced by Collect_ST_attr(), and Update_alias_set_with_virtual_var().
Definition at line 1215 of file opt_sym.h.
References _call_by_ref.
Referenced by Collect_ST_attr(), and Update_alias_set_with_virtual_var().
Definition at line 1219 of file opt_sym.h.
References _asm_alias.
Referenced by Collect_ST_attr(), and Update_alias_set_with_virtual_var().
Definition at line 1223 of file opt_sym.h.
References _wn_sym_map.
Referenced by Get_generic_chi_list(), Get_mem_chi_list(), Get_mem_mu_node(), Get_occ(), Get_stmt_chi_list(), Get_stmt_mu_list(), and ~OPT_STAB().
Definition at line 1224 of file opt_sym.h.
References _wn_box_refs.
Referenced by Add_black_box_ref(), Black_box_refs(), and ~OPT_STAB().
Definition at line 1225 of file opt_sym.h.
References _wn_box_defs.
Referenced by Add_black_box_def(), Black_box_defs(), and ~OPT_STAB().
Definition at line 1233 of file opt_sym.h.
References _default_vsym.
Referenced by Adjust_vsym(), Compute_FFA(), Compute_FFA_for_copy(), EMITTER::Compute_use_def_stmt(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_exit_mu(), OPT_REVISE_SSA::Get_new_occ(), Identify_vsym(), ESSA::Ilod_modified_phi_result(), ESSA::Ilod_modified_real_occ_phi_opnd(), ESSA::Ilod_modified_real_occ_real_occ(), OPT_REVISE_SSA::Insert_mu_and_chi_list_for_new_var(), SSA::Place_phi_node(), Print_aux_entry(), COPYPROP::Propagatable(), Update_alias_set_with_virtual_var(), OPT_REVISE_SSA::Update_chi_list_for_old_var(), Update_iload_vsym(), Update_istore_vsym(), and OPT_REVISE_SSA::Update_phis().
Definition at line 1234 of file opt_sym.h.
References _default_vsym.
Referenced by Adjust_vsym(), OPT_REVISE_SSA::Get_new_occ(), and Identify_vsym().
Definition at line 1236 of file opt_sym.h.
References _return_vsym.
Referenced by Compute_FFA(), Compute_FSA_stmt_or_expr(), DCE::DCE(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_exit_mu(), SSU::Make_diff_ssu_version(), Print_aux_entry(), REGION_add_to_bound(), PRUNE_BOUND::REGION_remove_from_bound(), SSU::Traverse_mu_read(), Update_alias_set_with_virtual_var(), and CODEREP::Verify_CODEMAP().
Definition at line 1239 of file opt_sym.h.
References _phase.
Referenced by Compute_FSA_stmt_or_expr(), Convert_ST_to_AUX(), Create_preg(), CODEREP::Propagatable_for_ivr(), DSE::Required_istore(), and DCE::Required_istore().
| POINTS_TO_LIST * OPT_STAB::Black_box_refs | ( | const WN * | wn | ) | const |
Definition at line 3321 of file opt_sym.cxx.
References WN_box_refs(), and WN_MAP_Get.
Referenced by Add_black_box_ref(), and Compute_black_box_mu_chi().
| POINTS_TO_LIST * OPT_STAB::Black_box_defs | ( | const WN * | wn | ) | const |
Definition at line 3328 of file opt_sym.cxx.
References WN_box_defs(), and WN_MAP_Get.
Referenced by Add_black_box_def(), and Compute_black_box_mu_chi().
Definition at line 3335 of file opt_sym.cxx.
References Black_box_refs(), CXX_NEW, NULL, POINTS_TO_LIST::Prepend(), WN_box_refs(), and WN_MAP_Set.
Referenced by Convert_IO_statement(), and Process_varfmt_for_cvt_io().
Definition at line 3349 of file opt_sym.cxx.
References Black_box_defs(), CXX_NEW, NULL, POINTS_TO_LIST::Prepend(), WN_box_defs(), and WN_MAP_Set.
Referenced by Convert_IO_statement(), and Process_varfmt_for_cvt_io().
Definition at line 1252 of file opt_sym.h.
References _flow_free_analysis.
Referenced by Simplify_Pointer().
Definition at line 1253 of file opt_sym.h.
References _flow_free_analysis.
Referenced by Analyze_Based_Pointer(), Find_Based_Pointer(), and Simplify_Pointer().
Definition at line 1254 of file opt_sym.h.
References _flow_free_analysis, and TRUE.
Referenced by Compute_FFA(), and Compute_FFA_for_copy().
Definition at line 1255 of file opt_sym.h.
References _flow_free_analysis, and FALSE.
Referenced by Compute_FSA().
Definition at line 3367 of file opt_alias_analysis.cxx.
References ALIAS_CLASSIFICATION::Alias_class(), POINTS_TO::Alias_class(), Alias_classification(), ALIAS_DUMP_FLAG, CHI_NODE::Aux_id(), OCC_TAB_ENTRY::Aux_id(), MU_NODE::Aux_id(), aux_stab, Aux_stab_entry(), POINTS_TO::Base(), BASE_IS_FIXED, POINTS_TO::Base_kind(), BOOL, BS_Union1D(), POINTS_TO::Byte_Ofst(), CLASS_FUNC, cnode, Dedicated(), DevWarn, FALSE, fdump_tree_no_st(), FmtAssert, fprintf(), Get_occ(), Get_stmt_chi_list(), Get_stmt_mu_list(), Get_Trace(), SLIST::Head(), i, Inaccessible_to_callees(), INT, INT32, POINTS_TO::Ip_alias_class(), Is_True, Is_virtual(), Lmt_DevWarn, POINTS_TO::Meet_info_from_alias_class(), mINT64, SLIST_NODE::Next(), NULL, OFST_IS_FIXED, POINTS_TO::Ofst_kind(), OPCODE_is_black_box(), OPCODE_is_load(), OPCODE_is_store(), OPCODE_operator(), OPERATOR_is_scalar_load(), OPERATOR_is_scalar_store(), MU_NODE::Opnd(), CHI_NODE::Opnd(), OPR_ILOAD, OPR_INTCONST, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_ISTORE, OPR_LDA, OPR_PARM, OPTIMISTIC_AC_ID, PESSIMISTIC_AC_ID, OCC_TAB_ENTRY::Points_to(), Points_to(), AUX_STAB_ENTRY::Points_to(), REGION_has_black_regions(), SLIST::Remove(), CHI_NODE::Result(), Rule(), POINTS_TO::Set_alias_class(), POINTS_TO::Set_byte_ofst(), POINTS_TO::Set_byte_size(), Set_inaccessible_to_callees(), POINTS_TO::Set_ip_alias_class(), POINTS_TO::Set_local(), POINTS_TO::Set_not_alloca_mem(), Simplify_Pointer(), ST_class, TFile, TP_GLOBOPT, TRUE, UINT, POINTS_TO::Unique_pt(), Ver_stab_entry(), WN_aux(), WN_const_val(), WN_intrinsic(), WN_kid(), WN_kid0(), WN_kid_count(), WN_MAP32_Get, WN_MAP_ALIAS_CLASS, WN_opcode(), WN_operator(), WN_Parm_By_Reference, WOPT_Alias_Class_Limit, WOPT_Enable_Alias_Classification, WOPT_Enable_Debug_Inconsistent_Ip_Class, WOPT_Enable_Tail_Recur, WOPT_Ip_Alias_Class_Limit, and ALIAS_CLASSIFICATION::Writable_by_call().
Referenced by Compute_FFA().
Definition at line 3870 of file opt_alias_analysis.cxx.
References _cfg, ALIAS_DUMP_FLAG, Allocate_mu_chi_and_virtual_var(), Aux_stab_entry(), BOOL, Cr_sr_annot_mgr(), DBar, Default_vsym(), DevWarn, FALSE, BB_NODE::Firststmt(), FOR_ALL_ELEM, FOR_ALL_NODE, fprintf(), Generate_mu_and_chi_list(), Get_Trace(), Init, POINTS_TO::Ip_alias_class(), Is_True, AUX_STAB_ENTRY::Is_virtual(), BB_NODE::Laststmt(), next, OPTIMISTIC_AC_ID, PESSIMISTIC_AC_ID, AUX_STAB_ENTRY::Points_to(), MEMOP_ANNOT_CR_SR_MGR::Print(), Print_alias_info(), AUX_STAB_ENTRY::Prop_chain_seen(), Return_vsym(), Rule(), Set_FFA(), POINTS_TO::Set_hl_ty(), POINTS_TO::Set_ip_alias_class(), AUX_STAB_ENTRY::Set_prop_chain_seen(), POINTS_TO::Set_ty(), AUX_STAB_ENTRY::St(), AUX_STAB_ENTRY::St_chain(), ST_name, TFile, TP_GLOBOPT, Transfer_alias_class_to_occ_and_aux(), Update_alias_set_with_virtual_var(), and vector.
Referenced by Pre_Optimizer().
Definition at line 4038 of file opt_alias_analysis.cxx.
References Allocate_mu_chi_and_virtual_var(), Default_vsym(), Generate_mu_and_chi_list(), Get_mem_chi_list(), CHI_LIST::New_chi_node(), Occ_pool(), and Set_FFA().
Referenced by SSA::Insert_identity_assignment_4_loopexit().
Definition at line 4274 of file opt_alias_analysis.cxx.
References _cfg, Compute_FSA_dominator_order(), CFG::Entry_bb(), and Set_FSA().
Referenced by SSA::Pointer_Alias_Analysis().
Definition at line 3414 of file opt_sym.cxx.
References ALIAS_DUMP_FLAG, Cfg(), cnode, FOR_ALL_NODE, fprintf(), Get_generic_chi_list(), Get_mem_mu_node(), Get_occ(), Get_stmt_mu_list(), Get_Trace(), i, idx, Init, INT32, OCC_TAB_ENTRY::Is_stmt(), Is_True, NULL, OPERATOR_is_black_box(), OPERATOR_is_scf(), MU_NODE::Opnd(), CHI_NODE::Opnd(), OPR_ASM_STMT, OPR_COMPGOTO, OPR_EXC_SCOPE_BEGIN, OPR_REGION, REGION_get_rid(), Rgn_level(), RID_level, s, MU_NODE::Set_opnd(), CHI_NODE::Set_opnd(), VER_STAB_ENTRY::Synonym(), TFile, TP_GLOBOPT, Ver_stab_entry(), WN_has_chi(), WN_has_mu(), WN_has_ver(), WN_kid(), WN_kid_count(), WN_operator(), WN_set_ver(), and WN_ver().
Referenced by SSA::Pointer_Alias_Analysis().
Definition at line 1465 of file opt_alias_analysis.cxx.
References BB_ENTRY, BB_REGIONSTART, Enter_occ_tab(), BB_NODE::Firststmt(), Is_True, BB_NODE::Kind(), BB_NODE::Laststmt(), BB_NODE::Linenum(), MTYPE_V, opc, OPCODE_make_op(), OPR_OPT_CHI, BB_NODE::Set_firststmt(), BB_NODE::Set_laststmt(), wn, WN_Create(), and WN_Set_Linenum().
Referenced by Create_entry_chi().
Definition at line 158 of file opt_alias_analysis.cxx.
References POINTS_TO::Bit_Size(), POINTS_TO::Byte_Ofst(), i, INT32, POINTS_TO::Is_pointer(), Is_True, mINT64, OFST_IS_FIXED, OFST_IS_UNKNOWN, POINTS_TO::Ofst_kind(), OPR_ARRAY, OPR_INTCONST, POINTS_TO::Set_byte_ofst(), POINTS_TO::Set_byte_size(), POINTS_TO::Set_ofst_kind(), WN_const_val(), WN_element_size(), WN_kid(), WN_num_dim, and WN_operator().
Referenced by Simplify_Pointer().
| ID_MAP<ST_CHAIN_INFO *, ST_IDX>* OPT_STAB::St_chain_map | ( | void | ) | const [inline] |
Definition at line 1270 of file opt_sym.h.
References st_chain_map.
Referenced by OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), and OPT_REVISE_SSA::Find_scalars_from_lda_indirects().
Definition at line 1275 of file opt_sym.h.
References _points_to_globals.
Referenced by OPT_STAB(), and STMTREP::Points_to().
Definition at line 515 of file opt_alias_analysis.cxx.
References _ver_pool, ALIAS_DUMP_FLAG, VER_STAB_ENTRY::Aux_id(), Aux_stab_entry(), BASE_IS_DYNAMIC, BASE_IS_UNKNOWN, POINTS_TO::Base_kind(), VER_STAB_ENTRY::Bb(), CHECK_POINTS_TO, VER_STAB_ENTRY::Chi(), CHI_STMT, VER_STAB_ENTRY::Chi_wn(), CLASS_PREG, POINTS_TO::Copy_fully(), CXX_NEW, BB_NODE::Dominates(), ENTRY_STMT, EXPR_IS_ADDR, EXPR_IS_ANY, EXPR_IS_BEING_PROCESSED, EXPR_IS_UNKNOWN, POINTS_TO::Expr_kind(), FmtAssert, FOR_ALL_ELEM, fprintf(), Get_occ(), Get_Trace(), PT_MEM_ANNOT::Has_annotation(), i, BB_NODE::Id(), Init, POINTS_TO::Init(), INT32, POINTS_TO::Invalidate_ptr_info(), Is_volatile(), Its_ret_val_of_malloc(), SLIST_NODE::Len(), POINTS_TO::Meet(), POINTS_TO::Mem_annot(), NULL, OFST_IS_FIXED, OFST_IS_UNKNOWN, POINTS_TO::Ofst_kind(), OPERATOR_is_scalar_istore(), PHI_NODE::Opnd(), CHI_NODE::Opnd(), OPR_CALL, OPR_STID, VER_STAB_ENTRY::Phi(), PHI_STMT, VER_STAB_ENTRY::Points_to(), OCC_TAB_ENTRY::Points_to(), Points_to(), AUX_STAB_ENTRY::Points_to(), BB_NODE::Pred(), POINTS_TO::Print(), pt, ptr, POINTS_TO::Reset_attr(), Rule(), POINTS_TO::Set_base(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_bit_ofst_size(), POINTS_TO::Set_byte_ofst(), POINTS_TO::Set_byte_size(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_global(), POINTS_TO::Set_iofst_kind(), POINTS_TO::Set_malloc_id(), POINTS_TO::Set_ofst_kind(), POINTS_TO::Set_pointer(), POINTS_TO::Set_pointer_as_aux_id(), POINTS_TO::Set_pointer_ver(), VER_STAB_ENTRY::Set_points_to(), Simplify_Pointer(), AUX_STAB_ENTRY::St(), ST_class, TFile, TP_GLOBOPT, VER_STAB_ENTRY::Type(), Ver_stab_entry(), Warn_todo(), WHIRL_STMT, VER_STAB_ENTRY::Wn(), WN_kid0(), WN_linenum(), WN_operator(), WOPT_Enable_Pt_Keep_Track_Ptr, and WOPT_Enable_Pt_Summary.
Referenced by Simplify_Pointer(), and OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to().
Definition at line 235 of file opt_alias_analysis.cxx.
References alias1, BASE_IS_UNKNOWN, CHECK_POINTS_TO, POINTS_TO::Copy_fully(), EXPR_IS_ADDR, EXPR_IS_BEING_PROCESSED, EXPR_IS_INT, EXPR_IS_UNKNOWN, POINTS_TO::Expr_kind(), POINTS_TO::Init(), POINTS_TO::Int_const_val(), POINTS_TO::Int_is_constant(), POINTS_TO::Invalidate_ptr_info(), POINTS_TO::Iofst_kind(), KIND_POINTER, POINTS_TO::Meet(), OFST_IS_FIXED, OFST_IS_UNKNOWN, POINTS_TO::Ofst_kind(), OPR_ADD, OPR_ARRAY, OPR_ILDBITS, OPR_ILOAD, OPR_INTCONST, OPR_INTRINSIC_OP, OPR_LDA, OPR_LDBITS, OPR_LDID, OPR_NEG, OPR_PAREN, POINTS_TO::Set_base_kind(), POINTS_TO::Set_const_val(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_iofst_kind(), POINTS_TO::Set_ofst_kind(), POINTS_TO::Shift_ofst(), Simplify_Pointer(), TY_kind, WN_const_val(), WN_intrinsic(), WN_kid0(), WN_kid1(), WN_object_ty(), and WN_operator().
Referenced by Simplify_Pointer().
Definition at line 784 of file opt_alias_analysis.cxx.
References POINTS_TO::Analyze_Lda_Base(), Analyze_Range(), POINTS_TO::Analyze_ST_as_base(), VER_STAB_ENTRY::Aux_id(), Aux_stab_entry(), BASE_IS_DYNAMIC, BASE_IS_UNKNOWN, CHECK_POINTS_TO, EXPR_IS_ADDR, EXPR_IS_UNKNOWN, FFA(), FSA(), POINTS_TO::Invalidate_ptr_info(), OFST_IS_FIXED, OFST_IS_UNKNOWN, OPR_ADD, OPR_ARRAY, OPR_CVT, OPR_ILDBITS, OPR_ILOAD, OPR_INTRINSIC_OP, OPR_LDA, OPR_LDBITS, OPR_LDID, OPR_NEG, OPR_PAREN, OPR_SUB, POINTS_TO::Set_base(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_bit_ofst_size(), POINTS_TO::Set_byte_ofst(), POINTS_TO::Set_byte_size(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_ofst_kind(), Simplify_Pointer_Arith(), Simplify_Pointer_Ver(), AUX_STAB_ENTRY::St(), ST_type, TY_is_restrict, Ver_stab_entry(), WN_intrinsic(), WN_kid0(), WN_offset(), WN_operator(), WN_ty(), and WN_ver().
Referenced by Analyze_Base_Flow_Free(), Analyze_Base_Flow_Sensitive(), Create_barrier_defs(), Simplify_Pointer_Arith(), Simplify_Pointer_Ver(), and Transfer_alias_class_to_occ_and_aux().
Definition at line 911 of file opt_alias_analysis.cxx.
References BASE_IS_UNKNOWN, Collect_f90_pointer_info(), EXPR_IS_ADDR, POINTS_TO::Lower_to_base(), OFST_IS_UNKNOWN, OPR_ILDBITS, OPR_ILOAD, OPR_ILOADX, OPR_ISTBITS, OPR_ISTORE, OPR_ISTOREX, OPR_MLOAD, OPR_MSTORE, POINTS_TO::Reset_attr(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_expr_kind(), POINTS_TO::Set_field_id(), POINTS_TO::Set_hl_ty(), POINTS_TO::Set_ofst_kind(), POINTS_TO::Set_ty(), POINTS_TO::Shift_ofst(), Simplify_Pointer(), UINT32, Update_From_Restricted_Map(), WN_hl_object_ty(), WN_kid0(), WN_kid1(), WN_object_ty(), WN_offset(), and WN_operator().
Referenced by Allocate_mu_chi_and_virtual_var().
Definition at line 947 of file opt_alias_analysis.cxx.
References POINTS_TO::Attr(), POINTS_TO::Base(), BASE_IS_UNKNOWN, POINTS_TO::Base_kind(), POINTS_TO::Based_sym(), POINTS_TO::Bit_Ofst(), POINTS_TO::Bit_Size(), POINTS_TO::Byte_Ofst(), POINTS_TO::Byte_Size(), CHECK_POINTS_TO, POINTS_TO::Copy_pointer_info(), EXPR_IS_ADDR, POINTS_TO::Expr_kind(), POINTS_TO::Init(), POINTS_TO::Lower_to_base(), POINTS_TO::Malloc_id(), NULL, OFST_IS_UNKNOWN, POINTS_TO::Ofst_kind(), OPR_ILDBITS, OPR_ILOAD, OPR_ILOADX, OPR_ISTBITS, OPR_ISTORE, OPR_ISTOREX, OPR_MLOAD, OPR_MSTORE, OPR_PARM, POINTS_TO::Restricted(), POINTS_TO::Set_attr(), 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_malloc_id(), POINTS_TO::Set_ofst_kind(), POINTS_TO::Set_restricted(), POINTS_TO::Shift_ofst(), Simplify_Pointer(), WN_kid0(), WN_kid1(), WN_offset(), and WN_operator().
Referenced by Compute_FSA_stmt_or_expr().
| void OPT_STAB::Update_iload_vsym | ( | OCC_TAB_ENTRY * | occ | ) |
Definition at line 220 of file opt_mu_chi.cxx.
References ALIAS_DUMP_FLAG, PHI_NODE::Aux_id(), CHI_NODE::Aux_id(), Aux_id_list(), aux_stab, POINTS_TO::Base(), POINTS_TO::Base_is_fixed(), BASE_IS_FIXED, POINTS_TO::Base_kind(), POINTS_TO::Based_sym(), VER_STAB_ENTRY::Bb(), POINTS_TO::Bit_Ofst(), POINTS_TO::Bit_Size(), BOOL, POINTS_TO::Byte_Ofst(), POINTS_TO::Byte_Size(), VER_STAB_ENTRY::Chi(), CHI_STMT, VER_STAB_ENTRY::Chi_wn(), cnode, Default_vsym(), BB_NODE::Dominates(), Du_aux_id(), ENTRY_STMT, Find_vsym_with_base_ofst_and_size(), FOR_ALL_ELEM, FOR_ALL_NODE, fprintf(), Get_generic_chi_list(), Get_Trace(), i, BB_NODE::Id(), Init, INT32, INT64, Is_True, POINTS_TO::Meet(), OCC_TAB_ENTRY::Mem_mu_node(), NULL, OFST_IS_FIXED, POINTS_TO::Ofst_kind(), OPERATOR_is_scalar_store(), MU_NODE::Opnd(), PHI_NODE::Opnd(), CHI_NODE::Opnd(), VER_STAB_ENTRY::Phi(), BB_NODE::Phi_list(), PHI_STMT, OCC_TAB_ENTRY::Points_to(), BB_NODE::Pred(), POINTS_TO::Restricted(), CHI_NODE::Result(), PHI_NODE::Result(), MU_NODE::Set_aux_id(), OCC_TAB_ENTRY::Set_aux_id(), PHI_NODE::Set_live(), CHI_NODE::Set_live(), MU_NODE::Set_opnd(), TFile, TP_GLOBOPT, TRUE, VER_STAB_ENTRY::Type(), UINT8, POINTS_TO::Unique_pt(), Update_aux_id_list(), Ver_stab_entry(), WHIRL_STMT, VER_STAB_ENTRY::Wn(), WN_operator(), and WN_ver().
Referenced by Compute_FSA_stmt_or_expr().
| void OPT_STAB::Update_istore_vsym | ( | OCC_TAB_ENTRY * | occ | ) |
Definition at line 344 of file opt_mu_chi.cxx.
References Aux_id_list(), aux_stab, POINTS_TO::Base(), POINTS_TO::Base_is_fixed(), BASE_IS_FIXED, POINTS_TO::Base_kind(), POINTS_TO::Based_sym(), POINTS_TO::Bit_Ofst(), POINTS_TO::Bit_Size(), POINTS_TO::Byte_Ofst(), POINTS_TO::Byte_Size(), Default_vsym(), Find_vsym_with_base_ofst_and_size(), INT64, Is_True, POINTS_TO::Meet(), NULL, OFST_IS_FIXED, POINTS_TO::Ofst_kind(), OCC_TAB_ENTRY::Points_to(), POINTS_TO::Restricted(), OCC_TAB_ENTRY::Set_aux_id(), UINT8, POINTS_TO::Unique_pt(), and Update_aux_id_list().
Referenced by Compute_FSA_stmt_or_expr().
Definition at line 4284 of file opt_alias_analysis.cxx.
References Addr_saved(), ALIAS_DUMP_FLAG, CHI_NODE::Aux_id(), MU_NODE::Aux_id(), aux_stab, BB_ENTRY, BS_Create_Empty(), BS_MemberP(), BS_Union1D(), Cfg(), cnode, CFG::Entry_bb(), CFG::Exit_bb(), CFG::Fake_entry_bb(), CFG::Fake_exit_bb(), BB_NODE::Firststmt(), FOR_ALL_ELEM, FOR_ALL_NODE, fprintf(), Get_generic_chi_list(), Get_stmt_mu_list(), Get_Trace(), SLIST::Head(), Init, Is_True, BB_NODE::Kind(), DYN_ARRAY< T >::Lastidx(), BB_NODE::Laststmt(), CHI_NODE::Live(), Local_static(), SLIST_NODE::Next(), NULL, OPR_OPT_CHI, OPR_RETURN, OPR_RETURN_VAL, SLIST::Remove(), TFile, TP_GLOBOPT, and WN_operator().
Referenced by Pre_Optimizer().
Definition at line 1066 of file opt_alias_analysis.cxx.
References Alias_Pointer_Disjoint, VER_STAB_ENTRY::Aux_id(), FmtAssert, FSA(), INT, KIND_POINTER, NULL, OPERATOR_is_scalar_store(), OPR_ADD, OPR_ARRAY, OPR_ILDBITS, OPR_ILOAD, OPR_LDA, OPR_LDBITS, OPR_LDID, OPR_SUB, SCLASS_REG, St(), ST_sclass, TY_kind, Ver_stab_entry(), WHIRL_STMT, VER_STAB_ENTRY::Wn(), WN_kid0(), WN_kid1(), WN_offset(), WN_operator(), WN_ty(), and WN_ver().
Referenced by Analyze_Based_Pointer().
Definition at line 1144 of file opt_alias_analysis.cxx.
References POINTS_TO::F_param(), Find_Based_Pointer(), FSA(), IBM_DISJOINT_RULE, INT, Is_True, NULL, RAG_PARMS_RULE, RAG_RESTRICTED_RULE, RAG_UNNAMED_RULE, POINTS_TO::Restricted(), Rule(), POINTS_TO::Set_based_sym(), POINTS_TO::Set_based_sym_depth(), ST_is_temp_var, ST_is_value_parm, and POINTS_TO::Unique_pt().
Referenced by Compute_FSA_stmt_or_expr().
| AUX_ID OPT_STAB::Adjust_vsym | ( | AUX_ID | vp_idx, | |
| OCC_TAB_ENTRY * | occ | |||
| ) |
Definition at line 2125 of file opt_alias_analysis.cxx.
References aux_stab, Aux_stab_entry(), POINTS_TO::Base(), BASE_IS_FIXED, POINTS_TO::Base_is_fixed(), POINTS_TO::Base_kind(), POINTS_TO::Based_sym(), POINTS_TO::Bit_Ofst(), POINTS_TO::Bit_Size(), BOOL, POINTS_TO::Byte_Ofst(), POINTS_TO::Byte_Size(), POINTS_TO::Copy_fully(), Create_vsym(), Default_vsym(), EXPR_IS_ADDR, EXPR_IS_ANY, POINTS_TO::Expr_kind(), FALSE, Find_vsym_with_base(), POINTS_TO::Init(), Is_real_var(), Is_True, POINTS_TO::Meet(), NULL, OFST_IS_FIXED, OFST_IS_UNKNOWN, POINTS_TO::Ofst_kind(), OCC_TAB_ENTRY::Points_to(), AUX_STAB_ENTRY::Points_to(), POINTS_TO::Restricted(), OCC_TAB_ENTRY::Set_aux_id(), POINTS_TO::Set_based_sym(), Set_default_vsym(), POINTS_TO::Set_default_vsym(), TRUE, POINTS_TO::Unique_pt(), Unique_vsym(), WOPT_Enable_Unique_Pt_Vsym, and WOPT_Enable_Vsym_Unique.
Referenced by Allocate_mu_chi_and_virtual_var().
Definition at line 1317 of file opt_sym.h.
References _last_preg_num, and _orig_last_preg.
Referenced by Create().
| IDTYPE OPT_STAB::Alloc_preg | ( | TYPE_ID | mtype, | |
| const char * | name = NULL, |
|||
| WN * | home_wn = NULL | |||
| ) | [inline] |
Definition at line 1323 of file opt_sym.h.
References _last_preg_num, Create_Preg(), CURRENT_SYMTAB, Get_Preg_Num(), and PREG_Table_Size().
Referenced by AUX_STAB_ENTRY::Change_to_new_preg(), Create_preg(), Gen_exp_wn(), and Gen_stmt_wn().
Definition at line 1333 of file opt_sym.h.
References CLASS_VAR, CURRENT_SYMTAB, GLOBAL_SYMTAB, ST_level, and ST_sym_class().
Referenced by CODEMAP::Add_expr(), and Compute_region_mu_chi().
Definition at line 3632 of file opt_sym.cxx.
References Addr_passed(), Addr_saved(), aux_stab, Bit_ofst(), Bit_size(), cur, AUX_STAB_ENTRY::Def_bbs(), Default_vsym(), AUX_STAB_ENTRY::Disable_local_rvi(), External(), fprintf(), AUX_STAB_ENTRY::Has_nested_ref(), AUX_STAB_ENTRY::Is_real_var(), AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Is_volatile(), SLIST_NODE::Len(), AUX_STAB_ENTRY::Loop_index(), AUX_STAB_ENTRY::Lr_shrink_cand(), NULL, BB_LIST::Print(), Ref_formal(), Return_vsym(), St(), St_name(), ST_sclass, AUX_STAB_ENTRY::Stype(), Unique_vsym(), VT_LDA_SCALAR, VT_LDA_VSYM, VT_NO_LDA_SCALAR, VT_OTHER, VT_SPECIAL_VSYM, and VT_UNIQUE_VSYM.
Referenced by OPT_REVISE_SSA::Find_scalars_from_lda_iloads(), OPT_REVISE_SSA::Find_scalars_from_lda_indirects(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld(), OPT_REVISE_SSA::Find_scalars_from_lowering_bitfld_cr(), and FOR_ALL_NODE().
Definition at line 4877 of file opt_alias_analysis.cxx.
References aux_stab, aux_stab_iter, FOR_ALL_NODE, fprintf(), i, Init, AUX_STAB_ENTRY::Is_real_var(), AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Points_to(), and POINTS_TO::Print().
Referenced by Compute_FFA(), and SSA::Pointer_Alias_Analysis().
| OCC_TAB_ENTRY * OPT_STAB::Enter_occ_tab | ( | WN * | wn, | |
| AUX_ID | aux_id | |||
| ) |
Definition at line 78 of file opt_mu_chi.cxx.
References BASE_IS_UNKNOWN, POINTS_TO::Copy_fully(), CXX_NEW, EXPR_IS_ANY, WN_MEMOP_ANNOT_MGR::Get_annot(), POINTS_TO::Init(), INT32, OCC_TAB_ENTRY::Is_load(), OCC_TAB_ENTRY::Is_stmt(), OCC_TAB_ENTRY::Is_store(), POINTS_TO::Mem_annot(), NULL, OFST_IS_INVALID, OPERATOR_is_scalar_store(), OPR_PARM, OCC_TAB_ENTRY::Points_to(), PT_MEM_ANNOT::Set_annots(), OCC_TAB_ENTRY::Set_aux_id(), POINTS_TO::Set_base_kind(), POINTS_TO::Set_expr_kind(), OCC_TAB_ENTRY::Set_lno_dep_vertex_load(), OCC_TAB_ENTRY::Set_lno_dep_vertex_store(), OCC_TAB_ENTRY::Set_mem_chi_list(), OCC_TAB_ENTRY::Set_mem_mu_node(), POINTS_TO::Set_ofst_kind(), OCC_TAB_ENTRY::Set_pf_list(), OCC_TAB_ENTRY::Set_pf_pointer(), OCC_TAB_ENTRY::Set_pt_list(), OCC_TAB_ENTRY::Set_stmt_chi_list(), OCC_TAB_ENTRY::Set_stmt_mu_list(), OCC_TAB_ENTRY::Set_wn(), WN_detach_wn_from_dep_graph(), WN_get_dep_graph_vertex(), WN_get_pf_pointer(), WN_MAP_Set, WN_MEMOP_ANNOT_MGR::WN_mem_annot_mgr(), and WN_operator().
Referenced by Allocate_mu_chi_and_virtual_var(), Create_entry_chi_stmt(), and OPT_REVISE_SSA::Get_new_occ().
| OCC_TAB_ENTRY * OPT_STAB::Get_occ | ( | const WN * | wn | ) | const |
Definition at line 167 of file opt_mu_chi.cxx.
References WN_MAP_Get, and WN_sym_map().
Referenced by CODEMAP::Add_expr(), Compute_FSA_stmt_or_expr(), Compute_region_mu_chi(), STMTREP::Enter_lhs(), Generate_call_mu_chi_by_ref(), Generate_mu_and_chi_list(), DSE::Is_deleted_statement(), DSE::Mem_WN_equiv(), DSE::Propagate_vsym_wn(), Remap_ver_synonym(), SSA::Rename_rhs(), DSE::Required_istore(), DSE::Same_memloc(), DSE::Set_Required_CHI(), DSE::Set_Required_WN(), Simplify_Pointer_Ver(), OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to(), Transfer_alias_class_to_occ_and_aux(), Update_pf_list(), and SSA::Value_number().
Definition at line 174 of file opt_mu_chi.cxx.
References OCC_TAB_ENTRY::Mem_chi_list(), NULL, WN_MAP_Get, and WN_sym_map().
Referenced by Compute_FFA_for_copy(), and Generate_mu_and_chi_list().
Definition at line 198 of file opt_mu_chi.cxx.
References Is_True, OCC_TAB_ENTRY::Mem_mu_node(), NULL, OCC_TAB_ENTRY::Wn(), WN_MAP_Get, and WN_sym_map().
Referenced by CODEMAP::Add_expr(), CODEMAP::Iload_folded(), and Remap_ver_synonym().
Definition at line 181 of file opt_mu_chi.cxx.
References NULL, OCC_TAB_ENTRY::Stmt_chi_list(), WN_MAP_Get, and WN_sym_map().
Referenced by Create_entry_chi(), EXC_SCOPE_TRY_ITER::EXC_SCOPE_TRY_ITER(), Generate_mu_and_chi_list(), and Transfer_alias_class_to_occ_and_aux().
Definition at line 209 of file opt_mu_chi.cxx.
References Is_True, NULL, OCC_TAB_ENTRY::Stmt_mu_list(), OCC_TAB_ENTRY::Wn(), WN_MAP_Get, and WN_sym_map().
Referenced by DSE::Add_EH_exposed_use(), DSE::Dead_store_elim(), SSA::Find_zero_versions(), Generate_exit_mu(), Generate_mu_and_chi_list(), DSE::Propagate_vsym_bb(), Remap_ver_synonym(), SSA::Rename(), Transfer_alias_class_to_occ_and_aux(), Update_return_mu(), and SSA::Value_number().
Definition at line 189 of file opt_mu_chi.cxx.
References OCC_TAB_ENTRY::Is_stmt(), OCC_TAB_ENTRY::Mem_chi_list(), NULL, OCC_TAB_ENTRY::Stmt_chi_list(), WN_MAP_Get, and WN_sym_map().
Referenced by OPT_PU_POINTS_TO_SUMMARIZER::Annotate_points_to_summary(), SSA::Collect_defs_bb(), DSE::Dead_store_elim(), STMTREP::Enter_lhs(), SSA::Find_zero_versions(), DSE::Is_deleted_statement(), DSE::Propagate_vsym_bb(), Remap_ver_synonym(), SSA::Rename(), Update_iload_vsym(), DSE::Update_MU_list_for_call(), Update_return_mu(), and SSA::Value_number().
Definition at line 149 of file opt_mu_chi.cxx.
References FOR_ALL_NODE, Get_occ(), Init, p, OCC_TAB_ENTRY::Pf_list(), PF_NODE::Pf_pointer(), PF_PTR_wn_pref_1L, and PF_PTR_wn_pref_2L.
Definition at line 3512 of file opt_sym.cxx.
References aux_stab_iter, FOR_ALL_NODE, ILLEGAL_BP, Init, and Set_itab_bitpos().
Referenced by PRE_RVI_HOOKS::PRE_RVI_HOOKS().
Definition at line 1375 of file opt_sym.h.
References aux_stab.
Referenced by Clear_itab_bitpos(), and PRE_RVI_HOOKS::Setup_bitpos().
Definition at line 3527 of file opt_sym.cxx.
References AUX_ID_NODE::Aux_id(), AUX_STAB_ENTRY::Aux_id_list(), Aux_stab_entry(), aux_stab_iter, FOR_ALL_ELEM, FOR_ALL_NODE, Init, AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Itab_bitpos(), and AUX_ID_NODE::Set_aux_id().
Referenced by PRE_RVI_HOOKS::PRE_RVI_HOOKS().
Definition at line 1484 of file opt_alias_analysis.cxx.
References Aux_stab_entry(), aux_stab_iter, BB_ENTRY, BB_REGIONSTART, Cfg(), cnode, Create_entry_chi_stmt(), BB_NODE::Entrywn(), FOR_ALL_ELEM, FOR_ALL_NODE, Get_stmt_chi_list(), Init, AUX_STAB_ENTRY::Is_volatile(), BB_NODE::Kind(), CHI_LIST::New_chi_node(), Occ_pool(), BB_NODE::Regioninfo(), BB_REGION::Rid(), CHI_NODE::Set_live(), CHI_NODE::Set_opnd(), CHI_NODE::Set_result(), sym, and TRUE.
Referenced by SSA::Construct().
Definition at line 1535 of file opt_alias_analysis.cxx.
References _rgn_trace, ALIAS_RULE::Aliased_with_Global(), ALIAS_RULE::Aliased_with_Indirect(), aux_stab, aux_stab_iter, BOOL, CLASS_PREG, Compute_barrier_mu_chi(), POINTS_TO::F_param(), FALSE, FOR_ALL_NODE, fprintf(), Generate_exit_mu(), Get_occ(), i, Init, INT, AUX_STAB_ENTRY::Is_real_var(), Is_Trace, Is_Trace_cmd, Is_True, Is_up_level_var(), AUX_STAB_ENTRY::Is_virtual(), AUX_STAB_ENTRY::Is_volatile(), POINTS_TO::Lower_to_base(), CHI_LIST::New_chi_node(), MU_LIST::New_mu_node(), points_to_ref::Next, NULL, Points_to(), AUX_STAB_ENTRY::Points_to(), Print, CHI_LIST::Print(), MU_LIST::Print(), points_to_ref::Pt, pt, REGION_BOUND_UNKNOWN, REGION_consistency_check(), REGION_get_rid(), REGION_search_preg_set(), REGION_search_set(), POINTS_TO::Restricted(), RID_aliased_to_globals, RID_aliased_to_indirects, RID_bounds_exist, RID_contains_barrier, RID_contains_uplevel, RID_def_in_live_out, RID_has_return, RID_id, RID_num_exits, RID_pregs_in, RID_pregs_out_i, RID_set_print(), RID_TYPE_transparent, RID_used_in, Rule(), CHI_LIST::Search_chi_node(), MU_LIST::Search_mu_node(), ST_class, St_ofst(), OCC_TAB_ENTRY::Stmt_chi_list(), OCC_TAB_ENTRY::Stmt_mu_list(), TFile, TRUE, and POINTS_TO::Unique_pt().
Referenced by Generate_mu_and_chi_list().
Definition at line 3229 of file opt_sym.cxx.
References aux_stab, i, INT32, DYN_ARRAY< T >::Lastidx(), and NULL.
Referenced by SSU::Construct().
Referenced by Pre_Optimizer().
| void OPT_STAB::Set_alias_classification | ( | ALIAS_CLASSIFICATION & | ac | ) | [inline] |
Definition at line 1393 of file opt_sym.h.
References _alias_classification.
Referenced by Pre_Optimizer().
| ALIAS_CLASSIFICATION* OPT_STAB::Alias_classification | ( | void | ) | const [inline] |
Definition at line 1395 of file opt_sym.h.
References _alias_classification.
Referenced by Allocate_mu_chi_and_virtual_var(), CFG::Conv_to_select(), Incorporate_alias_class_info(), CFG::Lower_if_stmt(), Pre_Optimizer(), and Transfer_alias_class_to_occ_and_aux().
| MEMOP_ANNOT_CR_SR_MGR* OPT_STAB::Cr_sr_annot_mgr | ( | void | ) | const [inline] |
Definition at line 1398 of file opt_sym.h.
References _cr_sr_annot_mgr.
Referenced by CODEMAP::Add_expr(), LOOP_MULTIVER::Annotate_alias_group_helper(), Compute_FFA(), SSA::Create_CODEMAP(), ML_WHIRL_EMITTER::Emit(), EMITTER::Emit(), and STMTREP::Enter_lhs().
Definition at line 2648 of file opt_sym.cxx.
References Alias_classification(), BS_UnionD(), Inaccessible_to_callees(), and Set_inaccessible_to_callees().
Referenced by Pre_Optimizer().
Definition at line 3549 of file opt_sym.cxx.
References FOR_ALL_ELEM, i, Init, INT, Is_True, OPR_CALL, REGION_is_EH(), St(), St_ofst(), ST_st_idx, WN_aux(), WN_first(), WN_has_aux(), WN_kid(), WN_kid0(), WN_kid_count(), WN_last(), WN_offset(), WN_operator(), WN_region_pragmas, and WN_st_idx().
Referenced by ML_WHIRL_EMITTER::Pop_region(), Pop_region(), EMITTER::Raise_func_entry(), and Raise_region_stmt().
Definition at line 4170 of file opt_sym.cxx.
References Aux_stab_entry(), AUX_STAB_ENTRY::Points_to(), and POINTS_TO::Safe_to_speculate().
Referenced by CODEREP::Can_be_speculated(), and CFG::Is_simple_expr().
Definition at line 4854 of file opt_alias_analysis.cxx.
References _pt_sum, Allocate_PU_Points_To_Summary(), Current_PU_Info, DBar, FmtAssert, fprintf(), Get_Trace(), NULL, PU_POINTS_TO_SUMMARY::Print(), PT_SUMMARY_FLAG, PU_Info_proc_sym, OPT_PU_POINTS_TO_SUMMARIZER::Pu_summary(), OPT_PU_POINTS_TO_SUMMARIZER::Set_pu_summary(), ST_name, OPT_PU_POINTS_TO_SUMMARIZER::Summarize_points_to(), TFile, and TP_WOPT2.
Referenced by Analyze_pu_attr().
DYN_ARRAY<AUX_STAB_ENTRY> OPT_STAB::aux_stab [private] |
Definition at line 788 of file opt_sym.h.
Referenced by Add_nested_call_mu_chi(), Adjust_vsym(), Allocate_mu_chi_and_virtual_var(), Aux_id_list(), Aux_stab_entry(), Base(), Base_ofst(), Bit_ofst(), Bit_size(), Canonicalize(), Check_stack(), Clear_coderep(), Coderep(), Collect_ST_attr(), Compute_barrier_mu_chi(), Compute_black_box_mu_chi(), Compute_FSA_stmt_or_expr(), Compute_region_mu_chi(), Convert_ST_to_AUX(), Create(), Create_preg(), Create_vsym(), Def_bbs(), Enter_ded_preg(), Enter_symbol(), Field_id(), Generate_asm_mu_chi(), Generate_call_mu_chi_by_ref(), Generate_call_mu_chi_by_value(), Generate_exit_mu(), Generate_mu_and_chi_list(), Identify_vsym(), Is_real_var(), Is_virtual(), Is_volatile(), Lastidx(), Lda_vsym(), Make_st_group(), Mp_lastlocal(), Mp_reduction(), Mp_shared(), New_coderep(), New_stack(), Not_affected_by_barrier(), Points_to(), Print_alias_info(), Print_aux_entry(), Remap_aux_synonym(), Reset_def_bbs(), Reset_mp_reduction(), Reset_mp_shared(), Set_itab_bitpos(), Set_mp_firstprivate(), Set_mp_lastlocal(), Set_mp_reduction(), Set_version(), Set_zero_cr(), Special_vsym(), St(), St_name(), St_ofst(), St_ptr(), Stack(), Stype(), Transfer_alias_class_to_occ_and_aux(), Ty(), Unique_vsym(), Update_attr_cache(), Update_aux_id_list(), Update_iload_vsym(), Update_istore_vsym(), Update_return_mu(), Var_is_loop_index(), Version(), Versions(), and Zero_cr().
VER_STAB_ARRAY_TYPE* OPT_STAB::_ver_stab [private] |
CFG* OPT_STAB::_cfg [private] |
Definition at line 790 of file opt_sym.h.
Referenced by Cfg(), Compute_FFA(), Compute_FSA(), and Create().
CODEMAP* OPT_STAB::htable [private] |
const ALIAS_RULE* OPT_STAB::_rule [private] |
WN* OPT_STAB::pu_wn [private] |
OPT_PU_POINTS_TO_SUMMARIZER OPT_STAB::_pt_sum [private] |
Definition at line 797 of file opt_sym.h.
Referenced by Count_syms(), OPT_STAB(), Points_to_summarizer(), and Summarize_points_to().
BOOL OPT_STAB::_rgn_trace [private] |
Definition at line 798 of file opt_sym.h.
Referenced by Compute_region_mu_chi(), Convert_ST_to_AUX(), OPT_STAB(), and REGION_add_to_bound().
MEM_POOL* OPT_STAB::mem_pool [private] |
MEM_POOL OPT_STAB::_ver_pool [private] |
Definition at line 806 of file opt_sym.h.
Referenced by Create(), Delete_ver_pool(), OPT_STAB(), Simplify_Pointer_Ver(), and Ver_pool().
MEM_POOL OPT_STAB::_occ_pool [private] |
MEM_POOL OPT_STAB::_st_chain_pool [private] |
Definition at line 808 of file opt_sym.h.
Referenced by Count_syms(), Create(), Enter_ded_preg(), Make_st_group(), OPT_STAB(), and ~OPT_STAB().
MEM_POOL OPT_STAB::_asm_pragma_pool [private] |
ID_MAP<ST_CHAIN_INFO *, ST_IDX>* OPT_STAB::st_chain_map [private] |
Definition at line 830 of file opt_sym.h.
Referenced by Count_syms(), Create(), Create_preg(), Enter_ded_preg(), Enter_symbol(), Make_st_group(), and St_chain_map().
IDTYPE OPT_STAB::_orig_last_preg [private] |
IDTYPE OPT_STAB::_last_preg_num [private] |
Definition at line 832 of file opt_sym.h.
Referenced by Alloc_preg(), Init_last_preg(), and Last_preg().
AUX_ID OPT_STAB::_default_vsym [private] |
Definition at line 833 of file opt_sym.h.
Referenced by Allocate_mu_chi_and_virtual_var(), Default_vsym(), OPT_STAB(), and Set_default_vsym().
AUX_ID OPT_STAB::_return_vsym [private] |
OPT_PHASE OPT_STAB::_phase [private] |
BOOL OPT_STAB::_flow_free_analysis [private] |
BOOL OPT_STAB::_allow_sim_type [private] |
BOOL OPT_STAB::_has_exc_handler [private] |
Definition at line 838 of file opt_sym.h.
Referenced by Count_syms(), Has_exc_handler(), and OPT_STAB().
POINTS_TO* OPT_STAB::_points_to_globals [private] |
Definition at line 839 of file opt_sym.h.
Referenced by Points_to_globals(), and Set_points_to_globals().
BOOL OPT_STAB::_is_varargs_func [private] |
BS* OPT_STAB::_addr_saved [private] |
BS* OPT_STAB::_addr_passed [private] |
BS* OPT_STAB::_addr_used_locally [private] |
Definition at line 885 of file opt_sym.h.
Referenced by Addr_used_locally(), and Set_addr_used_locally().
BS* OPT_STAB::_external [private] |
BS* OPT_STAB::_local_static [private] |
BS* OPT_STAB::_dedicated [private] |
BS* OPT_STAB::_ref_formal [private] |
BS* OPT_STAB::_named [private] |
BS* OPT_STAB::_const [private] |
BS* OPT_STAB::_unique_pt [private] |
BS* OPT_STAB::_virtual_var [private] |
BS* OPT_STAB::_weak_var [private] |
BS* OPT_STAB::_weak_base [private] |
BS* OPT_STAB::_inaccessible_to_callees [private] |
Definition at line 897 of file opt_sym.h.
Referenced by Inaccessible_to_callees(), and Set_inaccessible_to_callees().
BS* OPT_STAB::_indirect [private] |
BS* OPT_STAB::_call_by_value [private] |
BS* OPT_STAB::_call_by_ref [private] |
BS* OPT_STAB::_asm_alias [private] |
WN_MAP OPT_STAB::_wn_sym_map [private] |
WN_MAP OPT_STAB::_wn_box_refs [private] |
WN_MAP OPT_STAB::_wn_box_defs [private] |
ID_MAP<IDTYPE, AUX_ID> OPT_STAB::_ac_2_vsym_map [private] |
REGION_LEVEL OPT_STAB::_rgn_level [private] |
Definition at line 933 of file opt_sym.h.
Referenced by Alias_classification(), Identify_vsym(), and Set_alias_classification().
MEMOP_ANNOT_CR_SR_MGR* OPT_STAB::_cr_sr_annot_mgr [private] |
Definition at line 934 of file opt_sym.h.
Referenced by Cr_sr_annot_mgr(), OPT_STAB(), and ~OPT_STAB().
INT32 OPT_STAB::_const_found [private] |
Definition at line 936 of file opt_sym.h.
Referenced by Const_found(), Inc_const_found(), and OPT_STAB().
1.5.6