
Go to the source code of this file.
| #define ADDR_OFFSET 0 |
Definition at line 186 of file cwh_types.h.
Referenced by fei_dv_deref(), m68hc11_override_options(), m68hc11_valid_addressing_p(), and register_indirect_p().
| #define ADDR_TYPEID Pointer_Mtype |
Definition at line 187 of file cwh_types.h.
| #define BOUND_NM 3 |
Definition at line 184 of file cwh_types.h.
Referenced by cwh_dope_from_expression(), cwh_types_dim_struct_TY(), and fei_dv_def().
| #define DIM_SZ BOUND_NM*DOPE_bound_sz |
Definition at line 185 of file cwh_types.h.
| #define DOPE_NM 11 |
Definition at line 181 of file cwh_types.h.
Referenced by cwh_types_dope_dims_FLD(), cwh_types_dope_rank(), and cwh_types_mk_dope_invariant_TY().
| #define DOPE_USED DOPE_NM-1 |
Definition at line 183 of file cwh_types.h.
Referenced by cwh_dope_from_expression(), and fei_dv_def().
| #define IS_TYLIST |
Definition at line 189 of file cwh_types.h.
| #define t_TY | ( | x | ) | (x.table_index) |
Definition at line 170 of file cwh_types.h.
Referenced by cwh_addr_do_bounds_check(), cwh_addr_stid(), cwh_ceiling_floor(), cwh_do_tranformational(), cwh_intrin_popcnt_leadz_helper(), cwh_stab_altentry_temp(), cwh_types_fill_type(), do_simple(), fei_abs(), fei_arith_con(), fei_array_dimen(), fei_bneg(), fei_call(), fei_constant(), fei_cvtop(), fei_dope_vector(), fei_dot_product(), fei_dot_product_logical(), fei_exponent(), fei_exponentiate(), fei_ibits(), fei_ieee_sign_xfer(), fei_ieee_trunc(), fei_imag(), fei_lneg(), fei_logb(), fei_mask(), fei_matmul(), fei_max(), fei_member(), fei_min(), fei_mvbits(), fei_object(), fei_pattern_con(), fei_proc_def(), fei_proc_imp(), fei_ranf(), fei_round(), fei_rtc(), fei_select(), fei_smt_parameter(), fei_trunc(), and unop_routine().
| typedef struct dope_header1 dope_header1_type |
| typedef struct dope_header2 dope_header2_type |
| typedef struct f90_type f90_type_t |
| enum ty_bound_enum |
Definition at line 2923 of file cwh_types.cxx.
References f90_type::dec_len, INT64, f90_type::int_len, Is_True, f90_type::kind_or_star, MTYPE_C4, MTYPE_C8, MTYPE_CQ, MTYPE_F4, MTYPE_F8, MTYPE_FQ, MTYPE_I1, MTYPE_I2, MTYPE_I4, MTYPE_I8, and f90_type::type.
Referenced by cwh_cray_type_from_TY().
Definition at line 2870 of file cwh_types.cxx.
References cwh_cray_type_from_MTYPE(), cwh_cray_type_from_TY(), INT64, f90_type::int_len, Is_True, KIND_ARRAY, KIND_SCALAR, KIND_STRUCT, TY_etype, TY_is_character, TY_is_logical, TY_kind, TY_mtype, Ty_Table, and f90_type::type.
Referenced by cwh_cray_type_from_TY(), and cwh_dope_from_expression().
Definition at line 2107 of file cwh_types.cxx.
References ARB_const_lbnd, ARB_const_stride, ARB_const_ubnd, ARB_Init(), ARB_lbnd_val, ARB_stride_val, ARB_stride_var(), ARB_ubnd_val, ARB_ubnd_var(), Clear_ARB_const_stride(), Clear_ARB_const_ubnd(), Clear_ARB_first_dimen(), Clear_ARB_last_dimen(), cwh_addr_load_ST(), cwh_addr_store_ST(), cwh_bound_int_typeid, cwh_expr_bincalc(), cwh_types_make_bounds_ST(), cwh_types_mk_array_TY(), i, INT16, INT64, New_ARB(), OPR_ADD, OPR_INTCONST, OPR_MPY, OPR_SUB, Set_ARB_const_lbnd(), Set_ARB_const_stride(), Set_ARB_const_ubnd(), Set_ARB_first_dimen(), Set_ARB_last_dimen(), Set_ARB_lbnd_val(), Set_ARB_stride_val(), Set_ARB_stride_var(), Set_ARB_ubnd_val(), Set_ARB_ubnd_var(), size, ST_st_idx, St_Table, TY_arb(), TY_size, TYPE_ID, wn, WN_const_val(), WN_COPY_Tree(), WN_Intconst(), WN_kid(), WN_kid_count(), and WNOPR.
Referenced by fei_concat().
Definition at line 1208 of file cwh_types.cxx.
References cwh_types_array_TY(), DUMP_TY, Is_True, KIND_ARRAY, KIND_FUNCTION, KIND_POINTER, KIND_SCALAR, KIND_STRUCT, KIND_VOID, TY_kind, TY_pointed, and Ty_Table.
Referenced by cwh_addr_array(), cwh_addr_compute_stride_fudge_factor(), cwh_addr_substr_util(), cwh_addr_temp_section(), cwh_io_ioitem(), cwh_io_no_desc(), cwh_io_scalar_type(), cwh_types_array_TY(), cwh_types_is_character(), cwh_types_is_character_function(), cwh_types_is_logical(), fei_arg_addr(), fei_close(), fei_control_list(), fei_dv_deref(), fei_inquire(), and fei_open().
| TY_IDX cwh_types_array_util | ( | INT16 | rank, | |
| TY_IDX | ta, | |||
| INT32 | align, | |||
| INT64 | size, | |||
| const char * | name, | |||
| BOOL | alloc_arbs | |||
| ) |
Definition at line 1530 of file cwh_types.cxx.
References ARB_Init(), BUMP_TY_COUNTER, c_TY_ARRAY, cwh_types_mk_anon_name(), cwh_types_new_TY(), i, INT16, KIND_ARRAY, MTYPE_UNKNOWN, New_ARB(), Save_Str(), Set_ARB_const_lbnd(), Set_ARB_const_stride(), Set_ARB_const_ubnd(), Set_ARB_dimension(), Set_ARB_first_dimen(), Set_ARB_last_dimen(), Set_ARB_lbnd_val(), Set_ARB_stride_val(), Set_ARB_ubnd_val(), Set_TY_arb(), Set_TY_etype(), TRUE, TY_Init(), and Ty_Table.
Referenced by cwh_types_dim_TY(), cwh_types_dope_TY(), cwh_types_mk_array_TY(), cwh_types_mk_basic_TY(), cwh_types_mk_character_TY(), cwh_types_mk_namelist_TY(), and fei_allocate().
| WN* cwh_types_bound_WN | ( | TY_IDX | ty, | |
| INT16 | i, | |||
| enum ty_bound_enum | b | |||
| ) |
Definition at line 2292 of file cwh_types.cxx.
References ARB_const_lbnd, ARB_const_stride, ARB_const_ubnd, ARB_dimension(), ARB_lbnd_val, ARB_lbnd_var(), ARB_stride_val, ARB_stride_var(), ARB_ubnd_val, ARB_ubnd_var(), break, cwh_addr_load_ST(), cwh_bound_int_typeid, INT16, LOW, St_Table, STRIDE, TY_arb(), UPPER, wn, and WN_Intconst().
Referenced by cwh_addr_adjust_array(), cwh_addr_temp_section(), cwh_types_size_WN(), fei_descriptor(), and fei_redistribute().
Definition at line 1353 of file cwh_types.cxx.
References cwh_types_mk_character_TY(), Make_Pointer_Type(), NULL, and TRUE.
Referenced by cwh_intrin_wrap_char_parm().
Definition at line 1443 of file cwh_types.cxx.
References Be_Type_Tbl, cwh_addr_char_len_typeid, cwh_types_formal_util(), cwh_types_is_character(), NULL, Set_ST_is_temp_var, Set_ST_is_value_parm, and ST_type.
Referenced by cwh_auxst_add_dummy().
Definition at line 2024 of file cwh_types.cxx.
References cwh_types_contains_dope(), cwh_types_is_dope(), FLD_last_field(), FLD_type, KIND_STRUCT, Make_fld_iter(), p, TY_fld, and TY_kind.
Referenced by cwh_types_contains_dope().
Definition at line 3237 of file cwh_types.cxx.
References CLASS_VAR, cwh_addr_load_ST(), cwh_block_append_given_id(), enable_mp_processing, FALSE, NULL, Preamble_Block, process_cri_mp_pragmas, Set_ST_auxst_xpragma_copyin, ST_auxst_xpragma_copyin, ST_sym_class(), TRUE, WN_CreateXpragma, WN_kid0(), and WN_PRAGMA_COPYIN_BOUND.
Referenced by cwh_addr_store_ST(), and fei_array_dimen().
Definition at line 1976 of file cwh_types.cxx.
References FLD_type, KIND_POINTER, TY_fld, TY_kind, TY_pointed, and Ty_Table.
Referenced by fei_as_ref(), and fei_nseq_subscr().
| FLD_HANDLE cwh_types_dope_dims_FLD | ( | TY_IDX | ty | ) |
Definition at line 1994 of file cwh_types.cxx.
References DOPE_NM, FLD_last_field(), FLD_next, FLD_ofst, KIND_POINTER, TY_fld, TY_kind, TY_pointed, and Ty_Table.
Definition at line 1942 of file cwh_types.cxx.
References ARB_ubnd_val, DOPE_NM, FLD_last_field(), FLD_next, FLD_ofst, FLD_type, INT32, FLD_HANDLE::Is_Null(), TY_arb(), TY_fld, and Ty_Table.
Referenced by cwh_inline_allocate(), and fei_as_ref().
Definition at line 1671 of file cwh_types.cxx.
References Be_Type_Tbl, BOOL, cwh_types_array_util(), cwh_types_dim_TY(), cwh_types_fld_util(), cwh_types_mk_dope_invariant_TY(), cwh_types_mk_pointer_TY(), cwh_types_mk_unique_pointer_TY(), cwh_types_shared_dope(), cwh_types_unique_TY(), DOPE_sz, FALSE, i, INT, KIND_STRUCT, MAX_ARY_DIMS, Pointer_Size, Set_FLD_last_field(), Set_FLD_type(), TRUE, TY_fld, TY_kind, and Ty_Table.
Referenced by cwh_dope_from_expression(), and fei_dope_vector().
| FLD_HANDLE cwh_types_fld_dummy | ( | INT64 | off, | |
| TY_IDX | ty | |||
| ) |
Definition at line 835 of file cwh_types.cxx.
References break, byte_to_bit, Copy_TY(), cwh_types_form_misaligned_TY(), cwh_types_is_dope(), cwh_types_mk_logical_TY(), cwh_types_mk_misaligned_TY(), FLD_bofst, FLD_bsize, FLD_flags, FLD_Init(), FLD_last_field(), FLD_name, FLD_ofst, FLD_type, INT, Is_True, KIND_ARRAY, KIND_POINTER, KIND_SCALAR, KIND_STRUCT, Make_fld_iter(), New_FLD(), p, Save_Str2(), Set_FLD_bofst(), Set_FLD_bsize(), Set_FLD_flags(), Set_TY_align, Set_TY_etype(), Set_TY_fld(), Set_TY_name_idx(), tr, TY_align, TY_etype, TY_fld, TY_is_logical, TY_kind, TY_name, TY_size, and Ty_Table.
Referenced by cwh_types_form_misaligned_TY().
| void cwh_types_get_dope_info | ( | INT32 | crayfield, | |
| INT32 * | offset, | |||
| INT32 * | rshift, | |||
| INT64 * | mask, | |||
| TYPE_ID * | ty | |||
| ) |
Definition at line 2358 of file cwh_types.cxx.
References CHAR_BIT, INT, MTYPE_size_best, shift, and size.
Referenced by fei_get_dv_hdr_fld(), and fei_set_dv_hdr_fld().
Definition at line 3026 of file cwh_types.cxx.
References cwh_types_mk_logical_TY(), DOPE_bound_sz, DOPE_dim_offset, DOPE_sz, logical4_ty, and Pointer_Size.
Referenced by cwh_addr_init_target().
Definition at line 1372 of file cwh_types.cxx.
References cwh_types_array_TY(), cwh_types_scalar_TY(), TY_is_character, and Ty_Table.
Referenced by cwh_auxst_find_dummy_len(), cwh_dst_stride_kind(), cwh_stmt_call_helper(), cwh_types_character_extra(), and fei_return().
Definition at line 1414 of file cwh_types.cxx.
References cwh_types_array_TY(), cwh_types_scalar_TY(), FALSE, KIND_FUNCTION, TY_is_character, TY_kind, Ty_Table, TY_tylist(), and Tylist_Table.
Definition at line 1920 of file cwh_types.cxx.
References FALSE, KIND_POINTER, strncmp(), TRUE, TY_kind, TY_name, and TY_pointed.
Referenced by cwh_types_contains_dope(), and cwh_types_form_misaligned_TY().
Definition at line 1393 of file cwh_types.cxx.
References cwh_types_array_TY(), cwh_types_scalar_TY(), TY_is_logical, and Ty_Table.
Definition at line 3198 of file cwh_types.cxx.
References Make_F90_Pointer_Type(), and Make_Pointer_Type().
Referenced by cwh_addr_address_ST(), cwh_addr_iload(), cwh_addr_istore(), cwh_addr_lda(), cwh_addr_mload(), cwh_addr_mstore(), cwh_do_tranformational(), cwh_expr_temp(), fei_arg_addr(), and fei_dv_deref().
| char* cwh_types_mk_anon_name | ( | const char * | p | ) |
Definition at line 2755 of file cwh_types.cxx.
References INT32, Is_True, len, NULL, sprintf(), strcpy, and strlen().
Referenced by cwh_stab_address_temp_ST(), cwh_types_array_util(), cwh_types_formal_util(), cwh_types_mk_procedure_TY(), cwh_types_mk_struct(), and cwh_types_mk_unique_pointer_TY().
Definition at line 1092 of file cwh_types.cxx.
References BOOL, BUMP_TY_COUNTER, c_TY_MISC, Clear_ARB_const_ubnd(), cwh_addr_store_ST(), cwh_types_array_util(), cwh_types_make_bounds_ST(), cwh_types_new_TY(), cwh_types_unique_TY(), i, INT64, KIND_SCALAR, MTYPE_U1, OPR_INTCONST, Save_Str(), Set_ARB_lbnd_val(), Set_ARB_stride_val(), Set_ARB_ubnd_val(), Set_ARB_ubnd_var(), Set_TY_is_character, Set_TY_size, ST_st_idx, TRUE, TY_arb(), TY_Init(), Ty_Table, WN_const_val(), and WNOPR.
Referenced by cwh_types_ch_parm_TY(), cwh_types_mk_basic_TY(), cwh_types_mk_namelist_item_TY(), cwh_types_mk_namelist_TY(), and fei_concat().
Definition at line 2475 of file cwh_types.cxx.
References bit_to_byte, cwh_types_mk_struct(), INT64, and sz().
Referenced by cwh_stab_common_ST().
Definition at line 2639 of file cwh_types.cxx.
References Clear_FLD_last_field(), cwh_types_fld_util(), FLD_HANDLE::Idx(), IS_COMMON, Is_True, SCLASS_COMMON, Set_FLD_equivalence(), Set_FLD_last_field(), Set_FLD_st(), Set_ST_type, Set_TY_align, Set_TY_fld(), ST_is_equivalenced, ST_level, ST_name, ST_ofst, ST_sclass, ST_st_idx, ST_type, TRUE, TY_align, TY_fld, and Ty_Table.
Referenced by cwh_stab_mk_flds().
Definition at line 2500 of file cwh_types.cxx.
References bit_to_byte, cwh_types_mk_struct(), INT64, MAX_ALIGN, and sz().
Referenced by cwh_stab_altentry_temp(), and fei_seg().
Definition at line 3081 of file cwh_types.cxx.
References Be_Type_Tbl, BOOL, buf, BUMP_TY_COUNTER, c_TY_f90_POINTER, cwh_types_find_f90_pointer_ty(), cwh_types_mk_f90_pointer_ty(), cwh_types_new_TY(), cwh_types_unique_TY(), type_pair_t::f90_pointed, FALSE, KIND_POINTER, malloc, max_type_pairs, MTYPE_F4, MTYPE_F8, MTYPE_FQ, MTYPE_is_complex, MTYPE_is_m, MTYPE_U1, MTYPE_U4, MTYPE_U8, num_type_pairs, pair_typenum, Pointer_Mtype, Pointer_Size, realloc, Save_Str(), Set_TY_is_f90_pointer, Set_TY_pointed(), sprintf(), TRUE, type_pair_t::ty, TY_Init(), TY_mtype, Ty_Table, TYPE_ALLOC_CHUNK_SIZE, and void.
Referenced by cwh_addr_iload(), cwh_addr_istore(), cwh_addr_mload(), cwh_addr_mstore(), cwh_types_mk_f90_pointer_ty(), and fei_dv_deref().
Definition at line 1037 of file cwh_types.cxx.
References bit_to_byte, BUMP_TY_COUNTER, c_TY_MISC, cwh_types_new_TY(), cwh_types_unique_TY(), i, INT16, INT32, Is_True, KIND_SCALAR, L_ogical, NUM_LOG_KINDS, Save_Str2(), Set_TY_is_logical, size_in_bytes(), TRUE, TY_Init(), Ty_Table, and TYPE_ID.
Referenced by cwh_types_form_misaligned_TY(), cwh_types_init_target(), and cwh_types_mk_basic_TY().
Definition at line 2524 of file cwh_types.cxx.
References cwh_types_array_util(), cwh_types_fld_util(), cwh_types_mk_character_TY(), cwh_types_mk_namelist_item_TY(), cwh_types_mk_struct(), cwh_types_unique_TY(), f1, f2, MTYPE_I4, NULL, Set_FLD_last_field(), Set_TY_AR_stride_val(), Set_TY_AR_ubnd_val(), TRUE, TY_size, Ty_Table, wn, and WN_Intconst().
Referenced by fei_namelist().
Definition at line 2423 of file cwh_types.cxx.
References Make_Pointer_Type().
Referenced by cwh_stab_formal_ref(), cwh_types_dope_TY(), fei_descriptor(), and fei_object().
Definition at line 923 of file cwh_types.cxx.
References BUMP_TY_COUNTER, c_TY_PROC, cwh_types_mk_anon_name(), cwh_types_new_TY(), KIND_FUNCTION, MTYPE_is_void, MTYPE_UNKNOWN, New_TYLIST(), Save_Str(), Set_TY_tylist(), TRUE, TY_Init(), TY_mtype, Ty_Table, Tylist_Table, and void.
Referenced by cwh_stab_mk_fn_0args(), fei_descriptor(), fei_object(), and fei_proc_def().
Definition at line 2689 of file cwh_types.cxx.
References Be_Type_Tbl, cwh_types_fld_util(), cwh_types_mk_struct(), f1, f2, MTYPE_I8, RESULT_ALIGN, RESULT_SIZE, Set_FLD_last_field(), and TRUE.
Definition at line 1164 of file cwh_types.cxx.
References cwh_types_scalar_TY(), DUMP_TY, Is_True, KIND_ARRAY, KIND_FUNCTION, KIND_POINTER, KIND_SCALAR, KIND_STRUCT, KIND_VOID, TY_etype, TY_kind, and Ty_Table.
Referenced by cwh_addr_load_WN(), cwh_addr_store_WN(), cwh_expr_compare_bitwise(), cwh_io_ioitem(), cwh_io_no_desc(), cwh_io_scalar_type(), cwh_types_is_character(), cwh_types_is_character_function(), cwh_types_is_logical(), cwh_types_scalar_TY(), cwh_types_shared_dope(), fei_abs(), fei_arg_addr(), fei_bneg(), fei_close(), fei_control_list(), fei_doloop(), fei_inquire(), fei_open(), and unop_routine().
Definition at line 2256 of file cwh_types.cxx.
References ARB_dimension(), cwh_addr_extent(), cwh_expr_bincalc(), cwh_types_bound_WN(), i, INT, INT16, Is_True, KIND_ARRAY, LOW, MTYPE_I4, OPR_MPY, TY_arb(), TY_kind, UPPER, wn, and WN_Intconst().
Referenced by cwh_expr_temp().
Definition at line 3181 of file cwh_types.cxx.
References SEGMENTED_ARRAY< T, block_size >::Delete_last(), TY_is_unique(), and Ty_tab.
Referenced by cwh_types_dim_TY(), cwh_types_dope_TY(), cwh_types_mk_array_TY(), cwh_types_mk_basic_TY(), cwh_types_mk_character_TY(), cwh_types_mk_f90_pointer_ty(), cwh_types_mk_logical_TY(), cwh_types_mk_misaligned_TY(), cwh_types_mk_namelist_TY(), and cwh_types_mk_unique_pointer_TY().
Definition at line 1259 of file cwh_types.cxx.
References Be_Type_Tbl, break, cwh_types_WN_TY(), i, INT, Is_True, KIND_POINTER, Make_Pointer_Type(), MTYPE_is_pointer, MTYPE_V, OPC_MINTRINSIC_OP, OPCODE_is_expression(), OPR_ADD, OPR_ARRAY, OPR_ARRAYEXP, OPR_ARRSECTION, OPR_CAND, OPR_CIOR, OPR_EQ, OPR_ILOAD, OPR_INTCONST, OPR_INTRINSIC_OP, OPR_LAND, OPR_LDA, OPR_LDID, OPR_LIOR, OPR_LNOT, OPR_MLOAD, OPR_NE, OPR_PARM, OPR_SUB, TY_kind, TY_pointed, Ty_Table, WN_kid(), WN_kid0(), WN_opcode(), WN_rtype(), WN_ty(), and WNOPR.
Referenced by cwh_addr_load_WN(), cwh_addr_store_WN(), cwh_addr_substr_util(), cwh_dope_initialize(), cwh_expr_compare_bitwise(), cwh_expr_str_operand(), cwh_intrin_wrap_ref_parm(), cwh_intrin_wrap_value_parm(), cwh_io_ioitem(), cwh_io_scalar_type(), cwh_stmt_call_helper(), cwh_types_WN_TY(), fei_abs(), fei_allocate(), fei_arg_addr(), fei_bneg(), fei_control_list(), fei_doloop(), fei_fcd(), fei_non_conform_store(), and fei_set_dv_hdr_fld().
Referenced by cwh_stab_distrib_pragmas(), fei_array_dimen(), fei_descriptor(), and fei_object().
Referenced by cwh_dope_initialize(), cwh_dope_read_bound(), cwh_dope_store_bound(), and cwh_types_dim_struct_TY().
Referenced by cwh_dope_read_bound(), cwh_dope_store_bound(), and cwh_types_init_target().
Referenced by cwh_types_dope_TY(), cwh_types_init_target(), cwh_types_mk_dope_invariant_TY(), and cwh_types_shared_dope().
1.5.6