#include <elf.h>#include "dwarf_DST_mem.h"#include "symtab.h"


Go to the source code of this file.
Data Types | |
| type | pu_info |
Defines | |
| #define | PU_HEADER_VERSION 1 |
| #define | WT_SYMTAB 0x0 |
| #define | WT_TREE 0x1 |
| #define | WT_DEPGRAPH 0x2 |
| #define | WT_PREFETCH 0x3 |
| #define | WT_REGIONS 0x4 |
| #define | WT_FEEDBACK 0x5 |
| #define | WT_FREQ 0x6 |
| #define | WT_AC_INTERNAL 0x7 |
| #define | WT_ALIAS_CLASS 0x8 |
| #define | WT_SUBSECTIONS 0x9 |
| #define | WT_PROC_SYM -1 |
| #define | PU_HAS_GLOBALS 0x1 |
| #define | PU_HAS_NESTED_PU 0x2 |
| #define | PU_IS_COMPILER_GENERATED 0x4 |
| #define | PU_IS_DRA_CLONE 0x8 |
| #define | PU_PREGS_RENUMBERED 0x10 |
| #define | PU_INTERNAL_MASK 0xf0000000 |
| #define | PU_DELETED 0x10000000 |
| #define | PU_Info_proc_sym(pu) (pu)->proc_sym |
| #define | PU_Info_proc_id(pu) (pu)->proc_sym |
| #define | PU_Info_subsect_offset(pu, scn) (pu)->subsect[scn].offset |
| #define | PU_Info_subsect_size(pu, scn) (pu)->subsect[scn].u.size |
| #define | PU_Info_subsect_ptr(pu, scn) (pu)->subsect[scn].u.ptr |
| #define | PU_Info_flags(pu) (pu)->flags |
| #define | PU_Info_pu_dst(pu) (pu)->pu_dst |
| #define | PU_Info_cu_dst(pu) (pu)->cu_dst |
| #define | PU_Info_cu_dst(pu) (pu)->cu_dst |
| #define | PU_Info_maptab(pu) (pu)->maptab |
| #define | PU_Info_next(pu) (pu)->next |
| #define | PU_Info_child(pu) (pu)->child |
| #define | Set_PU_Info_flags(pu, flag_value) (pu)->flags |= (flag_value) |
| #define | Clear_PU_Info_flags(pu, flag_value) (pu)->flags &= ~(flag_value) |
| #define | Is_Set_PU_Info_flags(pu, flag_value) ((pu)->flags & (flag_value)) |
| #define | PU_Info_state(pu, ndx) (Subsect_State)(((pu)->state >> (((ndx) + 1) << 1)) & 0x3) |
| #define | Set_PU_Info_state(pu, ndx, st) |
| #define | PU_Info_symtab_ptr(pu) (LOCAL_SYMTAB_HEADER_TABLE *) PU_Info_subsect_ptr((pu), WT_SYMTAB) |
| #define | PU_Info_tree_ptr(pu) (WN *)PU_Info_subsect_ptr((pu), WT_TREE) |
| #define | PU_Info_depgraph_ptr(pu) (void *)PU_Info_subsect_ptr((pu), WT_DEPGRAPH) |
| #define | PU_Info_regions_ptr(pu) (struct region_id *)PU_Info_subsect_ptr((pu), WT_REGIONS) |
| #define | PU_Info_feedback_ptr(pu) (void *)PU_Info_subsect_ptr((pu), WT_FEEDBACK) |
| #define | PU_Info_frequencies_ptr(pu) (INT32 *) PU_Info_subsect_ptr((pu), WT_FREQ) |
| #define | PU_Info_alias_class_ptr(pu) (INT32 *) PU_Info_subsect_ptr((pu), WT_ALIAS_CLASS) |
| #define | PU_Info_ac_internal_ptr(pu) (void *) PU_Info_subsect_ptr((pu), WT_AC_INTERNAL) |
| #define | Set_PU_Info_tree_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_TREE) = (void *)(x) |
| #define | Set_PU_Info_symtab_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_SYMTAB) = (void *)(x) |
| #define | Set_PU_Info_depgraph_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_DEPGRAPH) = (void *)(x) |
| #define | Set_PU_Info_regions_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_REGIONS) = (void *)(x) |
| #define | Set_PU_Info_feedback_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_FEEDBACK) = (void *)(x) |
| #define | Set_PU_Info_frequencies_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_FREQ) = (void *) (x) |
| #define | Set_PU_Info_alias_class_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_ALIAS_CLASS) = (void *) (x) |
| #define | Set_PU_Info_ac_internal_ptr(pu, x) PU_Info_subsect_ptr((pu), WT_AC_INTERNAL) = (void *) (x) |
| #define | Set_PU_Info_pu_dst(pu, x) PU_Info_pu_dst(pu) = x; |
| #define | Set_PU_Info_cu_dst(pu, x) PU_Info_cu_dst(pu) = x; |
Typedefs | |
| typedef struct pu_info | PU_Info |
| typedef enum subsect_state | Subsect_State |
Enumerations | |
| enum | subsect_state { Subsect_Missing = 0, Subsect_Exists = 1, Subsect_InMem = 2, Subsect_Written = 3, Subsect_Missing = 0, Subsect_Exists = 1, Subsect_InMem = 2, Subsect_Written = 3 } |
Functions/Subroutines | |
| void | PU_Info_init (PU_Info *pu) |
| INT | Sizeof_PU_Infos (PU_Info *pu_tree) |
| INT | Write_PU_Infos (PU_Info *pu_tree, char *base) |
| PU_Info * | Read_PU_Infos (char *base, INT32 size, INT32 *p_num_PUs) |
| void | Save_Local_Symtab (SYMTAB_IDX level, PU_Info *pu) |
| void | Restore_Local_Symtab (PU_Info *pu) |
Variables | |
| PU_Info * | Current_PU_Info |
Definition at line 182 of file pu_info.h.
Referenced by F90_Lower_Prompf_Finish(), F90_Lower_Prompf_Init(), Post_LNO_Processing(), Preprocess_PU(), and This_preopt_renumbers_pregs().
| #define PU_HAS_GLOBALS 0x1 |
| #define PU_HAS_NESTED_PU 0x2 |
| #define PU_HEADER_VERSION 1 |
Definition at line 69 of file pu_info.h.
Referenced by Print_whirl_pu_from_bits(), Read_PU_Infos(), and Write_PU_Infos().
Definition at line 178 of file pu_info.h.
Referenced by Build_Parent_Child_Relations_For_One_Parent(), clean_up_deleted_nested_pu_info(), copy_pu_tree(), Create_MicroTask(), Delete_Function(), free_pu_cg_resources(), Get_MP_accessed_id_list(), initialize_dst_map(), Inliner_Read_PUs(), Inliner_Write_PUs(), IP_READ_remap_pu_infos(), IP_write_PU_tree(), IPA_process_PUs(), ir_b2a_process_PUs(), ir_sel(), main(), no_inline_pu_with_nested_pus(), Node_can_be_cloned(), number_PU_Infos(), PDGCS_new_proc(), Preorder_annotate_PU_and_kids(), Preorder_Process_PUs(), Print_whirl_pu_from_bits(), process_pu(), PU_Info_init(), Pu_Next(), output_queue::pu_tree_add_comments(), read_pu(), Read_PU_Infos(), size_of_each_pu(), Trans_Order_Walk(), update_pu_dst_indices(), WFE_Start_Function(), WGEN_Start_Function(), write_PU_fields(), and write_PU_subsect_info().
Definition at line 175 of file pu_info.h.
Referenced by OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IPA_Start_Function(), Print_whirl_pu_from_bits(), PU_Info_init(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), and WGEN_Start_Function().
Definition at line 216 of file pu_info.h.
Referenced by LNO_Processing(), and MP_Fix_Dependence_Graph().
Definition at line 220 of file pu_info.h.
Referenced by IP_READ_pu(), IPO_Clone(), ir_b2a_process_PUs(), and Preprocess_PU().
Definition at line 172 of file pu_info.h.
Referenced by PDGCS_do_proc(), Print(), Print_whirl_pu_from_bits(), PU_Info_init(), Read_PU_Infos(), and write_PU_fields().
Definition at line 176 of file pu_info.h.
Referenced by Create_MicroTask(), DRA_Add_Clone(), Free_Local_Info(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), Inline_callees_into_caller(), Inliner_Write_PUs(), IP_READ_get_tree(), IP_READ_pu(), IPA_NODE_CONTEXT::IPA_NODE_CONTEXT(), IPA_Start_Function(), IPO_Clone(), IPO_INLINE::IPO_INLINE(), IPA_NODE::Map_Table(), number_PU_Infos(), PDGCS_new_proc(), Postprocess_PU(), Preprocess_PU(), PU_Info_init(), Read_Local_Info(), IPA_NODE::Read_PU(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), WN_get_tree(), Write_inline_pu(), write_PU_fields(), and Write_PU_Info().
Definition at line 177 of file pu_info.h.
Referenced by Build_Parent_Child_Relations(), Build_Parent_Child_Relations_For_One_Parent(), clean_up_deleted_nested_pu_info(), copy_pu_tree(), Create_MicroTask(), Delete_Function(), DRA_Add_Clone(), free_pu_cg_resources(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), Get_MP_accessed_id_list(), initialize_dst_map(), Inliner_Read_PUs(), Inliner_Write_PUs(), IP_FILE_HDR_Add_New_PU(), IP_READ_remap_pu_infos(), IP_write_PU_tree(), IPA_process_PUs(), ir_all(), ir_b2a_process_PUs(), ir_sel(), main(), no_inline_pu_with_nested_pus(), number_PU_Infos(), PDGCS_new_proc(), Perform_Alias_Class_Annotation(), Preorder_annotate_PU_and_kids(), Preorder_Process_PUs(), Print_whirl_pu_from_bits(), process_pu(), PU_Info_init(), Pu_Next(), output_queue::pu_tree_add_comments(), output_queue::push(), read_pu(), Read_PU_Infos(), size_of_each_pu(), Trans_Order_Walk(), update_pu_dst_indices(), WFE_Assemble_Asm(), WFE_Finish_Function(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), Write_Dummy_PUs(), write_pu(), write_PU_fields(), and write_PU_subsect_info().
Definition at line 158 of file pu_info.h.
Referenced by Print(), Print_whirl_pu_from_bits(), PU_Info_init(), and Read_PU_Infos().
Definition at line 157 of file pu_info.h.
Referenced by Add_Doacross_Comments(), Add_Parallel_Region_Comments(), Allocate_PU_Points_To_Summary(), Build_Parent_Child_Relations_For_One_Parent(), clean_up_deleted_nested_pu_info(), Create_MicroTask(), Delete_Function(), Do_WOPT_and_CG_with_Regions(), DRA_Add_Clone(), fei_proc_body(), Free_Local_Info(), free_pu_cg_resources(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), get_ip_file_hdr(), Get_MP_accessed_id_list(), Get_Node_From_PU(), Get_Orig_PU_Name(), Get_points_to_summary(), Inliner_Read_PUs(), Inliner_Write_PUs(), IP_READ_pu(), IP_READ_remap_pu_infos(), IP_WRITE_pu(), IP_WRITE_pu_internal(), IP_write_PU_tree(), IPA_Add_Builtin_IPA_NODE(), IPA_Rename_Builtins(), IPA_Start_Function(), IPO_Clone(), ir_b2a_process_PUs(), lower_bit_field_id(), lower_mp(), LowerMP_PU_Init(), main(), no_inline_pu_with_nested_pus(), PDGCS_do_proc(), PDGCS_new_proc(), Postprocess_PU(), Preorder_Process_PUs(), Preprocess_PU(), Print_Mp_Lowerer_Name(), Print_Prompf_Doacross_Log(), Print_Prompf_Parallel_Region_Log(), Print_Prompl_Msgs(), Process_GDAR(), process_pu(), Prompf_Emit_Whirl_to_Source(), IPA_NODE::PU_Info(), output_queue::pu_tree_add_comments(), output_queue::push(), Read_Local_Info(), Restore_Local_Symtab(), Save_Local_Symtab(), OPT_STAB::Summarize_points_to(), Trans_Order_Walk(), Translate_Label(), VHO_Lower_Driver(), Walk_and_Localize(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), WN_get_proc_sym(), WN_Rename_Duplicate_Labels(), WN_write_symtab(), Write_Dummy_PUs(), and write_PU_fields().
Definition at line 173 of file pu_info.h.
Referenced by Create_Func_DST(), Create_MicroTask(), DRA_Add_Clone(), DRA_Mangle_All(), IPA_NODE::Dst_Index(), Find_DST_From_ST(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), Get_Orig_PU_Name(), initialize_dst_map(), IPA_Start_Function(), Post_Process_Backend(), Print(), Print_whirl_pu_from_bits(), PU_Info_init(), Read_PU_Infos(), update_pu_dst_indices(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), and write_PU_fields().
Definition at line 218 of file pu_info.h.
Referenced by Create_MicroTask(), Process_Parallel_Do(), and Process_Parallel_Region().
| #define PU_Info_state | ( | pu, | |||
| ndx | ) | (Subsect_State)(((pu)->state >> (((ndx) + 1) << 1)) & 0x3) |
Definition at line 202 of file pu_info.h.
Referenced by CG_BROWSER::Bad_Node(), Create_MicroTask(), Get_MP_accessed_id_list(), Inliner_Read_PUs(), IP_READ_get_tree(), IP_READ_pu(), IP_WRITE_pu_internal(), Preorder_annotate_PU_and_kids(), Preprocess_PU(), Restore_Local_Symtab(), Save_Local_Symtab(), CG_BROWSER::Whirl_Browser(), IPA_NODE::Whirl_Tree(), WN_get_proc_sym(), WN_get_symtab(), WN_get_tree(), WN_read_generic_map(), WN_write_symtab(), WN_write_tree(), Write_PU_Info(), and write_PU_subsect_info().
Definition at line 169 of file pu_info.h.
Referenced by IP_READ_get_tree(), Preorder_annotate_PU_and_kids(), Print(), Print_whirl_pu_from_bits(), Read_PU_Infos(), WN_get_symtab(), WN_get_tree(), WN_read_generic_map(), WN_write_symtab(), WN_write_tree(), and write_PU_subsect_info().
Definition at line 170 of file pu_info.h.
Referenced by IP_READ_get_tree(), Preorder_annotate_PU_and_kids(), Print(), Print_whirl_pu_from_bits(), Read_PU_Infos(), size_of_each_pu(), WN_get_symtab(), WN_get_tree(), WN_read_generic_map(), WN_write_symtab(), WN_write_tree(), and write_PU_subsect_info().
| #define PU_Info_symtab_ptr | ( | pu | ) | (LOCAL_SYMTAB_HEADER_TABLE *) PU_Info_subsect_ptr((pu), WT_SYMTAB) |
Definition at line 212 of file pu_info.h.
Referenced by process_pu(), Restore_Local_Symtab(), and Save_Local_Symtab().
Definition at line 214 of file pu_info.h.
Referenced by Backend_Processing(), Create_MicroTask(), DRA_Add_Clone(), DRA_Clone_Instantiate(), Formal_Position(), Get_MP_accessed_id_list(), Inliner_Read_PUs(), IP_READ_get_tree(), IP_READ_pu(), IP_WRITE_pu(), IPO_Clone(), ir_all(), ir_b2a_process_PUs(), ir_sel(), Localize_Variable(), lower_bit_field_id(), main(), Preorder_annotate_PU_and_kids(), Preprocess_PU(), process_pu(), IPA_NODE::Read_PU(), IPA_NODE::Whirl_Tree(), WN_get_tree(), and WN_write_tree().
| #define PU_IS_COMPILER_GENERATED 0x4 |
Definition at line 102 of file pu_info.h.
Referenced by Create_MicroTask(), DRA_Add_Clone(), F90_Lower_Prompf_Finish(), F90_Lower_Prompf_Init(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IPA_Start_Function(), Post_LNO_Processing(), Preprocess_PU(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), and WGEN_Start_Function().
| #define PU_IS_DRA_CLONE 0x8 |
| #define PU_PREGS_RENUMBERED 0x10 |
Definition at line 104 of file pu_info.h.
Referenced by Pre_Optimizer(), and This_preopt_renumbers_pregs().
Definition at line 233 of file pu_info.h.
Referenced by Backend_Processing(), Build_CG_Dependence_Graph(), Copy_Non_MP_Tree(), DRA_Add_Clone(), LNO_Processing(), and MP_Fix_Dependence_Graph().
Definition at line 180 of file pu_info.h.
Referenced by Create_MicroTask(), DRA_Add_Clone(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IPA_Start_Function(), PDGCS_do_proc(), PDGCS_new_proc(), Pre_Optimizer(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), and WGEN_Start_Function().
Definition at line 246 of file pu_info.h.
Referenced by DRA_Add_Clone(), IPO_Clone(), and PDGCS_do_proc().
Value:
Definition at line 204 of file pu_info.h.
Referenced by Backend_Processing(), Build_CG_Dependence_Graph(), Copy_Non_MP_Tree(), Create_MicroTask(), DRA_Add_Clone(), EMITTER::Emit(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IP_READ_get_tree(), IP_WRITE_pu(), IPA_Start_Function(), IPO_Clone(), LNO_Processing(), MP_Fix_Dependence_Graph(), PDGCS_do_proc(), Preorder_annotate_PU_and_kids(), Read_PU_Infos(), IPA_NODE::Set_Whirl_Tree(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), WN_get_proc_sym(), WN_get_symtab(), WN_get_tree(), WN_read_generic_map(), WN_write_symtab(), and WN_write_tree().
Definition at line 231 of file pu_info.h.
Referenced by Create_MicroTask(), DRA_Add_Clone(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), and Save_Local_Symtab().
Definition at line 229 of file pu_info.h.
Referenced by Create_MicroTask(), Do_WOPT_and_CG_with_Regions(), DRA_Add_Clone(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IP_READ_get_tree(), IPA_Start_Function(), Ipl_Processing(), IPO_Clone(), lower_bit_field_id(), PDGCS_do_proc(), Post_LNO_Processing(), Pre_Optimizer(), IPA_NODE::Set_Whirl_Tree(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), and WN_get_tree().
| #define WT_AC_INTERNAL 0x7 |
Definition at line 90 of file pu_info.h.
Referenced by IP_WRITE_pu(), IP_WRITE_pu_internal(), Preorder_annotate_PU_and_kids(), Read_Local_Info(), and WN_write_tree().
| #define WT_ALIAS_CLASS 0x8 |
Definition at line 91 of file pu_info.h.
Referenced by IP_WRITE_pu_internal(), Read_Local_Info(), WN_write_tree(), and Write_PU_Info().
| #define WT_DEPGRAPH 0x2 |
Definition at line 85 of file pu_info.h.
Referenced by Backend_Processing(), Build_CG_Dependence_Graph(), Copy_Non_MP_Tree(), DRA_Add_Clone(), LNO_Processing(), MP_Fix_Dependence_Graph(), and size_of_each_pu().
| #define WT_FEEDBACK 0x5 |
Definition at line 88 of file pu_info.h.
Referenced by Create_MicroTask(), EMITTER::Emit(), IP_READ_pu(), IP_WRITE_pu_internal(), Preorder_annotate_PU_and_kids(), Preprocess_PU(), size_of_each_pu(), and Write_PU_Info().
| #define WT_FREQ 0x6 |
| #define WT_PREFETCH 0x3 |
| #define WT_PROC_SYM -1 |
Definition at line 94 of file pu_info.h.
Referenced by Create_MicroTask(), DRA_Add_Clone(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IPA_Start_Function(), IPO_Clone(), PDGCS_do_proc(), Read_PU_Infos(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), and WN_get_proc_sym().
| #define WT_SUBSECTIONS 0x9 |
Definition at line 93 of file pu_info.h.
Referenced by Read_PU_Infos(), Sizeof_PU_Infos(), and Write_PU_Infos().
| #define WT_SYMTAB 0x0 |
Definition at line 83 of file pu_info.h.
Referenced by Create_MicroTask(), DRA_Add_Clone(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), IPA_Start_Function(), IPO_Clone(), PDGCS_do_proc(), Print(), Restore_Local_Symtab(), Save_Local_Symtab(), size_of_each_pu(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), WN_get_symtab(), and WN_write_symtab().
| #define WT_TREE 0x1 |
Definition at line 84 of file pu_info.h.
Referenced by CG_BROWSER::Bad_Node(), Create_MicroTask(), DRA_Add_Clone(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), Get_MP_accessed_id_list(), IP_READ_get_tree(), IPA_Start_Function(), IPO_Clone(), PDGCS_do_proc(), Preprocess_PU(), Print(), IPA_NODE::Set_Whirl_Tree(), size_of_each_pu(), WFE_Assemble_Asm(), WFE_Start_Function(), WGEN_Assemble_Asm(), WGEN_Start_Function(), CG_BROWSER::Whirl_Browser(), IPA_NODE::Whirl_Tree(), WN_get_tree(), WN_read_generic_map(), and WN_write_tree().
| typedef enum subsect_state Subsect_State |
| enum subsect_state |
Definition at line 76 of file pu_info.cxx.
Definition at line 258 of file pu_info.cxx.
Definition at line 415 of file pu_info.cxx.
| void Save_Local_Symtab | ( | SYMTAB_IDX | level, | |
| PU_Info * | pu | |||
| ) |
Definition at line 385 of file pu_info.cxx.
Definition at line 92 of file pu_info.cxx.
Definition at line 147 of file pu_info.cxx.
Definition at line 73 of file pu_info.cxx.
1.5.6