Open64 (mfef90, whirl2f, and IR tools)
TAG: version-openad; SVN changeset: 916
|
#include "defs.h"
#include "glob.h"
#include "stab.h"
#include "strtab.h"
#include "erfe90.h"
#include "errors.h"
#include "targ_const.h"
#include "config_targ.h"
#include "const.h"
#include "wn.h"
#include "wn_util.h"
#include "irbdata.h"
#include "cxx_memory.h"
#include "i_cvrt.h"
#include "cwh_defines.h"
#include "cwh_types.h"
#include "cwh_addr.h"
#include "cwh_stmt.h"
#include "cwh_preg.h"
#include "cwh_stab.h"
#include "cwh_auxst.h"
#include "cwh_stk.h"
#include "cwh_expr.h"
#include "cwh_data.h"
#include "cwh_data.i"
Go to the source code of this file.
Definition at line 471 of file cwh_data.cxx.
References b_and_o::base, Irb_Init_Symoff(), Irb_Init_Val(), and b_and_o::offset.
Referenced by static_simple_init_helper().
void cwh_data_emit_symbol_inits | ( | SYMTAB_IDX | level | ) |
Definition at line 678 of file cwh_data.cxx.
References emit_inits_for_symbol(), For_all(), and St_Table.
Referenced by PDGCS_do_proc(), and PDGCS_terminate().
static void cwh_data_set_init_flag | ( | ST * | st, |
enum list_name | list | ||
) | [static] |
Definition at line 696 of file cwh_data.cxx.
References cwh_auxst_cri_pointee(), cwh_auxst_next_element(), I_element, l_COMLIST, l_EQVLIST, NULL, SCLASS_AUTO, SCLASS_PSTATIC, Set_ST_is_initialized(), Set_ST_sclass(), and ST_sclass().
Referenced by fei_static_base().
static void emit_inits_for_symbol | ( | ST_IDX | st_idx, |
ST * | st | ||
) | [static] |
Definition at line 584 of file cwh_data.cxx.
References CLASS_VAR, CXX_DELETE, d, FE_Mempool, data_info_s::Get_Data_Elements(), data_info_s::Get_Inito(), Irb_Init_Block(), Irb_Init_Pad(), NULL, Set_INITV_blk(), Set_INITV_next(), Set_ST_auxst_data_info(), data_info_s::sort_data(), ST_auxst_data_info(), ST_name(), ST_sym_class(), ST_type(), and TY_size().
Referenced by cwh_data_emit_symbol_inits().
void fei_static_base | ( | INTPTR | sym_idx | ) |
Definition at line 93 of file cwh_data.cxx.
References array_pos, cast_to_STB, current_bytesize, current_data_info, current_inito, current_pos, current_st, current_ty, cwh_data_set_init_flag(), CXX_NEW, DevAssert, FALSE, FE_Mempool, al::form, data_info_s::Get_Inito(), is_ST, is_struct_or_array, al::item, KIND_ARRAY, KIND_STRUCT, l_COMLIST, l_EQVLIST, orig_st, SCLASS_COMMON, SCLASS_DGLOBAL, SCLASS_MODULE, SCLASS_PSTATIC, SCLASS_TEXT, Set_ST_auxst_data_info(), Set_ST_is_initialized(), Set_ST_sclass(), ST_auxst_data_info(), ST_base(), ST_sclass(), ST_type(), TRUE, TY_etype(), TY_kind(), and TY_size().
Referenced by cvrt_exp_to_pdg().
void fei_static_member | ( | INT32 | st_idx | ) |
Definition at line 254 of file cwh_data.cxx.
References current_bytesize, current_pos, current_ty, DevAssert, f, FLD_bofst(), FLD_ofst(), FLD_type(), KIND_ARRAY, TY_etype(), TY_kind(), and TY_size().
Referenced by cvrt_exp_to_pdg().
void fei_static_next_simple_init | ( | INT64 | bit_increment, |
INT64 | dup_count, | ||
INT64 | init_offset, | ||
INT32 | string_literal | ||
) |
Definition at line 541 of file cwh_data.cxx.
References array_pos, and fei_static_simple_init().
Referenced by blank_padding().
void fei_static_simple_init | ( | INT64 | dup_count, |
INT64 | stride, | ||
INT32 | ignore_types, | ||
INT32 | string_literal | ||
) |
Definition at line 523 of file cwh_data.cxx.
References NULL, static_simple_init_helper(), and TCON_from_stack().
Referenced by cvrt_exp_to_pdg(), fei_static_next_simple_init(), and push_data_value().
void fei_static_simple_reloc_init | ( | INT64 | bit_offset, |
INT64 | dup_count, | ||
INT64 | stride, | ||
INT64 | bit_size, | ||
INT32 | ignore_types | ||
) |
Definition at line 557 of file cwh_data.cxx.
References b_and_o::base, cwh_expr_operand(), cwh_expr_set_flags(), DevAssert, f_T_SAVED, get_base_and_offset(), NULL, static_simple_init_helper(), and WN_DELETE_Tree().
Referenced by cvrt_exp_to_pdg().
void fei_static_subscripts | ( | INT64 | static_subscripts[STATIC_SUBSCRIPT_SIZE] | ) |
Definition at line 206 of file cwh_data.cxx.
References ARB_lbnd_val(), ARB_stride_val(), array_pos, current_ty, DevAssert, KIND_ARRAY, TY_AR_ndims(), TY_arb(), TY_kind(), and Ty_Table.
void fei_static_substr | ( | INT32 | start | ) |
static b_and_o get_base_and_offset | ( | WN * | wn | ) | [static] |
Definition at line 350 of file cwh_data.cxx.
References b_and_o::base, DevAssert, NULL, b_and_o::offset, OPR_ADD, OPR_ARRAY, OPR_ARRAYEXP, OPR_ARRSECTION, OPR_COMMA, OPR_INTCONST, OPR_LDA, OPR_SUB, ST_base(), ST_ofst(), t1, WN_array_dim, WN_array_index, WN_const_val(), WN_element_size(), WN_kid0(), WN_kid1(), WN_num_dim, WN_offset(), WN_operator(), and WN_st().
Referenced by fei_static_simple_reloc_init().
static INT32 get_TCON_size | ( | TCON_IDX | tc | ) | [static] |
Definition at line 273 of file cwh_data.cxx.
References MTYPE_size_min, MTYPE_STR, Pointer_Size, Targ_String_Length(), Tcon_Table, and TCON_ty.
Referenced by static_simple_init_helper().
static void static_simple_init_helper | ( | INT64 | dup_count, |
INT64 | stride, | ||
TCON_IDX | value, | ||
b_and_o * | bo | ||
) | [static] |
Definition at line 482 of file cwh_data.cxx.
References data_info_s::Add_Data_Element(), array_pos, create_initv(), current_data_info, current_inito, current_pos, get_TCON_size(), is_struct_or_array, and data_info_s::Reserve().
Referenced by fei_static_simple_init(), and fei_static_simple_reloc_init().
static TCON_IDX TCON_from_stack | ( | void | ) | [static] |
Definition at line 295 of file cwh_data.cxx.
References Const_Val(), cwh_stk_get_class(), cwh_stk_get_TY(), cwh_stk_pop_PCONST(), cwh_stk_pop_ST(), cwh_stk_pop_STR(), cwh_stk_pop_WN(), DevAssert, Enter_tcon(), Host_To_Targ(), OPR_CONST, OPR_INTCONST, PCONST_item, ST_tcon(), STR_item, TY_mtype(), WN_const_val(), WN_Delete, WN_DELETE_Tree(), WN_item, WN_item_whole_array, WN_rtype(), and WNOPR.
Referenced by fei_static_simple_init().
char* source_file = __FILE__ [static] |
Definition at line 45 of file cwh_data.cxx.