#include <cmplrs/rcodes.h>#include <sys/resource.h>#include <ext/slist>#include "defs.h"#include "erglob.h"#include "erbe.h"#include "config.h"#include "tracing.h"#include "strtab.h"#include "stab.h"#include "const.h"#include "glob.h"#include "mtypes.h"#include "targ_const.h"#include "targ_sim.h"#include "ttype.h"#include "irbdata.h"#include "util.h"#include "stblock.h"#include "data_layout.h"#include "wintrinsic.h"#include "sections.h"#include "betarget.h"#include "intrn_info.h"

Go to the source code of this file.
| #define DEFAULT_LARGE_OBJECT_BYTES 64 |
| #define DEFAULT_STACK_ALIGNMENT _QUAD_ALIGN |
Definition at line 196 of file data_layout.cxx.
| #define DEFAULT_TEMP_SPACE_BYTES 4096 |
Definition at line 236 of file data_layout.cxx.
Referenced by Allocate_Entry_Formal(), Create_And_Set_ST_Base(), and finalize_inito::operator()().
Definition at line 237 of file data_layout.cxx.
| #define Is_Allocatable_Root_Block | ( | st | ) | (ST_class(st) == CLASS_BLOCK && !Is_root_base(st) && Has_No_Base_Block(st)) |
Definition at line 238 of file data_layout.cxx.
Referenced by Process_Stack_Variable(), and Shorten_Section().
| #define IS_POW2 | ( | num | ) | ( (~((num)-1) & (num) ) == (num) ) |
Definition at line 272 of file data_layout.cxx.
Referenced by Allocate_Object_To_Section(), Assign_Object_To_Section(), Configure_Target(), and nearest_power_of_two().
| #define MAX_FRAME_OFFSET |
Value:
Definition at line 181 of file data_layout.cxx.
Referenced by Init_Frame_For_PU(), and Process_Stack_Variable().
| #define MAX_LARGE_FRAME_OFFSET 0x7FFFFFFFFFFFFFFFLL |
Definition at line 180 of file data_layout.cxx.
Referenced by Choose_Stack_Model(), and Merge_Fixed_Stack_Frame().
| #define MAX_SFSEG_BYTES 0x7FFFFFFFFFFFFFFFLL |
Definition at line 1971 of file data_layout.cxx.
Referenced by Finalize_Stack_Frame(), and Merge_Fixed_Stack_Frame().
Definition at line 270 of file data_layout.cxx.
Referenced by Add_Object_To_Frame_Segment(), Allocate_Space(), Assign_Offset(), Calc_Actual_Area(), Calculate_Stack_Frame_Sizes(), Finalize_Stack_Frame(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), i860_va_start(), Init_Formal_Segments(), Init_Frame_For_PU(), Initialize_Stack_Frame(), monstartup(), and St_Block_Union().
| #define SEG_SIZE | ( | s | ) |
Value:
(SF_Block(s) ? \ STB_size(SF_Block(s)) : \ ((SF_Maxsize(s) == MAX_SFSEG_BYTES) ? 0 : SF_Maxsize(s) ) )
Definition at line 1894 of file data_layout.cxx.
Referenced by Finalize_Stack_Frame(), and Init_Frame_For_PU().
Definition at line 216 of file data_layout.cxx.
Referenced by Add_Object_To_Frame_Segment(), Allocate_Object(), Assign_Object_To_Frame_Segment(), Bind_Stack_Frame(), Finalize_Stack_Frame(), Init_Segment_Descriptors(), Initialize_Frame_Segment(), Merge_Fixed_Stack_Frame(), Reset_UPFORMAL_Segment(), and Trace_Stack_Segments().
Definition at line 217 of file data_layout.cxx.
Referenced by Add_Object_To_Frame_Segment(), Init_Formal_Segments(), Init_Frame_For_PU(), Init_Segment_Descriptors(), Merge_Fixed_Stack_Frame(), and Trace_Stack_Segments().
Definition at line 218 of file data_layout.cxx.
Referenced by Add_Object_To_Frame_Segment(), Assign_Object_To_Frame_Segment(), Init_Segment_Descriptors(), Initialize_Frame_Segment(), and Trace_Stack_Segments().
| #define SF_Seg_Desc | ( | n | ) | (&SF_Seg_Descriptors[n]) |
Definition at line 214 of file data_layout.cxx.
| #define SFSEG_block | ( | s | ) | ((s)->block) |
Definition at line 163 of file data_layout.cxx.
| #define SFSEG_FIRST SFSEG_ACTUAL |
| #define SFSEG_LAST SFSEG_UPFORMAL |
Definition at line 153 of file data_layout.cxx.
Referenced by Init_Segment_Descriptors(), and Trace_Stack_Segments().
| #define SFSEG_maxsize | ( | s | ) | ((s)->maxsize) |
Definition at line 164 of file data_layout.cxx.
| #define SFSEG_name | ( | s | ) | ((s)->name) |
Definition at line 165 of file data_layout.cxx.
| #define SFSEG_seg | ( | s | ) | ((s)->seg) |
Definition at line 162 of file data_layout.cxx.
| #define ST_force_gprel | ( | s | ) | ST_gprel(s) |
| #define ST_NAME | ( | st | ) |
Value:
(ST_class(st) == CLASS_CONST ? \ Targ_Print(NULL,STC_val(st)) : ST_name(st) )
Definition at line 123 of file data_layout.cxx.
Referenced by Shorten_Section().
| #define ST_NO_LINKAGE | ( | st | ) |
Value:
(ST_export(st) == EXPORT_LOCAL || \ ST_export(st) == EXPORT_LOCAL_INTERNAL)
Definition at line 126 of file data_layout.cxx.
Referenced by Allocate_Object().
| #define vararg_symbols ((ST * *)0) |
Definition at line 1519 of file data_layout.cxx.
| enum _align |
Definition at line 185 of file data_layout.cxx.
| enum SF_SEGMENT |
Definition at line 139 of file data_layout.cxx.
| static void Add_Object_To_Frame_Segment | ( | ST * | sym, | |
| SF_SEGMENT | seg, | |||
| BOOL | allocate | |||
| ) | [static] |
Definition at line 766 of file data_layout.cxx.
References Current_pu, formal, Formal_Save_Area_Size, fprintf(), Get_Current_PU, INCREMENT, Initialize_Frame_Segment(), INT32, INT64, KIND_STRUCT, MTYPE_is_float, MTYPE_RegisterSize, NULL, PU_cxx_lang(), ROUNDUP, Set_ST_base, Set_STB_size, SF_Block, SF_Maxsize, SF_Name, SFSEG_ACTUAL, SFSEG_FORMAL, SFSEG_UPFORMAL, size, Spill_Int_Mtype, ST_Block_Merge(), ST_name, ST_sclass, ST_size, ST_type, STB_size, Target_Byte_Sex, TFile, Trace_Frame, TY_kind, and TY_mtype.
Referenced by Allocate_All_Formals(), Allocate_Entry_Formal(), and Initialize_Stack_Frame().
Definition at line 1584 of file data_layout.cxx.
References Add_Object_To_Frame_Segment(), Allocate_Entry_Formal(), BOOL, Copy_TY(), FALSE, First_Float_Preg_Param_Offset, First_Int_Preg_Param_Offset, FmtAssert, Formal_ST_type(), Formal_Sym(), Gen_Temp_Symbol(), Get_Current_PU, Get_Input_Parameter_Location(), Get_Vararg_Input_Parameter_Location(), Init_ST_formal_info_for_PU(), INT, Int_Preg, Is_Formal_Preg, MTYPE_F16, MTYPE_To_TY, NULL, OPC_ALTENTRY, PLOC_is_nonempty, PLOC_offset, PLOC_on_stack, PLOC_reg, PLOC_size, Preg_Offset_Is_Float, Preg_Offset_Is_Int, PU_has_altentry, Reset_UPFORMAL_Segment(), SCLASS_FORMAL, Set_ST_addr_saved(), Set_ST_base, Set_ST_is_value_parm, Set_ST_ofst, Set_ST_sclass, Set_TY_no_ansi_alias, Setup_Input_Parameter_Locations(), SFSEG_FTEMP, ST_pu_type, ST_type, sym, TRUE, TY_is_varargs, WN_first(), WN_formal, WN_func_body, WN_kid_count(), WN_next(), WN_num_formals, WN_opcode(), and WN_st().
Referenced by Initialize_Stack_Frame().
Definition at line 1433 of file data_layout.cxx.
References _SEC_BSS, Add_Object_To_Frame_Segment(), Adjusted_Alignment(), Allocate_Object_To_Section(), Clear_ST_is_value_parm(), Get_Current_PU, Has_No_Base_Block, PU_has_altentry, SCLASS_PSTATIC, sec, Set_ST_sclass, SFSEG_FORMAL, SFSEG_FTEMP, SFSEG_UPFORMAL, Shorten_Section(), ST_declared_static, and TRUE.
Referenced by Allocate_All_Formals().
Definition at line 3354 of file data_layout.cxx.
References Allocate_Object(), CLASS_CONST, CLASS_VAR, DevWarn, Emit_Global_Data, For_all(), FOREACH_SYMBOL, Get_Trace(), GLOBAL_SYMTAB, Has_Base_Block, INT, SCLASS_COMMON, SCLASS_REG, Set_ST_base, St_Attr_Table, ST_ATTR_Table_Size(), ST_class, ST_export, ST_index, ST_is_fill_align, ST_is_reshaped, ST_name, ST_name_idx(), ST_sclass, ST_type, TP_DATALAYOUT, Trace_Frame, and TY_size.
Referenced by Phase_Init().
Definition at line 2739 of file data_layout.cxx.
References _SEC_TEXT, Assign_Object_To_Section(), FmtAssert, SCLASS_TEXT, and ST_sclass.
Definition at line 2081 of file data_layout.cxx.
References Allocate_Temp_To_Memory(), Current_PU_Stack_Model, Gen_Temp_Symbol(), NULL, SMODEL_SMALL, and Spill_Int_Type.
Referenced by Calculate_Stack_Frame_Sizes().
Definition at line 3111 of file data_layout.cxx.
References _SEC_BSS, _SEC_CPLINIT, _SEC_DATA, _SEC_DISTR_ARRAY, _SEC_EH_REGION, _SEC_EH_REGION_SUPP, _SEC_LBSS, _SEC_LDATA, _SEC_RDATA, _SEC_TEXT, _SEC_THREAD_PRIVATE_FUNCS, Adjusted_Alignment(), Allocate_Object_To_Predefined_Named_Section(), Allocate_Object_To_Section(), Assign_Object_To_Section(), Assign_ST_To_Named_Section(), Base_Symbol(), CLASS_CONST, Clear_ST_is_not_used, DevWarn, FALSE, File_info, FILE_INFO_ipa(), Find_Section_Name_For_ST(), Gen_PIC_Shared, Has_Base_Block, Is_Allocated(), Is_True, Make_Align_Type(), NULL, Process_Stack_Variable(), SCLASS_AUTO, SCLASS_COMMON, SCLASS_CPLINIT, SCLASS_DGLOBAL, SCLASS_DISTR_ARRAY, SCLASS_EH_REGION, SCLASS_EH_REGION_SUPP, SCLASS_EXTERN, SCLASS_FORMAL, SCLASS_FORMAL_REF, SCLASS_FSTATIC, SCLASS_PSTATIC, SCLASS_REG, SCLASS_TEXT, SCLASS_THREAD_PRIVATE_FUNCS, SCLASS_UGLOBAL, SCLASS_UNKNOWN, sec, Set_ST_gprel, Set_ST_type, SF_Block, SFSEG_FORMAL, Shorten_Section(), ST_has_named_section(), ST_has_Predefined_Named_Section(), ST_init_value_zero, ST_is_constant(), ST_is_initialized, ST_is_not_used, ST_is_thread_private, ST_is_weak_symbol, ST_NO_LINKAGE, ST_sclass, ST_sym_class(), and ST_type.
Referenced by Allocate_File_Statics(), CG_End_Final(), CG_Init_Func_Infos(), CGSPILL_Load_From_Memory(), CGTARG_TN_For_Asm_Operand(), Create_Global_Variable(), Create_MicroTask(), EETARG_Call_Mcount(), EETARG_Generate_PIC_Entry_Code(), Exp_Immediate(), Exp_Immediate_Int(), Exp_Intrinsic_Op(), Exp_Is_Large_Stack_Sym(), Exp_Ldst(), Exp_Select_And_Condition(), Expand_Abs(), Expand_Add(), Expand_Expr(), Expand_Fast_Sqrt(), Expand_Int_To_Long_Double(), Expand_Long_Double_To_Int(), Expand_Neg(), Expand_Recip(), Expand_Unsigned_Int_To_Float_m32(), Fill_Align_Symbol(), Finalize_Stack_Frame(), EDGE_PROFILE::Gen_Call_BB(), Gen_Const_Symbol_TN(), Gen_ST_For_BB(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), Generate_Temp_Apply_Arg(), Handle_Entry(), Handle_ILDBITS(), Handle_ILOAD(), Handle_ISTBITS(), Handle_ISTORE(), Handle_XGOTO(), Lego_File_Init(), Lego_PU_Init(), lower_bit_field_id(), lower_split_sym_addrs(), Make_MPRuntime_ST(), New_DART(), Offset_from_FP(), finalize_inito::operator()(), Preorder_Process_PUs(), Process_Global_Distribute(), put_location(), St_Block_Union(), ST_For_Range_Table(), and Write_Symbol().
| static void Allocate_Object_To_Predefined_Named_Section | ( | ST * | st, | |
| SECTION_IDX | sec_idx | |||
| ) | [static] |
Definition at line 3068 of file data_layout.cxx.
References Adjusted_Alignment(), Allocate_Object_To_Section(), Clear_ST_has_named_section(), Clear_ST_init_value_zero(), DevWarn, INITV_Init_Pad(), New_INITO(), New_INITV(), SCLASS_DGLOBAL, SCLASS_UGLOBAL, Set_INITO_val(), Set_ST_base_idx(), Set_ST_is_initialized, Set_ST_ofst, Set_ST_sclass, ST_size, ST_st_idx, and ST_storage_class().
Referenced by Allocate_Object().
| static void Allocate_Object_To_Section | ( | ST * | st, | |
| SECTION_IDX | sec, | |||
| UINT | align | |||
| ) | [static] |
Definition at line 2693 of file data_layout.cxx.
References fprintf(), Get_Section_ST(), INT64, IS_POW2, Is_True, max_size, SCLASS_UNKNOWN, SEC_max_sec_size, ST_Block_Merge(), ST_name, TFile, and Trace_Frame.
Referenced by Allocate_Entry_Formal(), Allocate_Object(), and Allocate_Object_To_Predefined_Named_Section().
Definition at line 634 of file data_layout.cxx.
References Adjusted_Alignment(), align, CLASS_BLOCK, CLASS_CONST, CLASS_FUNC, CLASS_VAR, Current_pu, Current_PU_Stack_Model, DevWarn, Early_Terminate(), fprintf(), Frame_Has_Calls, Get_Current_PU, INT64, Is_Local_Symbol, Is_True, MAX, Max_Small_Frame_Offset, NULL, PU_CXX_LANG, PU_src_lang, RC_OVERFLOW_ERROR, ROUNDUP, Set_ST_ofst, Set_STB_align, Set_STB_size, size, SMODEL_SMALL, ST_class, ST_name, ST_ofst, ST_size, ST_type, Stack_Offset_Adjustment, STB_align, STB_decrement, STB_size, STC_val, Targ_Print(), TFile, Trace_Frame, TY_align, and UINT.
Referenced by ST_Block_Merge().
Definition at line 2525 of file data_layout.cxx.
References Is_True, Process_Stack_Variable(), SCLASS_AUTO, Set_ST_is_temp_var, and ST_sclass.
Referenced by Allocate_Local_Spill_Sym(), Expand_Float_To_Float(), Expand_Float_To_Int_Tas(), Expand_Int_To_Float_Tas(), Expand_Int_To_Long_Double(), Expand_Int_To_Vect_Tas(), Expand_Long_Double_To_Int(), Expand_non_SSE2_Float_Floor(), Expand_Replicate(), Expand_Select(), Expand_SSE3_Long_Double_To_Int(), Gen_Spill_Symbol(), CIO_RWTRAN::Generate_Black_Holes(), Handle_INTRINSIC_CALL(), and Store_To_Temp_Stack().
| static void Assign_Object_To_Frame_Segment | ( | ST * | sym, | |
| SF_SEGMENT | seg, | |||
| INT64 | offset | |||
| ) | [static] |
Definition at line 744 of file data_layout.cxx.
References fprintf(), INCREMENT, Initialize_Frame_Segment(), Set_ST_base, Set_ST_ofst, SF_Block, SF_Name, ST_name, ST_sclass, TFile, and Trace_Frame.
Referenced by Get_Altentry_UpFormal_Symbol().
| static void Assign_Object_To_Section | ( | ST * | st, | |
| SECTION_IDX | sec, | |||
| UINT | align | |||
| ) | [static] |
Definition at line 2723 of file data_layout.cxx.
References fprintf(), Get_Section_ST(), IS_POW2, Is_True, Set_ST_base, ST_name, ST_sclass, TFile, and Trace_Frame.
Referenced by Allocate_Label(), and Allocate_Object().
Definition at line 605 of file data_layout.cxx.
References Adjusted_Alignment(), align, CLASS_VAR, Current_pu, Get_Current_PU, INT32, INT64, PU_CXX_LANG, PU_src_lang, ROUNDUP, Set_ST_ofst, size, ST_class, ST_ofst, ST_size, STB_decrement, STB_size, and UINT.
Referenced by Finalize_Stack_Frame().
Definition at line 1039 of file data_layout.cxx.
References _SEC_BSS, _SEC_DATA, _SEC_RDATA, _SEC_TEXT, CLASS_FUNC, CLASS_VAR, Clear_ST_init_value_zero(), DevWarn, FALSE, FmtAssert, Get_Section_ST_With_Given_Name(), INITV_Init_Pad(), New_INITO(), New_INITV(), SCLASS_COMMON, SCLASS_DGLOBAL, SCLASS_EXTERN, SCLASS_FSTATIC, SCLASS_PSTATIC, SCLASS_UGLOBAL, SCLASS_UNKNOWN, sec, SEC_max_sec_size, Set_INITO_val(), Set_ST_base, Set_ST_is_initialized, Set_ST_sclass, ST_Block_Merge(), ST_class, ST_has_Predefined_Named_Section(), ST_is_constant(), ST_is_initialized, ST_is_not_used, ST_is_weak_symbol, ST_name, ST_sclass, ST_size, and STB_section_idx.
Referenced by Allocate_Object(), EH_Build_PIC_Type(), Em_Dwarf_Begin(), and Assign_Section_Names::operator()().
Definition at line 1950 of file data_layout.cxx.
References Current_PU_Stack_Model, FmtAssert, Get_Direction(), Set_Direction(), SF_Block, SFSEG_ACTUAL, SFSEG_FORMAL, SFSEG_FTEMP, SFSEG_UPFORMAL, SMODEL_DYNAMIC, SMODEL_LARGE, SMODEL_SMALL, and TRUE.
Referenced by Calculate_Stack_Frame_Sizes().
Definition at line 1187 of file data_layout.cxx.
References CIS_Allowed, FALSE, FmtAssert, Formal_Save_Area_Size, fprintf(), Get_Output_Parameter_Location(), i, INT, INTRN_by_value(), INTRN_CONCATEXPR, INTRN_F4COS, INTRN_F4SIN, INTRN_F8COS, INTRN_F8SIN, INTRN_FQCOS, INTRN_FQSIN, Is_Target_32bit, MTYPE_align_best, MTYPE_byte_size, MTYPE_CQ, MTYPE_id, MTYPE_RegisterSize, NULL, OPR_CALL, OPR_ICALL, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_PICCALL, PLOC_total_size, Pointer_Mtype, PLOC::reg, ROUNDUP, Set_PU_arg_area_size(), Setup_Output_Parameter_Locations(), size, Spill_Int_Mtype, TFile, Trace_Frame, TRUE, TY_has_prototype, TY_is_varargs, TY_Of_Parameter(), TY_size, WN_actual, WN_intrinsic(), WN_num_actuals(), WN_operator(), and WN_rtype().
Referenced by Check_Actual_Stack_Size(), and Max_Arg_Area_Bytes().
Definition at line 1763 of file data_layout.cxx.
References FmtAssert, Formal_Save_Area_Size, Get_Current_PU, Get_Input_Parameter_Location(), Get_PU_arg_area_size(), INT, MAX, MIN, NULL, OPC_ALTENTRY, OPC_FUNC_ENTRY, PLOC_total_size, PU_has_altentry, PLOC::reg, Set_PU_arg_area_size(), Setup_Input_Parameter_Locations(), ST_pu_type, TY_is_varargs, TY_Of_Parameter(), WN_first(), WN_formal, WN_func_body, WN_kid_count(), WN_next(), WN_num_formals, WN_opcode(), and WN_st().
Referenced by Initialize_Stack_Frame().
Definition at line 1825 of file data_layout.cxx.
References Adjusted_Alignment(), RELATED_SEGMENTED_ARRAY< T, block_size >::begin(), CLASS_VAR, Current_pu, CURRENT_SYMTAB, RELATED_SEGMENTED_ARRAY< T, block_size >::end(), first, fprintf(), Get_Current_PU, INT64, last, Make_Align_Type(), PU_CXX_LANG, PU_src_lang, SCLASS_AUTO, SCLASS_COMMON, SCLASS_DGLOBAL, Scope_tab, Set_ST_type, ST_base_idx(), ST_class, ST_name, ST_sclass, ST_size, ST_st_idx, SCOPE::st_tab, ST_type, TFile, and Trace_Frame.
Referenced by Initialize_Stack_Frame().
Definition at line 2229 of file data_layout.cxx.
References Allocate_Local_Spill_Sym(), Bind_Stack_Frame(), Current_PU_Actual_Size, fprintf(), Get_Current_PU_ST, Init_Frame_For_PU(), INT32, MAX, Max_Arg_Area_Bytes(), Merge_Fixed_Stack_Frame(), MTYPE_byte_size, ROUNDUP, Spill_Int_Mtype, ST_asm_function_st(), TFile, and Trace_Frame.
Referenced by Do_WOPT_and_CG_with_Regions().
Definition at line 1290 of file data_layout.cxx.
References Calc_Actual_Area(), Current_PU_Actual_Size, FALSE, FmtAssert, INT32, Is_Target_32bit, OPR_CALL, OPR_ICALL, OPR_PICCALL, ST_pu_type, WN_operator(), WN_st(), and WN_ty().
Referenced by lower_bit_field_id().
| static STACK_MODEL Choose_Stack_Model | ( | INT64 | frame_size | ) | [static] |
Definition at line 2049 of file data_layout.cxx.
References Call_Mcount, Debug_Level, FALSE, FmtAssert, Force_Large_Stack_Model, Get_Current_PU, MAX_LARGE_FRAME_OFFSET, Max_Small_Frame_Offset, Opt_Level, PU_has_alloca, PU_has_nested, SMODEL_DYNAMIC, SMODEL_LARGE, SMODEL_SMALL, and SMODEL_UNDEF.
Referenced by Initialize_Stack_Frame().
Definition at line 1524 of file data_layout.cxx.
References i, INT, MAX_NUMBER_OF_REGISTER_PARAMETERS, and NULL.
Referenced by Finalize_Stack_Frame().
Definition at line 586 of file data_layout.cxx.
References Create_Local_Block(), Save_Str(), Set_STB_is_basereg, and Set_STB_root_base.
Referenced by Initialize_Stack_Frame().
Definition at line 3459 of file data_layout.cxx.
References CLASS_VAR, EXPORT_LOCAL, Make_Array_Type(), New_ST(), Save_Str(), SCLASS_UGLOBAL, Set_ST_pt_to_unique_mem, and ST_Init().
Referenced by pad_global_arrays::operator()().
Definition at line 577 of file data_layout.cxx.
References Enter_ST, FALSE, New_ST_Block(), SCLASS_UNKNOWN, Set_Direction(), and stack_align.
Referenced by Create_Base_Reg(), Init_Segment_Descriptors(), and Initialize_Frame_Segment().
Definition at line 206 of file cleanup.cxx.
References Be_preg_tab, Be_scope_tab, BE_SCOPE::be_st_tab, RELATED_SEGMENTED_ARRAY< T, block_size >::Clear(), CURRENT_SYMTAB, GLOBAL_SYMTAB, NULL, SCOPE::preg_tab, Scope_tab, SCOPE::st_tab, Terminate(), and growing_table::Un_register().
Referenced by Allocate_Space(), Finalize_Stack_Frame(), and Write_Symdiff().
Definition at line 2377 of file data_layout.cxx.
References Allocate_Object(), Assign_Offset(), CLASS_VAR, Clear_Vararg_Symbols(), Current_PU_Stack_Model, CURRENT_SYMTAB, DevWarn, Early_Terminate(), EC_LAY_stack_limit, ErrMsg(), FmtAssert, For_all(), FOREACH_SYMBOL, fprintf(), Frame_Has_Calls, Get_Current_PU, getrlimit(), Inito_Table, INT, INT64, Is_Target_64bit, MAX, Max_Small_Frame_Offset, MERGE_SEGMENT, mod, MTYPE_byte_size, Pointer_Mtype, PU_has_nested, PUSH_FRAME_POINTER_ON_STACK, RC_OVERFLOW_ERROR, ROUNDUP, SEG_SIZE, Set_Error_Phase(), Set_ST_base, Set_ST_ofst, SF_Block, SFSEG_FORMAL, SFSEG_UPFORMAL, SMODEL_DYNAMIC, SMODEL_LARGE, SMODEL_SMALL, ST_class, ST_has_nested_ref, ST_is_not_used, ST_ofst, stack_align, Stack_Offset_Adjustment, STB_size, TFile, Trace_Frame, Trace_Stack_Segments(), and TRUE.
Referenced by CG_Generate_Code().
Definition at line 1158 of file data_layout.cxx.
References d, FmtAssert, For_all_until(), idx, ST_ATTR_section_name(), St_Attr_Table, ST_IDX_level(), ST_name, and ST_st_idx.
Referenced by Allocate_Object(), and ST_has_Predefined_Named_Section().
Definition at line 927 of file data_layout.cxx.
References CURRENT_SYMTAB, For_all_until(), NULL, ST_ptr(), and St_Table.
Referenced by Compute_Force_TNs(), CYG_Initialize_for_PU(), Generate_Entry(), Generate_Exit(), and Initialize_Stack_Frame().
Definition at line 1503 of file data_layout.cxx.
References Make_Pointer_Type(), SCLASS_FORMAL_REF, ST_sclass, and ST_type.
Referenced by Allocate_All_Formals().
Definition at line 471 of file data_layout.cxx.
References base, Clear_ST_promote_parm, Copy_ST(), Create_Preg(), Debug_Level, FALSE, fprintf(), Get_Current_PU, Get_ST_formal_preg_num(), Get_ST_formal_ref_base(), Is_Allocated(), Make_Pointer_Type(), Opt_Level, PU_has_mp, Save_Str2(), SCLASS_FORMAL, SCLASS_FORMAL_REF, Set_ST_formal_preg_num(), Set_ST_formal_ref_base(), Set_ST_name, Set_ST_sclass, Set_ST_type, ST_declared_static, ST_has_nested_ref, ST_name, ST_sclass, ST_type, TFile, Trace_Frame, and TY_mtype.
Referenced by Allocate_All_Formals().
Definition at line 1738 of file data_layout.cxx.
References Assign_Object_To_Frame_Segment(), Clear_ST_gprel(), Copy_ST(), Formal_Save_Area_Size, Get_Current_PU, INT, MTYPE_byte_size, offset, PLOC_offset, Pointer_Mtype, PU_has_alloca, PUSH_FRAME_POINTER_ON_STACK, PUSH_RETURN_ADDRESS_ON_STACK, Save_Str2(), SCLASS_FORMAL, Set_ST_name, Set_ST_sclass, SFSEG_UPFORMAL, and ST_name.
Referenced by lower_bit_field_id().
Definition at line 563 of file data_layout.cxx.
References DECREMENT, INCREMENT, and STB_decrement.
Referenced by Bind_Stack_Frame().
Definition at line 892 of file data_layout.cxx.
References arg_area_size_array, index(), Init_PU_arg_area_size_array(), INT, Is_True, KIND_FUNCTION, max_arg_area_size_index, TY_id, and TY_kind.
Referenced by Calc_Formal_Area(), and lower_bit_field_id().
| static ST* Get_Section_ST | ( | SECTION_IDX | sec, | |
| UINT | align, | |||
| ST_SCLASS | sclass | |||
| ) | [static] |
Definition at line 950 of file data_layout.cxx.
References _SEC_DATA, _SEC_SDATA, Enter_ST, MAX, New_ST_Block(), NULL, Save_Str(), SEC_block, SEC_is_exec(), SEC_is_gprel(), SEC_is_merge(), SEC_is_nobits(), SEC_name, Set_ST_gprel, Set_STB_exec, Set_STB_is_basereg, Set_STB_merge, Set_STB_nobits, Set_STB_root_base, Set_STB_section, Set_STB_section_idx, and TRUE.
Referenced by Allocate_Object_To_Section(), Assign_Object_To_Section(), OUTPUT_FUNC_START_PROFILER::Generate_Func_Start_Profiler_PU(), and Get_Section_ST_With_Given_Name().
| static ST* Get_Section_ST_With_Given_Name | ( | SECTION_IDX | sec, | |
| ST_SCLASS | sclass, | |||
| STR_IDX | name | |||
| ) | [static] |
Definition at line 986 of file data_layout.cxx.
References _SEC_BSS, _SEC_DATA, CLASS_BLOCK, Copy_ST_Block(), EC_LAY_section_name, ErrMsg(), FOREACH_SYMBOL, Get_Section_ST(), GLOBAL_SYMTAB, i, Index_To_Str(), INT, NULL, SEC_name, Set_ST_name_idx(), ST_class, ST_name, ST_name_idx(), STB_section, STB_section_idx, strcmp(), and strncmp().
Referenced by Assign_ST_To_Named_Section().
Definition at line 446 of file data_layout.cxx.
References i, INT, max_formal_info_index, NULL, formal_info::preg, and sym.
Referenced by Formal_Sym(), REGION_BOUND::GRB_formal_ref(), lower_formal_ref(), and ST_has_formal_preg_num().
Definition at line 412 of file data_layout.cxx.
References formal_info::base, i, INT, max_formal_info_index, NULL, SCLASS_FORMAL_REF, and ST_sclass.
Referenced by Formal_Sym(), REGION_BOUND::GRB_formal_ref(), lower_bit_field_id(), lower_formal_ref(), RVI_NODE::New_home_wn(), and put_location().
Definition at line 1534 of file data_layout.cxx.
References First_Float_Preg_Param_Offset, First_Int_Preg_Param_Offset, Is_True, MAX_NUMBER_OF_INT_REGISTER_PARAMETERS, MAX_NUMBER_OF_REGISTER_PARAMETERS, PLOC_reg, and Preg_Offset_Is_Int.
Referenced by lower_bit_field_id().
Definition at line 1901 of file data_layout.cxx.
References ROUNDUP, SF_Maxsize, SFSEG_FORMAL, SFSEG_UPFORMAL, and stack_align.
Referenced by Initialize_Stack_Frame().
Definition at line 1919 of file data_layout.cxx.
References DEFAULT_LARGE_OBJECT_BYTES, Large_Object_Bytes, MAX_FRAME_OFFSET, ROUNDUP, SEG_SIZE, SF_Maxsize, SFSEG_ACTUAL, SFSEG_FORMAL, SFSEG_FTEMP, and stack_align.
Referenced by Calculate_Stack_Frame_Sizes().
Definition at line 870 of file data_layout.cxx.
References arg_area_size_array, INT, MAX, max_arg_area_size_index, MEM_src_pool, NULL, Src_Alloc, TY_Table_Size(), TYPE_MEM_POOL_REALLOC_N, and UINT32.
Referenced by Get_PU_arg_area_size(), Initialize_Stack_Frame(), and Set_PU_arg_area_size().
Definition at line 1876 of file data_layout.cxx.
References Create_Local_Block(), INCREMENT, MAX_SFSEG_BYTES, s, Save_Str2(), Set_ST_is_not_used, SF_Block, SF_Maxsize, SF_Name, SFSEG_FORMAL, SFSEG_LAST, and SFSEG_UNKNOWN.
Referenced by Initialize_Stack_Frame().
Definition at line 368 of file data_layout.cxx.
References formal_info::base, CURRENT_SYMTAB, i, INT, Is_True, last, formal_info::level, MAX, max_formal_info_index, NULL, formal_info::preg, Realloc_ST_formal_info(), Src_Alloc, formal_info::sym, sym, and SYMTAB_IDX_ZERO.
Referenced by Allocate_All_Formals().
| static void Initialize_Frame_Segment | ( | SF_SEGMENT | seg, | |
| ST_SCLASS | sclass, | |||
| STACK_DIR | dir | |||
| ) | [static] |
Definition at line 733 of file data_layout.cxx.
References Create_Local_Block(), NULL, Save_Str2(), Set_ST_sclass, SF_Block, and SF_Name.
Referenced by Add_Object_To_Frame_Segment(), Assign_Object_To_Frame_Segment(), and Reset_UPFORMAL_Segment().
Definition at line 2094 of file data_layout.cxx.
References Add_Object_To_Frame_Segment(), Allocate_All_Formals(), Calc_Formal_Area(), Calc_Local_Area(), Choose_Stack_Model(), CLASS_VAR, Create_Base_Reg(), Current_PU_Actual_Size, Current_PU_Stack_Model, DECREMENT, DEFAULT_TEMP_SPACE_BYTES, ErrMsg(), EXPORT_LOCAL, FALSE, Find_Special_Return_Address_Symbol(), FmtAssert, fprintf(), Frame_Has_Calls, frame_size, Get_Current_PU, Get_Trace(), INCREMENT, Init_Formal_Segments(), Init_PU_arg_area_size_array(), Init_Segment_Descriptors(), INT32, INT64, Max_Arg_Area_Bytes(), mp_io, MTYPE_byte_size, MTYPE_To_TY, New_ST(), NULL, OPC_FUNC_ENTRY, Pointer_Mtype, PU_has_return_address, PUSH_FRAME_POINTER_ON_STACK, PUSH_RETURN_ADDRESS_ON_STACK, ROUNDUP, Save_Str(), SCLASS_FORMAL, Set_Error_Phase(), Set_ST_base, Set_ST_ofst, SFSEG_UPFORMAL, Spill_Int_Mtype, ST_asm_function_st(), st_base, ST_class, ST_export, ST_Init(), ST_name, ST_sclass, stack_direction, Target_Byte_Sex, TFile, TP_DATALAYOUT, Trace_Frame, TRUE, WN_opcode(), and WN_st().
Referenced by Do_WOPT_and_CG_with_Regions().
Definition at line 255 of file data_layout.cxx.
References base, Base_Symbol_And_Offset(), CLASS_BLOCK, INT64, Is_root_base, SCLASS_FORMAL, ST_class, ST_sclass, and TRUE.
Referenced by Allocate_Object(), Formal_Sym(), lower_bit_field_id(), and ST_alignment().
Definition at line 2544 of file data_layout.cxx.
References CLASS_CONST, CLASS_VAR, FALSE, KIND_ARRAY, MTYPE_STR, MTYPE_U1, ST_class, ST_is_const_var, ST_is_initialized, ST_type, STC_val, TCON_ty, TRUE, TY_AR_etype, TY_kind, and TY_mtype.
Referenced by Shorten_Section().
Definition at line 1330 of file data_layout.cxx.
References Calc_Actual_Area(), Frame_Has_Calls, i, INT, INT32, Is_Target_32bit, MAX, MTYPE_RegisterSize, next, NULL, OPC_BLOCK, OPC_PRAGMA, OPC_XPRAGMA, opcode, OPCODE_is_leaf(), OPCODE_operator(), OPR_CALL, OPR_ICALL, OPR_INTRINSIC_CALL, OPR_INTRINSIC_OP, OPR_IO, OPR_PICCALL, Spill_Int_Mtype, ST_pu_type, TRUE, wn, WN_first(), WN_kid(), WN_kid_count(), WN_next(), WN_opcode(), WN_pragma(), WN_PRAGMA_COPYIN, wn_size, WN_st(), and WN_ty().
Referenced by Calculate_Stack_Frame_Sizes(), and Initialize_Stack_Frame().
Definition at line 1984 of file data_layout.cxx.
References BOOL, Current_PU_Stack_Model, FmtAssert, Get_Current_PU_ST, INT32, MAX_LARGE_FRAME_OFFSET, Max_Small_Frame_Offset, MERGE_SEGMENT, NULL, Set_ST_base, Set_ST_ofst, Set_STB_size, SF_Block, SF_Maxsize, SFSEG_ACTUAL, SFSEG_FORMAL, SFSEG_FTEMP, SFSEG_UPFORMAL, SMODEL_DYNAMIC, SMODEL_LARGE, SMODEL_SMALL, ST_pu_type, Stack_Offset_Adjustment, STB_size, TRUE, and TY_is_varargs.
Referenced by Calculate_Stack_Frame_Sizes().
| void Pad_Global_Arrays | ( | ) |
Definition at line 3520 of file data_layout.cxx.
References For_all(), GLOBAL_SYMTAB, and St_Table.
Referenced by Phase_Init().
Definition at line 2271 of file data_layout.cxx.
References base, BOOL, CLASS_BLOCK, Current_PU_Stack_Model, Get_Current_PU, Is_Allocatable_Root_Block, Is_Target_32bit, Is_True, Large_Object_Bytes, MAX_FRAME_OFFSET, PU_C_LANG, PU_CXX_LANG, PU_src_lang, SCLASS_AUTO, Set_ST_base, Set_ST_ofst, size, SMODEL_LARGE, SMODEL_SMALL, ST_Block_Merge(), ST_class, ST_is_return_var, ST_sclass, ST_type, STB_size, TY_size, and UINT64.
Referenced by Allocate_Object(), and Allocate_Temp_To_Memory().
Definition at line 352 of file data_layout.cxx.
References max_formal_info_index, MEM_src_pool, and TYPE_MEM_POOL_REALLOC_N.
Referenced by Init_ST_formal_info_for_PU(), and Set_ST_formal_ref_base().
Definition at line 1413 of file data_layout.cxx.
References INCREMENT, Initialize_Frame_Segment(), SCLASS_AUTO, Set_ST_ofst, Set_STB_size, SF_Block, and SFSEG_UPFORMAL.
Referenced by Allocate_All_Formals(), and lower_bit_field_id().
Definition at line 570 of file data_layout.cxx.
References DECREMENT, Reset_STB_decrement, and Set_STB_decrement.
Referenced by Bind_Stack_Frame(), and Create_Local_Block().
Definition at line 3536 of file data_layout.cxx.
References Frame_Has_Calls.
Referenced by CG_Generate_Code().
Definition at line 905 of file data_layout.cxx.
References arg_area_size_array, index(), Init_PU_arg_area_size_array(), INT, Is_True, KIND_FUNCTION, max_arg_area_size_index, TY_id, and TY_kind.
Referenced by Calc_Actual_Area(), Calc_Formal_Area(), and lower_bit_field_id().
Definition at line 459 of file data_layout.cxx.
References FALSE, i, INT, Is_True, max_formal_info_index, and formal_info::preg.
Referenced by Formal_Sym().
Definition at line 427 of file data_layout.cxx.
References formal_info::base, i, INT, formal_info::level, max_formal_info_index, NULL, Realloc_ST_formal_info(), ST_level, and formal_info::sym.
Referenced by Formal_Sym().
| static SECTION_IDX Shorten_Section | ( | ST * | st, | |
| SECTION_IDX | sec | |||
| ) | [static] |
Definition at line 2572 of file data_layout.cxx.
References _SEC_LIT16, _SEC_LIT4, _SEC_LIT8, _SEC_RDATA, Adjusted_Alignment(), BOOL, CLASS_BLOCK, CLASS_CONST, CLASS_VAR, Corresponding_Short_Section(), fprintf(), Gen_PIC_Call_Shared, Gen_PIC_Shared, Gspace_Available, INT64, Is_Allocatable_Root_Block, Is_String_Literal(), MAX, Max_Sdata_Elt_Size, MTYPE_C10, MTYPE_F10, MTYPE_F4, MTYPE_F8, MTYPE_FQ, MTYPE_I4, MTYPE_I8, MTYPE_U4, MTYPE_U8, SEC_is_gprel(), Set_ST_gprel, size, ST_class, ST_force_gprel, ST_gprel, ST_is_preemptible, ST_NAME, ST_not_gprel(), ST_size, ST_type, STC_val, Strings_Not_Gprelative, TCON_ty, TFile, Trace_Frame, and TY_size.
Referenced by Allocate_Entry_Formal(), and Allocate_Object().
Definition at line 715 of file data_layout.cxx.
References Allocate_Space(), base, CLASS_BLOCK, Is_True, Set_ST_base, Set_ST_is_initialized, ST_base, ST_class, ST_is_initialized, and STB_section.
Referenced by Add_Object_To_Frame_Segment(), Allocate_Object_To_Section(), Assign_ST_To_Named_Section(), and Process_Stack_Variable().
| BOOL ST_has_Predefined_Named_Section | ( | ST * | st, | |
| SECTION_IDX & | sec_idx | |||
| ) |
Definition at line 3045 of file data_layout.cxx.
References _SEC_DISTR_ARRAY, _SEC_UNKNOWN, FALSE, Find_Section_Name_For_ST(), Index_To_Str(), SEC_name, strcmp(), and TRUE.
Referenced by Allocate_Object(), and Assign_ST_To_Named_Section().
Definition at line 284 of file data_layout.cxx.
References base, Base_Symbol(), FALSE, SCLASS_AUTO, SCLASS_FORMAL, ST_sclass, and TRUE.
Referenced by Constant_Operand0(), Exp_Is_Large_Stack_Sym(), Exp_Ldst(), Get_TN_Range(), iadd_special_case(), and Preg_Is_Rematerializable().
Definition at line 313 of file data_layout.cxx.
References CLASS_CONST, CLASS_VAR, FALSE, SCLASS_AUTO, SCLASS_DGLOBAL, SCLASS_FORMAL, SCLASS_FSTATIC, SCLASS_PSTATIC, ST_class, ST_sclass, and TRUE.
Referenced by lower_bit_field_id(), and ST_alignment().
Definition at line 538 of file data_layout.cxx.
References _DWORD_ALIGN, _QUAD_ALIGN, _WORD_ALIGN, Align_Double, Is_Target_64bit, and stack_align.
Referenced by Adjusted_Alignment(), em_alloca(), Expand_Load(), Expand_Store(), Handle_ALLOCA(), and Simd_Align_Analysis().
Definition at line 557 of file data_layout.cxx.
References stack_direction.
Referenced by em_alloca().
Definition at line 3527 of file data_layout.cxx.
References Frame_Has_Calls, and Stack_Offset_Adjustment.
Referenced by Handle_ALLOCA(), and Handle_DEALLOCA().
Definition at line 2303 of file data_layout.cxx.
References align, basename, fprintf(), INT, INT64, NULL, offset, s, SF_Block, SF_Maxsize, SF_Name, SFSEG_FIRST, SFSEG_LAST, size, ST_base, ST_name, ST_ofst, STB_align, STB_size, and TFile.
Referenced by Finalize_Stack_Frame().
Definition at line 3420 of file data_layout.cxx.
References CLASS_BLOCK, CLASS_CONST, CLASS_VAR, Current_PU_Stack_Model, FALSE, Large_Object_Bytes, SCLASS_AUTO, SCLASS_FORMAL, SMODEL_DYNAMIC, SMODEL_LARGE, SMODEL_SMALL, ST_class, ST_gprel, ST_sclass, ST_size, and TRUE.
Referenced by RVI::Is_lda_candidate(), CODEREP::Is_rvi_lda_candidate(), and lower_split_sym_addrs().
UINT32* arg_area_size_array [static] |
Definition at line 865 of file data_layout.cxx.
Referenced by Get_PU_arg_area_size(), Init_PU_arg_area_size_array(), and Set_PU_arg_area_size().
Definition at line 120 of file data_layout.cxx.
Referenced by Calculate_Stack_Frame_Sizes(), Check_Actual_Stack_Size(), em_alloca(), Handle_ALLOCA(), and Initialize_Stack_Frame().
| STACK_MODEL Current_PU_Stack_Model = SMODEL_UNDEF |
Definition at line 121 of file data_layout.cxx.
Referenced by Allocate_Local_Spill_Sym(), Allocate_Space(), Bind_Stack_Frame(), Build_Fde_For_Proc(), Can_Do_Tail_Calls_For_PU(), Cg_Dwarf_Process_PU(), CGEMIT_Gen_Asm_Frame(), Compute_Reg_State(), Create_Unwind_Descriptors(), Emit_Unwind_Directives_For_OP(), Finalize_Stack_Frame(), Init_Entry_Exit_Code(), Initialize_Stack_Frame(), Merge_Fixed_Stack_Frame(), Process_Stack_Variable(), REGISTER_Reset_FP(), and Uses_Small_Offset().
formal_info* formal_info_array [static] |
Definition at line 348 of file data_layout.cxx.
Definition at line 117 of file data_layout.cxx.
Referenced by addr_subtract(), Build_Fde_For_Proc(), EBO_Lea_Insertion(), Exp_Is_Large_Stack_Sym(), Exp_Ldst(), Exp_Savexmms_Intrinsic(), Expand_Float_To_Float(), Expand_Float_To_Int_Tas(), Expand_Int_To_Float_Tas(), Expand_Int_To_Long_Double(), Expand_Int_To_Vect_Tas(), Expand_Long_Double_To_Int(), Modify_Asm_String(), Offset_from_FP(), put_location(), r_apply_l_const(), r_assemble_binary(), and Setup_Text_Section_For_PU().
BOOL Frame_Has_Calls [static] |
Definition at line 129 of file data_layout.cxx.
Referenced by Allocate_Space(), Finalize_Stack_Frame(), Initialize_Stack_Frame(), Max_Arg_Area_Bytes(), Set_Frame_Has_Calls(), and Stack_Offset_Adjustment_For_PU().
INT32 Large_Object_Bytes [static] |
Definition at line 224 of file data_layout.cxx.
Referenced by Init_Frame_For_PU(), Process_Stack_Variable(), and Uses_Small_Offset().
INT max_arg_area_size_index = 0 [static] |
Definition at line 866 of file data_layout.cxx.
Referenced by Get_PU_arg_area_size(), Init_PU_arg_area_size_array(), and Set_PU_arg_area_size().
INT max_formal_info_index = 0 [static] |
Definition at line 349 of file data_layout.cxx.
Referenced by Get_ST_formal_preg_num(), Get_ST_formal_ref_base(), Init_ST_formal_info_for_PU(), Realloc_ST_formal_info(), Set_ST_formal_preg_num(), and Set_ST_formal_ref_base().
Definition at line 777 of file wn_fio.cxx.
Referenced by Initialize_Stack_Frame(), lower_io_items(), lower_io_statement(), lower_record_items(), Make_IoRuntime_ST(), and Process_Command_Line().
SF_SEG_DESC SF_Seg_Descriptors[SFSEG_LAST+1] [static] |
Initial value:
{
{ SFSEG_UNKNOWN, NULL, MAX_SFSEG_BYTES, "Unknown" },
{ SFSEG_ACTUAL, NULL, MAX_SFSEG_BYTES, "Actual_Arg" },
{ SFSEG_FTEMP, NULL, MAX_SFSEG_BYTES, "Fixed_Temp" },
{ SFSEG_FORMAL, NULL, MAX_SFSEG_BYTES, "Formal_Arg" },
{ SFSEG_UPFORMAL, NULL, MAX_SFSEG_BYTES, "UpFormal_Arg" }
}
Definition at line 207 of file data_layout.cxx.
Definition at line 116 of file data_layout.cxx.
Referenced by addr_subtract(), Analyze_OP_For_Unwind_Info(), EBO_Lea_Insertion(), Exp_Is_Large_Stack_Sym(), Exp_Ldst(), Exp_Savexmms_Intrinsic(), Expand_Float_To_Float(), Expand_Float_To_Int_Tas(), Expand_Int_To_Float_Tas(), Expand_Int_To_Long_Double(), Expand_Int_To_Vect_Tas(), Expand_Long_Double_To_Int(), Expand_non_SSE2_Float_Floor(), Expand_SSE3_Long_Double_To_Int(), lower_bit_field_id(), Modify_Asm_String(), Offset_from_FP(), put_location(), r_apply_l_const(), r_assemble_binary(), Setup_Text_Section_For_PU(), and Store_To_Temp_Stack().
INT16 stack_align = DEFAULT_STACK_ALIGNMENT [static] |
Definition at line 202 of file data_layout.cxx.
Referenced by Adjusted_Alignment(), Create_Local_Block(), Finalize_Stack_Frame(), Init_Formal_Segments(), Init_Frame_For_PU(), and Stack_Alignment().
STACK_DIR stack_direction [static] |
Definition at line 193 of file data_layout.cxx.
Referenced by emit_push_insn(), Initialize_Stack_Frame(), and Stack_Direction().
BOOL Trace_Frame = FALSE [static] |
Definition at line 226 of file data_layout.cxx.
Referenced by Add_Object_To_Frame_Segment(), Allocate_File_Statics(), Allocate_Object_To_Section(), Allocate_Space(), Assign_Object_To_Frame_Segment(), Assign_Object_To_Section(), Calc_Actual_Area(), Calc_Local_Area(), Calculate_Stack_Frame_Sizes(), Finalize_Stack_Frame(), Formal_Sym(), Initialize_Stack_Frame(), and Shorten_Section().
1.5.6