
Go to the source code of this file.
| typedef int INT |
Definition at line 49 of file wfe_decl.h.
Definition at line 50 of file wfe_decl.h.
| typedef int TY_IDX |
Definition at line 51 of file wfe_decl.h.
Definition at line 1854 of file wfe_decl.cxx.
References aggregate_inito, Enter_tcon(), FALSE, FmtAssert, Get_Integer_Value(), Get_ST, Get_TY(), Host_To_Targ_String(), last_aggregate_initv, MTYPE_STRING, New_Const_Sym(), OPR_LDA, Pointer_Size, TREE_CODE, TREE_OPERAND, TREE_STRING_LENGTH, TREE_STRING_POINTER, TREE_TYPE, WFE_Add_Aggregate_Init_Integer(), WFE_Add_Aggregate_Init_Label(), WFE_Add_Aggregate_Init_Symbol(), WFE_Add_Aggregate_Init_Symoff(), WFE_Expand_Expr(), WFE_Get_LABEL(), WN_Delete, WN_offset(), WN_operator(), and WN_st().
Referenced by Add_Inito_For_Tree(), Add_Initv_For_Tree(), and output_constant().
Definition at line 1564 of file wfe_decl.cxx.
References aggregate_inito, FALSE, FmtAssert, INITV_Init_Integer(), last_aggregate_initv, mtype, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, New_INITV(), not_at_root, Set_INITO_val(), Set_INITV_next(), and TYPE_ID.
Referenced by Add_Bitfield_Initv_For_Tree(), Add_Inito_For_Tree(), Add_Initv_For_Tree(), assemble_integer(), and WFE_Add_Aggregate_Init_Address().
Definition at line 1550 of file wfe_decl.cxx.
References aggregate_inito, INITV_Init_Pad(), last_aggregate_initv, New_INITV(), not_at_root, Set_INITO_val(), and Set_INITV_next().
Referenced by Add_Inito_For_Tree(), assemble_zeros(), Traverse_Aggregate_Pad(), and WFE_Finish_Aggregate_Init().
Definition at line 853 of file wfe_decl.cxx.
References aggregate_inito, Enter_tcon(), FALSE, FmtAssert, Host_To_Targ_Float(), Host_To_Targ_Float_10(), Host_To_Targ_Float_4(), Host_To_Targ_Quad(), INITV_Set_VAL(), Initv_Table, last_aggregate_initv, MTYPE_F10, MTYPE_F4, MTYPE_F8, New_INITV(), not_at_root, REAL_VALUE_TO_TARGET_LONG_DOUBLE, Set_INITO_val(), Set_INITV_next(), t1, WFE_Convert_Internal_Real_to_IEEE_Double(), WFE_Convert_Internal_Real_to_IEEE_Double_Extended(), and WFE_Convert_Internal_Real_to_IEEE_Single().
Referenced by Add_Inito_For_Tree(), Add_Initv_For_Tree(), and assemble_real().
Definition at line 946 of file wfe_decl.cxx.
References aggregate_inito, INITV_Init_String(), last_aggregate_initv, New_INITV(), not_at_root, Set_INITO_val(), and Set_INITV_next().
| void WFE_Add_Weak | ( | ) |
Definition at line 3649 of file wfe_decl.cxx.
References DECL_ASSEMBLER_NAME, DECL_ST, get_identifier(), IDENTIFIER_POINTER, lookup_name(), Set_ST_is_weak_symbol, TREE_VALUE, and weak_decls.
Definition at line 3508 of file wfe_decl.cxx.
References Be_Type_Tbl, FALSE, Gen_Temp_Symbol(), Get_Current_PU, Make_Pointer_Type(), MTYPE_V, OPC_I4INTCONST, Pointer_Mtype, Set_PU_has_alloca(), WFE_add_pragma_to_enclosing_regions(), WFE_Stmt_Append(), WN_CreateAlloca(), WN_CreateIntconst, WN_PRAGMA_LOCAL, and WN_Stid().
Referenced by Create_ST_For_Tree(), and expand_decl().
Definition at line 3524 of file wfe_decl.cxx.
References CLASS_VAR, Create_ST_For_Tree(), CURRENT_SYMTAB, EXPORT_LOCAL, FALSE, Make_Pointer_Type(), mtype, New_ST(), Pointer_Mtype, Save_Str(), SCLASS_AUTO, Set_ST_base_idx(), Set_ST_is_temp_var, Set_ST_pt_to_unique_mem, ST_Init(), ST_name, ST_st_idx, ST_type, TREE_TYPE, TYPE_ID, TYPE_SIZE, WFE_Expand_Expr(), WFE_Stmt_Append(), WN_CreateAlloca(), WN_Div, WN_Intconst(), WN_rtype(), and WN_Stid().
Referenced by expand_decl().
Definition at line 3363 of file wfe_decl.cxx.
References CLASS_FUNC, cp_namespace_decls(), curr_namespace_decl, DECL_ASSEMBLER_NAME, DECL_ASSEMBLER_NAME_SET_P, DECL_WEAK, DevWarn, ErrMsg(), error(), expanded_decl(), FALSE, finish_alias, FmtAssert, Get_ST, IDENTIFIER_POINTER, Is_True, lineno, lookup_name(), make_pair(), NULL, NULL_TREE, Pu_Table, SCLASS_EXTERN, Set_PU_no_delete(), Set_ST_base_idx(), Set_ST_emit_symbol, Set_ST_init_value_zero, Set_ST_is_initialized, Set_ST_sclass, Set_ST_strong_idx(), ST_init_value_zero, ST_is_initialized, ST_is_weak_symbol, ST_name, ST_pu(), ST_sclass, ST_st_idx, ST_sym_class(), strcmp(), TREE_CHAIN, TREE_CODE, and TRUE.
Referenced by assemble_alias(), WFE_Expand_Decl(), and WFE_Expand_Top_Level_Decl().
| void WFE_Assemble_Asm | ( | char * | ) |
Definition at line 156 of file wfe_decl.cxx.
References CLASS_NAME, Current_Map_Tab, CURRENT_SYMTAB, Delete_Scope(), DST_Create_Subprogram(), DST_Get_Comp_Unit(), EXPORT_LOCAL, FALSE, fflush(), FmtAssert, fprintf(), GLOBAL_SYMTAB, Malloc_Mem_Pool, map_mempool_initialized, MEM_POOL_Initialize, MEM_POOL_Pop, MEM_POOL_Push, New_PU(), New_Scope(), New_ST(), NULL, pu, PU_Info_cu_dst, PU_Info_init(), PU_Info_maptab, PU_Info_next, PU_Info_proc_sym, PU_Info_pu_dst, PU_Init(), PU_IS_COMPILER_GENERATED, Save_Str(), SCLASS_UNKNOWN, Set_PU_Info_flags, Set_PU_Info_state, Set_PU_Info_tree_ptr, Set_PU_no_delete(), Set_PU_no_inline(), Set_ST_asm_function_st(), Set_ST_pu(), Show_Progress, ST_Init(), ST_name, ST_st_idx, Str_To_Index, Subsect_InMem, TRUE, TYPE_MEM_POOL_ALLOC, void, WN_CreateBlock, WN_CreateEntry, WN_MAP_TAB_Create(), WN_MAP_TAB_Delete(), Write_PU_Info(), WT_PROC_SYM, WT_SYMTAB, and WT_TREE.
Referenced by assemble_asm(), and WFE_Expand_Top_Level_Decl().
| void WFE_Assemble_Constructor | ( | const char * | name | ) |
Definition at line 2537 of file wfe_decl.cxx.
References __ctors, CLASS_VAR, DevWarn, EXPORT_LOCAL, FALSE, get_identifier(), Get_ST, GLOBAL_SYMTAB, INITV_Init_Symoff(), lineno, lookup_name(), Make_Pointer_Type(), New_INITO(), New_INITV(), New_ST(), New_ST_ATTR(), Save_Str(), Save_Str2i(), SCLASS_FSTATIC, Set_ST_is_initialized, ST_ATTR_Init(), ST_ATTR_SECTION_NAME, ST_Init(), ST_pu_type, and ST_st_idx.
| void WFE_Assemble_Destructor | ( | const char * | name | ) |
Definition at line 2557 of file wfe_decl.cxx.
References __dtors, CLASS_VAR, DevWarn, EXPORT_LOCAL, FALSE, get_identifier(), Get_ST, GLOBAL_SYMTAB, INITV_Init_Symoff(), lineno, lookup_name(), Make_Pointer_Type(), New_INITO(), New_INITV(), New_ST(), New_ST_ATTR(), Pu_Table, Save_Str(), Save_Str2i(), SCLASS_FSTATIC, Set_PU_no_delete(), Set_PU_no_inline(), Set_ST_addr_saved(), Set_ST_is_initialized, ST_ATTR_Init(), ST_ATTR_SECTION_NAME, ST_Init(), ST_pu(), ST_pu_type, and ST_st_idx.
Definition at line 3564 of file wfe_decl.cxx.
References DECL_ST, Pointer_Mtype, ST_base, ST_type, TREE_CHAIN, TREE_CODE, WFE_Stmt_Append(), WN_CreateDealloca(), WN_kid(), WN_kid0(), and WN_Ldid().
Referenced by expand_end_bindings(), and Pop_Scope_And_Do_Cleanups().
Definition at line 3345 of file wfe_decl.cxx.
References DECL_CONTEXT, DECL_IGNORED_P, DECL_INITIAL, Get_ST, TREE_CODE, TREE_PUBLIC, TREE_STATIC, and void.
Referenced by finish_decl(), and WFE_Expand_Expr().
Definition at line 1940 of file wfe_decl.cxx.
References aggregate_inito, ARB_const_ubnd, FALSE, Get_INITO_Size(), INITO_st(), KIND_ARRAY, last_aggregate_initv, not_at_root, Set_ARB_const_ubnd(), Set_ARB_ubnd_val(), Set_TY_size, ST_type, TY_arb(), TY_etype, TY_kind, TY_size, and WFE_Add_Aggregate_Init_Padding().
Referenced by finish_init(), WFE_Generate_Temp_For_Initialized_Aggregate(), and WFE_Initialize_Decl().
Definition at line 654 of file wfe_decl.cxx.
References Current_Map_Tab, CURRENT_SYMTAB, Delete_Scope(), DevWarn, Get_Current_PU, GLOBAL_SYMTAB, IPA_WN_DELETE_Tree(), NULL, OPR_RETURN, OPR_RETURN_VAL, PU_has_syscall_linkage(), PU_Info_next, Save_Expr_Table, Set_Max_Region_Id(), Set_PU_has_return_address(), Set_PU_is_nested_func(), Set_PU_no_inline(), WFE_Check_Undefined_Labels(), wfe_save_expr_stack_last, WFE_Stmt_Pop(), wn, WN_CreateReturn, WN_INSERT_BlockLast, WN_last(), WN_MAP_TAB_Delete(), WN_operator(), WN_Set_Linenum(), and Write_PU_Info().
Definition at line 3104 of file wfe_decl.cxx.
References aggregate_inito, CLASS_VAR, CURRENT_SYMTAB, EXPORT_LOCAL, FALSE, Get_TY(), last_aggregate_initv, New_INITO(), New_ST(), not_at_root, Pointer_Mtype, Save_Str2(), SCLASS_AUTO, SCLASS_PSTATIC, Set_ST_is_initialized, Set_ST_sclass, ST_Init(), Traverse_Aggregate_Constructor(), TREE_CODE, TREE_TYPE, TRUE, Use_Static_Init_For_Aggregate(), WFE_Finish_Aggregate_Init(), and WN_Lda().
Referenced by WFE_Address_Of(), WFE_Array_Expr(), WFE_Expand_Expr(), and WFE_Initialize_Decl().
| ST* WFE_Get_Return_Address_ST | ( | int | level | ) |
Definition at line 3492 of file wfe_decl.cxx.
References Be_Type_Tbl, CLASS_VAR, CURRENT_SYMTAB, EXPORT_LOCAL, FALSE, Make_Pointer_Type(), MTYPE_V, New_ST(), NULL, PUSH_RETURN_ADDRESS_ON_STACK, Save_Str(), SCLASS_AUTO, SCLASS_FORMAL, Set_ST_is_return_var, and ST_Init().
Referenced by WFE_Expand_Expr().
Definition at line 3188 of file wfe_decl.cxx.
References Add_Inito_For_Tree(), copy, CURRENT_SYMTAB, DECL_CONTEXT, DECL_IGNORED_P, DECL_INITIAL, deferred_decl_init_i, FALSE, Gen_Assign_Of_Init_Val(), Get_ST, Get_TY(), GLOBAL_SYMTAB, INT, MTYPE_M, MTYPE_V, NULL, OPR_LDID, OPR_STID, Pointer_Mtype, Pop_Deferred_Decl_Init(), Push_Deferred_Decl_Init(), SCLASS_COMMON, SCLASS_DGLOBAL, SCLASS_EXTERN, SCLASS_UGLOBAL, Set_ST_is_const_var, Set_ST_is_initialized, Set_ST_sclass, ST_init_value_zero, ST_is_initialized, ST_name, ST_sclass, ST_type, Traverse_Aggregate_Constructor(), TREE_CODE, TREE_READONLY, TREE_STATIC, TREE_TYPE, Use_Static_Init_For_Aggregate(), WFE_Finish_Aggregate_Init(), WFE_Generate_Temp_For_Initialized_Aggregate(), WFE_Stmt_Append(), WN_CreateLdid, WN_CreateStid, and WN_Lda().
Referenced by finish_decl(), WFE_Address_Of(), and WFE_Expand_Decl().
Definition at line 2666 of file wfe_decl.cxx.
References CURRENT_SYMTAB, FmtAssert, Get_ST, New_ST_ATTR(), Set_ST_assigned_to_dedicated_preg(), Set_ST_type, Set_TY_is_volatile, ST_ATTR_DEDICATED_REGISTER, ST_ATTR_Init(), ST_st_idx, and ST_type.
Definition at line 3614 of file wfe_decl.cxx.
References DECL_ST, EXPORT_LOCAL, FALSE, Get_Integer_Value(), Is_True, KIND_ARRAY, SCLASS_FSTATIC, Set_ARB_const_ubnd(), Set_ARB_ubnd_val(), Set_ST_export, Set_ST_sclass, Set_TY_size, ST_type, TREE_CODE, TREE_PUBLIC, TREE_STATIC, TREE_TYPE, TRUE, TY_arb(), TY_etype, TY_kind, TY_size, TYPE_SIZE, and UINT64.
Referenced by duplicate_decls().
Definition at line 1534 of file wfe_decl.cxx.
References aggregate_inito, FALSE, Get_ST, last_aggregate_initv, New_INITO(), not_at_root, SCLASS_COMMON, SCLASS_DGLOBAL, SCLASS_EXTERN, SCLASS_UGLOBAL, Set_ST_is_initialized, Set_ST_sclass, ST_sclass, and TREE_STATIC.
Referenced by assemble_variable().
Definition at line 974 of file wfe_decl.cxx.
References __ctors, __dtors, base, Be_Type_Tbl, BOOL, build_decl, CLASS_VAR, Clear_PU_no_inline(), Clear_ST_is_weak_symbol(), CP_DECL_CONTEXT, cp_to_dst_from_tree(), cp_to_tree_from_dst(), Current_Map_Tab, Current_scope, CURRENT_SYMTAB, Debug_Level, DECL_ARG_TYPE, DECL_ARGUMENTS, DECL_ARTIFICIAL, DECL_ATTRIBUTES, DECL_DECLARED_INLINE_P, DECL_DST_IDX(), DECL_EXTERNAL, DECL_GLOBAL_CTOR_P, DECL_GLOBAL_DTOR_P, DECL_IMPLICIT_INSTANTIATION, DECL_INITIAL, DECL_INLINE, DECL_LANG_SPECIFIC, DECL_NAME, DECL_NAMESPACE_SCOPE_P, DECL_NO_INSTRUMENT_FUNCTION_ENTRY_EXIT, DECL_ONE_ONLY, DECL_SOURCE_FILE, DECL_SOURCE_LINE, DECL_ST, DECL_ST2(), DECL_THUNK_P, DECL_WEAK, DEFAULT_INIT_PRIORITY, DevWarn, DST_Create_Subprogram(), DST_Get_Comp_Unit(), ErrMsg(), EXPORT_INTERNAL, EXPORT_LOCAL, EXPORT_PREEMPTIBLE, EXPORT_PROTECTED, FALSE, fflush(), First_Input_PLOC_Reg(), fprintf(), func_PU_uplevel(), function_has_varargs(), Get_Current_PU, Get_Input_Parameter_Location(), Get_Return_Info(), Get_ST, Get_TY(), GLOBAL_SYMTAB, i, INITV_Init_Symoff(), INT, interface_only, Is_True, key_exceptions, KIND_FUNCTION, KIND_POINTER, lineno, lookup_attribute(), Make_Pointer_Type(), Malloc_Mem_Pool, map_mempool_initialized, MAX_NUMBER_OF_REGISTER_PARAMETERS, MEM_POOL_Initialize, MEM_POOL_Pop, MEM_POOL_Push, MTYPE_F4, MTYPE_M, MTYPE_UNKNOWN, MTYPE_V, New_INITO(), New_INITV(), New_Scope(), New_ST(), New_ST_ATTR(), New_TY(), New_TYLIST(), Next_Input_PLOC_Reg(), No_Simulated, NULL, NULL_TREE, optimize, PLOC_is_nonempty, PLOC_on_stack, POINTER_TYPE_P, pu, PU_Info_child, PU_Info_cu_dst, PU_Info_init(), PU_Info_maptab, PU_Info_next, PU_Info_proc_sym, PU_Info_pu_dst, PU_IS_COMPILER_GENERATED, PU_no_inline(), Pu_Table, Push_Current_Entry_WN(), RETURN_INFO_return_via_first_arg(), Save_Expr_Table, Save_Str(), Save_Str2i(), SCLASS_FORMAL, SCLASS_FSTATIC, SCLASS_TEXT, Scope_tab, Set_PU_base_class(), Set_PU_c_lang(), Set_PU_cxx_lang(), Set_PU_Info_flags, Set_PU_Info_state, Set_PU_Info_tree_ptr, Set_PU_is_inline_function(), Set_PU_is_mainpu(), Set_PU_lexical_level(), Set_PU_must_inline(), Set_PU_no_delete(), Set_PU_no_inline(), Set_PU_prototype(), Set_PU_uplevel(), Set_ST_addr_saved(), Set_ST_export, Set_ST_is_initialized, Set_ST_is_value_parm, Set_ST_promote_parm, Set_ST_sclass, Set_TY_align, Set_TY_has_prototype, Set_TY_is_varargs, Set_TY_tylist(), Set_TYLIST_type(), Setup_Entry_For_EH(), Setup_Input_Parameter_Locations(), Show_Progress, SCOPE::st, ST_ATTR_Init(), ST_ATTR_SECTION_NAME, ST_Init(), ST_is_weak_symbol, ST_name, ST_pu(), ST_pu_type, ST_st_idx, St_Table, ST_type, STR_IDX_ZERO, strcmp(), Subsect_InMem, this_identifier, TREE_CHAIN, TREE_CODE, TREE_OPERAND, TREE_PUBLIC, TREE_SET_CODE, TREE_TYPE, TREE_USED, TRUE, TY_has_prototype, TY_Init(), TY_kind, TY_mtype, TY_parms, TY_ret_type, TY_size, TYLIST_next, TYLIST_ty(), TYPE_MEM_POOL_ALLOC, TYPE_METHOD_BASETYPE, void, WEAK_WORKAROUND(), wfe_invoke_inliner, WFE_Keep_Zero_Length_Structs, wfe_save_expr_stack_last, WFE_Set_Line_And_File(), WFE_Stmt_Append(), WFE_Stmt_Pop(), WFE_Stmt_Push(), wn, WN_CreateBlock, WN_CreateEntry, WN_CreateIdname, WN_CreatePragma, WN_kid(), WN_MAP_TAB_Create(), WN_MAP_TAB_Delete(), WN_PRAGMA_PREAMBLE_END, WT_PROC_SYM, WT_SYMTAB, and WT_TREE.
Referenced by c_expand_body(), c_expand_deferred_function(), store_parm_decls(), WFE_Expand_Function_Body(), and WFE_Generate_Thunk().
| void WFE_Weak_Finish | ( | ) |
Definition at line 3665 of file wfe_decl.cxx.
References alias, Clear_ST_is_weak_symbol(), DECL_ASSEMBLER_NAME, DECL_ATTRIBUTES, DECL_ST, get_identifier(), Get_ST, IDENTIFIER_POINTER, lookup_attribute(), lookup_name(), NULL, SCLASS_EXTERN, Set_ST_is_weak_symbol, Set_ST_strong_idx(), ST_base_idx(), ST_is_weak_symbol, ST_sclass, ST_st_idx, TREE_CHAIN, TREE_STRING_POINTER, TREE_USED, TREE_VALUE, warning, and weak_decls.
1.5.6