#include <opt_alias_mgr.h>

Definition at line 91 of file opt_alias_mgr.h.
| ALIAS_MANAGER::ALIAS_MANAGER | ( | const ALIAS_MANAGER & | ) | [private] |
| ALIAS_MANAGER::ALIAS_MANAGER | ( | void | ) |
Definition at line 368 of file opt_alias_mgr.cxx.
References _homing_map, _invalid_ip_alias_classes, _last_alias_id, _map, _mem_pool, _no_alias_info_id, _preg_id, _rule, _trace, _vec, ALIAS_DUMP_FLAG, Alias_Pointer_Cray, Alias_Pointer_Disjoint, Alias_Pointer_Named_Data, Alias_Pointer_Parms, Alias_Pointer_Restricted, Alias_Pointer_Strongly_Typed, Alias_Pointer_Types, C_ANSI_RULE, C_STRONGLY_TYPED_RULE, CXX_NEW, DEFAULT_ANALYSIS_RULES, DEFAULT_C_RULES, DEFAULT_COMMON_RULES, DEFAULT_COMPATIABILITY_RULES, DEFAULT_CXX_RULES, DEFAULT_F90_RULES, DEFAULT_F_RULES, EXPR_IS_ADDR, F_CRAY_POINTER_RULE, F_PARM_RULE, FALSE, Get_Current_PU, Get_Trace(), IBM_DISJOINT_RULE, POINTS_TO::Init(), DYN_ARRAY< T >::Initidx(), Is_True, MEM_POOL_Initialize, MEM_POOL_Push, New_alias_id(), Pt(), PU_C_LANG, PU_CXX_LANG, PU_F77_LANG, PU_F90_LANG, PU_src_lang, RAG_RESTRICTED_RULE, RAG_UNNAMED_RULE, POINTS_TO::Set_expr_kind(), POINTS_TO::Set_id(), Set_pu_context(), TP_GLOBOPT, vector, and WN_MAP32_Create.
Referenced by Create_Alias_Manager().
| ALIAS_MANAGER::~ALIAS_MANAGER | ( | void | ) |
Definition at line 469 of file opt_alias_mgr.cxx.
References _homing_map, _invalid_ip_alias_classes, _map, _mem_pool, CXX_DELETE, MEM_POOL_Delete(), MEM_POOL_Pop, and WN_MAP_Delete.
| ALIAS_MANAGER& ALIAS_MANAGER::operator= | ( | const ALIAS_MANAGER & | ) | [private] |
Definition at line 108 of file opt_alias_mgr.h.
References _vec.
Referenced by New_alias_id(), New_points_to(), and Print().
Definition at line 480 of file opt_alias_mgr.cxx.
References _map, and WN_MAP32_Get.
Referenced by Aliased(), Aliased(), aliased_node(), WB_BROWSER::Aliased_Node(), Aliased_with_intr_op(), Aliased_with_region(), Copy_alias_info(), Create_vector_alias(), MEMOP_ANNOT_CR_SR_MGR::Discard_offline_annot(), Dup_tree_alias_id(), Duplicate_alias_info(), MEMOP_ANNOT_CR_SR_MGR::Export_annot(), May_refer_to_alloca_mem(), No_alias(), Overlapped_base(), Points_to(), Points_To_For_Array_Star(), Print_alias_info(), Safe_to_speculate(), RESTRICTED_MAP::Save_info(), Transfer_alias_class_to_alias_manager(), and Valid_alias().
Definition at line 116 of file opt_alias_mgr.h.
References _preg_id.
Referenced by Aliased(), Aliased(), Aliased_with_intr_op(), Aliased_with_region(), Copy_alias_info(), Create_alias(), Create_local_alias(), Duplicate_alias_info(), Forget_alias_class_info(), Gen_alias_id(), No_alias(), Overlapped_base(), Print(), Safe_to_speculate(), RESTRICTED_MAP::Save_info(), and Transfer_alias_class_to_alias_manager().
Definition at line 117 of file opt_alias_mgr.h.
References _no_alias_info_id.
Referenced by Gen_alias_id(), and Gen_black_box_alias().
Definition at line 118 of file opt_alias_mgr.h.
References _vec.
Referenced by ALIAS_MANAGER(), Aliased(), Aliased(), Aliased_with_intr_op(), Aliased_with_region(), Create_vector_alias(), MEMOP_ANNOT_CR_SR_MGR::Discard_offline_annot(), Duplicate_alias_info(), MEMOP_ANNOT_CR_SR_MGR::Export_annot(), Forget_alias_class_info(), Gen_alias_id(), Gen_alias_id_list(), May_refer_to_alloca_mem(), No_alias(), Overlapped_base(), Points_to(), Points_To_For_Array_Star(), Print(), Print_alias_info(), Safe_to_speculate(), RESTRICTED_MAP::Save_info(), and Transfer_alias_class_to_alias_manager().
| ALIAS_CONTEXT ALIAS_MANAGER::Pu_context | ( | void | ) | const [inline] |
Definition at line 119 of file opt_alias_mgr.h.
References _pu_context.
Referenced by Get_Default_Alias_Context(), and Reset_Alias_Context().
| ALIAS_RULE* ALIAS_MANAGER::Rule | ( | void | ) | const [inline] |
Definition at line 120 of file opt_alias_mgr.h.
References _rule.
Referenced by Aliased(), Aliased(), Aliased_with_intr_op(), Aliased_with_region(), COMP_UNIT::COMP_UNIT(), Gen_alias_id(), Overlapped_base(), and Print().
Definition at line 122 of file opt_alias_mgr.h.
References _homing_map.
Referenced by Homing_load(), Homing_store(), Set_homing_load(), and Set_homing_store().
Definition at line 487 of file opt_alias_mgr.cxx.
References _map, and WN_MAP32_Set.
Referenced by Aliased(), Aliased(), Copy_alias_info(), Create_alias(), Create_local_alias(), Create_vector_alias(), Cross_dso_set_id(), Dup_tree_alias_id(), Duplicate_alias_info(), Gen_alias_id(), Gen_alias_id_list(), Gen_black_box_alias(), and New_points_to().
| void ALIAS_MANAGER::Set_pu_context | ( | ALIAS_CONTEXT | ct | ) | [inline] |
Definition at line 124 of file opt_alias_mgr.h.
References _pu_context.
Referenced by ALIAS_MANAGER().
| void ALIAS_MANAGER::Set_context | ( | ALIAS_CONTEXT | c | ) | [inline] |
Definition at line 494 of file opt_alias_mgr.cxx.
References _rule, and ALIAS_RULE::Set_context().
Referenced by Reset_Alias_Context(), and Set_Alias_Context().
Definition at line 503 of file opt_alias_mgr.cxx.
References _last_alias_id, _mem_pool, CXX_NEW, POINTS_TO::Init(), DYN_ARRAY< T >::Newidx(), pt, POINTS_TO::Set_id(), and Vec().
Referenced by ALIAS_MANAGER(), Cross_dso_new_alias_id(), Duplicate_alias_info(), Gen_alias_id(), and Gen_alias_id_list().
Definition at line 515 of file opt_alias_mgr.cxx.
References _last_alias_id, _mem_pool, CXX_NEW, POINTS_TO::Init(), DYN_ARRAY< T >::Newidx(), pt, Set_id(), POINTS_TO::Set_id(), and Vec().
Referenced by Create_alias(), Create_formal_alias(), Create_global_alias(), Create_lda_array_alias(), Create_local_alias(), Create_unique_pointer_alias(), and Create_vector_alias().
Definition at line 715 of file opt_alias_mgr.cxx.
References New_alias_id().
Referenced by Transfer_alias_class_to_alias_manager().
Definition at line 721 of file opt_alias_mgr.cxx.
References Set_id().
Referenced by Transfer_alias_class_to_alias_manager().
Definition at line 563 of file opt_alias_mgr.cxx.
References _trace, Check_self_alias, POINTS_TO::Copy_fully(), EXPR_IS_INVALID, POINTS_TO::Expr_kind(), fdump_tree(), fprintf(), POINTS_TO::Id(), INT32, POINTS_TO::Ip_alias_class(), Is_PREG_ldst(), Is_True, New_alias_id(), No_alias_info_id(), NULL, Preg_id(), POINTS_TO::Print(), Pt(), Rule(), Set_id(), POINTS_TO::Set_id(), TFile, WN_MAP32_Set, WN_MAP_ALIAS_CLASS, WN_map_id(), and WOPT_Enable_CG_Alias.
Referenced by ML_WHIRL_EMITTER::Build_loop_info(), RVI_NODE::Create_load(), RVI_NODE::Create_store(), RVI_EMIT::Emit_wn_annotations(), Gen_exp_wn(), Gen_stmt_wn(), RVI_ANN::New_ldid(), Replace_store_of_ded_reg(), RVI::Store_to_preg_and_mem(), and RVI::Store_to_preg_cvtl().
| void ALIAS_MANAGER::Gen_alias_id_list | ( | WN * | wn, | |
| POINTS_TO_LIST * | ptl | |||
| ) |
Definition at line 615 of file opt_alias_mgr.cxx.
References POINTS_TO::Copy_fully(), FOR_ALL_NODE, Init, New_alias_id(), NULL, POINTS_TO_NODE::Pt(), Pt(), POINTS_TO::Reset_extended(), POINTS_TO::Set_extended(), Set_id(), and POINTS_TO::Set_id().
Referenced by Gen_stmt_wn().
Definition at line 687 of file opt_alias_mgr.cxx.
References i, INT, No_alias_info_id(), opc, OPCODE_is_load(), OPCODE_is_store(), Set_id(), WN_kid(), WN_kid_count(), and WN_opcode().
Referenced by Gen_stmt_wn().
Definition at line 640 of file opt_alias_mgr.cxx.
References Homing_load(), Homing_store(), Id(), INT, Is_True, NULL, opc, OPC_BLOCK, OPCODE_is_load(), OPCODE_is_store(), Set_homing_load(), Set_homing_store(), Set_id(), WN_first(), WN_kid(), WN_kid_count(), WN_MAP32_Get, WN_MAP32_Set, WN_MAP_ALIAS_CLASS, WN_next(), and WN_opcode().
Referenced by RVI_NODE::Create_load(), RVI::Insert_load(), RVI::Insert_store(), and Raise_whiledo_stmt_to_whileloop().
Definition at line 1432 of file opt_alias_mgr.cxx.
References _map, fdump_tree_with_alias(), fprintf(), i, INT, INT32, Is_True, DYN_ARRAY< T >::Lastidx(), NULL, OPC_REGION, Preg_id(), POINTS_TO::Print(), Pt(), REGION_get_rid(), RID_set_print(), RID_TYPE_eh, RID_TYPE_mp, Rule(), TRUE, Vec(), and WN_opcode().
Referenced by Dump_alias_mgr(), and ML_WHIRL_EMITTER::Emit().
Definition at line 2610 of file opt_alias_class.cxx.
References _last_alias_id, OPTIMISTIC_AC_ID, Preg_id(), Pt(), and POINTS_TO::Set_alias_class().
Referenced by Pre_Optimizer().
| void ALIAS_MANAGER::Transfer_alias_class_to_alias_manager | ( | const ALIAS_CLASSIFICATION & | ac, | |
| WN * | wn | |||
| ) |
Definition at line 2567 of file opt_alias_class.cxx.
References ALIAS_CLASSIFICATION::Alias_class(), POINTS_TO::Alias_class(), POINTS_TO::Copy_fully(), Cross_dso_new_alias_id(), Cross_dso_set_id(), DevWarn, Id(), INT, NULL, OPC_BLOCK, OPR_BACKWARD_BARRIER, OPR_DEALLOCA, OPR_FORWARD_BARRIER, OPTIMISTIC_AC_ID, Preg_id(), Pt(), pt, POINTS_TO::Set_alias_class(), WN_first(), WN_kid(), WN_kid_count(), WN_next(), WN_opcode(), and WN_operator().
Referenced by Pre_Optimizer().
Definition at line 1535 of file opt_alias_mgr.cxx.
References _map, _trace, FALSE, fdump_tree_with_alias(), fprintf(), Id(), POINTS_TO::Not_alloca_mem(), Pt(), and TFile.
Referenced by May_refer_to_alloca_mem().
Definition at line 1508 of file opt_alias_mgr.cxx.
References BASE_IS_FIXED, POINTS_TO::Base_kind(), EXPR_IS_ADDR, POINTS_TO::Expr_kind(), FALSE, Id(), OFST_IS_FIXED, POINTS_TO::Ofst_kind(), Preg_id(), Pt(), POINTS_TO::Safe_to_speculate(), and TRUE.
Referenced by CGTARG_Can_Be_Speculative(), ir_put_wn(), and WN_Can_Be_Speculative().
Definition at line 1023 of file opt_alias_mgr.cxx.
References _invalid_ip_alias_classes, ALIAS_TRACE_FLAG, fprintf(), Get_Trace(), OPTIMISTIC_AC_ID, PESSIMISTIC_AC_ID, TFile, TP_GLOBOPT, WN_MAP32_Get, and WN_MAP_ALIAS_CLASS.
Referenced by Note_Invalid_IP_Alias_Class().
Definition at line 1037 of file opt_alias_mgr.cxx.
References _invalid_ip_alias_classes, ALIAS_TRACE_FLAG, fdump_tree(), find(), fprintf(), Get_Trace(), PESSIMISTIC_AC_ID, TFile, TP_GLOBOPT, WN_MAP32_Get, WN_MAP32_Set, and WN_MAP_ALIAS_CLASS.
Referenced by Invalidate_Persistent_Alias_Info().
Definition at line 153 of file opt_alias_mgr.h.
References Homing_map(), and WN_MAP32_Get.
Referenced by Copy_alias_info(), Dup_tree_alias_id(), Duplicate_alias_info(), Homing_Load(), and PRINT_HOMING_INFO().
Definition at line 155 of file opt_alias_mgr.h.
References Homing_map(), and WN_MAP32_Set.
Referenced by Copy_alias_info(), RVI_NODE::Create_load(), Dup_tree_alias_id(), Duplicate_alias_info(), Reset_Homing_Load(), and Set_Homing_Load().
Definition at line 158 of file opt_alias_mgr.h.
References Homing_map(), and WN_MAP32_Get.
Referenced by Copy_alias_info(), Dup_tree_alias_id(), Duplicate_alias_info(), and Homing_Store().
Definition at line 160 of file opt_alias_mgr.h.
References Homing_map(), and WN_MAP32_Set.
Referenced by Copy_alias_info(), RVI_NODE::Create_store(), Dup_tree_alias_id(), Duplicate_alias_info(), Reset_Homing_Store(), Set_Homing_Store(), and RVI::Store_to_preg_and_mem().
| ALIAS_RESULT ALIAS_MANAGER::Aliased | ( | WN * | wn, | |
| const POINTS_TO * | pt, | |||
| BOOL | ignore_loop_carried = FALSE | |||
| ) |
Definition at line 998 of file opt_alias_mgr.cxx.
References POINTS_TO::Base(), POINTS_TO::Base_is_fixed(), POINTS_TO::Byte_Ofst(), Id(), Is_PREG_ldst(), NOT_ALIASED, Preg_id(), Pt(), SAME_LOCATION, SCLASS_REG, Set_id(), ST_sclass, and WN_offset().
Referenced by Aliased(), DEPV_COMPUTE::Base_Test(), Maybe_Assigned(), Test_Alias_Ara_Ref_Array(), Test_Alias_Ara_Ref_Scalar(), Test_Alias_Scalar_Node_Array(), and Test_Alias_Scalar_Node_Scalar().
| ALIAS_RESULT ALIAS_MANAGER::Aliased | ( | const POINTS_TO * | pt, | |
| WN * | wn, | |||
| BOOL | ignore_loop_carried = FALSE | |||
| ) |
| ALIAS_RESULT ALIAS_MANAGER::Aliased | ( | const POINTS_TO * | pt1, | |
| const POINTS_TO * | pt2, | |||
| BOOL | ignore_loop_carried = FALSE | |||
| ) |
Definition at line 988 of file opt_alias_mgr.cxx.
References NOT_ALIASED, NULL, POSSIBLY_ALIASED, and Rule().
MEM_POOL ALIAS_MANAGER::_mem_pool [private] |
Definition at line 94 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), New_alias_id(), New_points_to(), and ~ALIAS_MANAGER().
BOOL ALIAS_MANAGER::_trace [private] |
Definition at line 95 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), Gen_alias_id(), and May_refer_to_alloca_mem().
WN_MAP ALIAS_MANAGER::_map [private] |
Definition at line 96 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), Id(), Map(), May_refer_to_alloca_mem(), Print(), Set_id(), and ~ALIAS_MANAGER().
WN_MAP ALIAS_MANAGER::_homing_map [private] |
Definition at line 97 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), Homing_map(), and ~ALIAS_MANAGER().
IDTYPE ALIAS_MANAGER::_last_alias_id [private] |
Definition at line 98 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), Forget_alias_class_info(), New_alias_id(), and New_points_to().
DYN_ARRAY<POINTS_TO*>* ALIAS_MANAGER::_vec [private] |
const IDTYPE ALIAS_MANAGER::_preg_id = 1 [static, private] |
IDTYPE ALIAS_MANAGER::_no_alias_info_id [private] |
Definition at line 101 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), and No_alias_info_id().
ALIAS_CONTEXT ALIAS_MANAGER::_pu_context [private] |
ALIAS_RULE* ALIAS_MANAGER::_rule [private] |
Definition at line 103 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), Rule(), and Set_context().
vector<IDTYPE, mempool_allocator<IDTYPE> >* ALIAS_MANAGER::_invalid_ip_alias_classes [private] |
Definition at line 109 of file opt_alias_mgr.h.
Referenced by ALIAS_MANAGER(), Erase_ip_alias_class_if_invalid(), Note_invalid_ip_alias_class(), and ~ALIAS_MANAGER().
1.5.6