Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
sytb.c File Reference
#include "defines.h"
#include "host.m"
#include "host.h"
#include "target.m"
#include "target.h"
#include "arith.h"
#include "globals.m"
#include "tokens.m"
#include "sytb.m"
#include "p_globals.m"
#include "debug.m"
#include "globals.h"
#include "tokens.h"
#include "sytb.h"
#include "p_globals.h"
Include dependency graph for sytb.c:

Go to the source code of this file.

Classes

union  ieee_real_4
union  ieee_real_8
union  ieee_real_16

Defines

#define IEEE_32_EXPO_BITS   8
#define IEEE_32_MANT_BITS   23
#define IEEE_32_EXPONENT   0XFF
#define IEEE_32_EXPO_ALLONES(X)   ((X) == IEEE_32_EXPONENT)
#define IEEE_64_EXPO_BITS   11
#define IEEE_64_MANTU_BITS   20
#define IEEE_64_MANTL_BITS   32
#define IEEE_64_EXPONENT   0X7FF
#define IEEE_64_EXPO_ALLONES(X)   ((X) == IEEE_64_EXPONENT)
#define IEEE_128_EXPO_BITS   15
#define IEEE_128_MANTTU_BITS   16
#define IEEE_128_MANTTL_BITS   32
#define IEEE_128_EXPO   0X7FFF
#define IEEE_128_EXPO_ALLONES(X)   ((X) == IEEE_128_EXPO)
#define FP_SGI_NAN   0
#define FP_SGI_INFINITE   1
#define FP_SGI_NORMAL   2
#define FP_SGI_SUBNORMAL   3
#define FP_SGI_ZERO   4

Typedefs

typedef union ieee_real_4 ieee_real_4_type
typedef union ieee_real_8 ieee_real_8_type
typedef union ieee_real_16 ieee_real_16_type

Functions

static void calculate_pad (size_offset_type *, size_offset_type *, int)
static int ntr_global_bounds_tbl (int)
static boolean pvp_isnormal (int, long_type *)
static int ntr_abnormal_ieee_const (int, long_type *)
static boolean is_normal (int, long_type *)
static int is_normal_32 (long_type *)
static int is_normal_64 (int, long_type *)
static int is_normal_128 (int, long_type *)
static int sign_bit (int, long_type *)
static int sign_bit_32 (long_type *)
static int sign_bit_64 (long_type *)
static int sign_bit_128 (long_type *)
static int fp_classify (int, long_type *)
static int fp_classify_32 (long_type *)
static int fp_classify_64 (int, long_type *)
static int fp_classify_128 (int, long_type *)
static int insert_constant (int, long_type *, int)
static int insert_unordered_constant (int, long_type *, int, int)
static void dump_cn_tree (int, int, int)
boolean compare_value_to_cn (long_type *value, int cn_idx, int opr)
int srch_sym_tbl (char *name_str, int name_len, int *name_idx)
int ntr_sym_tbl (token_type *token, int name_idx)
int srch_host_sym_tbl (char *name_str, int name_len, int *name_idx, boolean search_intrin_scp)
int ntr_host_in_sym_tbl (token_type *token, int name_idx, int host_attr_idx, int host_ln_idx, boolean make_new_attr_and_link)
void remove_ln_ntry (int name_idx)
int srch_kwd_name (char *name, int length, int attr_idx, int *sn_idx)
int srch_stor_blk_tbl (char *name_str, int name_len, int scp_idx)
int ntr_stor_blk_tbl (char *name_str, int name_len, int def_line, int def_column, int blk_type)
int ntr_array_in_bd_tbl (int bd_idx)
int reserve_array_ntry (int rank)
void init_sytb ()
int ntr_const_tbl (int type_idx, boolean extra_zero_word, long_type *constant)
int ntr_boz_const_tbl (int type_idx, long_type *constant)
int ntr_boolean_const_tbl (int type_idx, long_type *constant)
int ntr_unshared_const_tbl (int type_idx, boolean extra_zero_word, long_type *constant)
int srch_host_stor_blk_tbl (token_type *token)
boolean compare_derived_types (int dt_idx1, int dt_idx2)
boolean compare_array_entries (int bd_idx1, int bd_idx2)
void init_name_and_stor_tbls (int scp_idx, boolean create_full_scp)
attr_tbl_typesytb_var_error (char *err_str, int attr_idx)
attr_aux_tbl_typeattr_aux_var_error (char *err_str, int attr_idx)
bounds_tbl_typebd_var_error (char *err_str, int bd_idx)
ir_list_tbl_typeir_list_var_error (char *err_str, int il_idx)
global_attr_tbl_typega_var_error (char *err_str, int ga_idx)
int gen_internal_lbl (int label_line)
size_offset_type stor_bit_size_of (int attr_idx, boolean all_elements, boolean check_array_size)
int gen_compiler_tmp (int tmp_line, int tmp_column, task_scope_type scope, boolean add_to_attr_list)
int gen_compiler_star (int tmp_line, int tmp_column, task_scope_type scope, boolean add_to_attr_list)
int gen_compiler_upbd (int tmp_line, int tmp_column, task_scope_type scope, boolean add_to_attr_list)
void chg_data_obj_to_pgm_unit (int attr_idx, pgm_unit_type pgm_unit, atp_proc_type proc_type)
char * get_basic_type_str (int type_idx)
boolean kind_to_linear_type (opnd_type *opnd, int attr_idx, boolean kind0seen, boolean kind0E0seen, boolean kind0D0seen, boolean kindconstseen)
int gen_debug_lbl_stmt (int stmt_idx, atl_debug_class_type label_type, int attr_idx)
int make_in_parent_string (int name_str_idx, int name_str_len, int scp_idx, int *name_len)
int compare_names (long *id1, int id1_len, long *id2, int id2_len)
int ntr_local_attr_list (char *name_str, int name_len, int def_line, int def_column)
int create_lib_entry_attr (char *name_str, int name_len, int def_line, int def_column)
void set_stride_for_first_dim (int type_idx, size_offset_type *stride)
int ntr_type_tbl (void)
int ntr_derived_type_tbl (void)
int srch_linked_sn (char *name, int length, int *sn_idx)
void free_tables ()
boolean validate_kind (basic_type_type type, int line, int column, long *kind, linear_type_type *linear_type)
void assign_offset (int attr_idx)
boolean srch_global_name_tbl (char *name_str, int name_len, int *name_idx)
void ntr_global_name_tbl (int attr_idx, int sb_idx, int name_idx)
void fill_in_global_attr_ntry (int ga_idx, int attr_idx, int ga_pgm_idx)
int ntr_global_attr_tbl (int attr_idx, int name_idx)
int ntr_common_in_global_attr_tbl (int sb_idx, int name_idx)
int ntr_global_type_tbl (int type_idx)
int ntr_ir_tbl (void)
int ntr_ir_list_tbl (void)
int ntr_gl_ir_tbl (void)
int ntr_gl_ir_list_tbl (void)
int ntr_gl_sh_tbl (void)
void add_attr_to_local_list (int attr_idx)
int ntr_sh_tbl (void)
void find_opnd_line_and_column (opnd_type *opnd, int *line, int *column)
int srch_hidden_name_tbl (char *name_str, int name_len, int attr_idx, int *np_idx, int *name_idx)
void ntr_hidden_name_tbl (int attr_idx, int np_idx, int name_idx)
void remove_hidden_name_ntry (int name_idx)
void assign_storage_blk (int attr_idx)
void align_bit_length (size_offset_type *bit_len, int align_to)
int check_type_for_size_address (opnd_type *opnd)
void bits_and_bytes_to_words (size_offset_type *bit_len, int the_plus_val, int the_shift_val)
int ntr_attr_list_tbl (void)
void free_attr_list (int al_idx)
void make_external_name (int attr_idx, int name_idx, int name_len)
void create_hidden_name_tbl (int scp_idx)
void remove_hidden_name_tbl (int scp_idx)

Variables

static char USMID [] = "\n@(#)5.0_pl/sources/sytb.c 5.25 10/27/99 16:59:36\n"

Define Documentation

#define FP_SGI_INFINITE   1

Definition at line 155 of file sytb.c.

Referenced by fp_classify_128(), fp_classify_32(), fp_classify_64(), and ntr_abnormal_ieee_const().

#define FP_SGI_NAN   0

Definition at line 154 of file sytb.c.

Referenced by fp_classify_128(), fp_classify_32(), fp_classify_64(), and ntr_abnormal_ieee_const().

#define FP_SGI_NORMAL   2

Definition at line 156 of file sytb.c.

Referenced by fp_classify_128(), fp_classify_32(), and fp_classify_64().

#define FP_SGI_SUBNORMAL   3

Definition at line 157 of file sytb.c.

Referenced by fp_classify_128(), fp_classify_32(), fp_classify_64(), and ntr_abnormal_ieee_const().

#define FP_SGI_ZERO   4

Definition at line 158 of file sytb.c.

Referenced by fp_classify_128(), fp_classify_32(), fp_classify_64(), and ntr_abnormal_ieee_const().

#define IEEE_128_EXPO   0X7FFF

Definition at line 148 of file sytb.c.

Referenced by fp_classify_128(), and is_normal_128().

#define IEEE_128_EXPO_ALLONES (   X)    ((X) == IEEE_128_EXPO)

Definition at line 149 of file sytb.c.

Referenced by is_normal_128().

#define IEEE_128_EXPO_BITS   15

Definition at line 145 of file sytb.c.

#define IEEE_128_MANTTL_BITS   32

Definition at line 147 of file sytb.c.

#define IEEE_128_MANTTU_BITS   16

Definition at line 146 of file sytb.c.

#define IEEE_32_EXPO_ALLONES (   X)    ((X) == IEEE_32_EXPONENT)

Definition at line 133 of file sytb.c.

Referenced by is_normal_32().

#define IEEE_32_EXPO_BITS   8

Definition at line 130 of file sytb.c.

#define IEEE_32_EXPONENT   0XFF

Definition at line 132 of file sytb.c.

Referenced by fp_classify_32(), and is_normal_32().

#define IEEE_32_MANT_BITS   23

Definition at line 131 of file sytb.c.

#define IEEE_64_EXPO_ALLONES (   X)    ((X) == IEEE_64_EXPONENT)

Definition at line 141 of file sytb.c.

Referenced by is_normal_64().

#define IEEE_64_EXPO_BITS   11

Definition at line 137 of file sytb.c.

#define IEEE_64_EXPONENT   0X7FF

Definition at line 140 of file sytb.c.

Referenced by fp_classify_64(), and is_normal_64().

#define IEEE_64_MANTL_BITS   32

Definition at line 139 of file sytb.c.

#define IEEE_64_MANTU_BITS   20

Definition at line 138 of file sytb.c.


Typedef Documentation

Definition at line 200 of file sytb.c.

Definition at line 172 of file sytb.c.

Definition at line 183 of file sytb.c.


Function Documentation

void assign_offset ( int  attr_idx)

Definition at line 5786 of file sytb.c.

References cmd_line_flags_entry::align16, cmd_line_flags_entry::align32, cmd_line_flags_entry::align8, Align_128, Align_16, Align_32, Align_64, Align_8, Align_Bit, align_bit_length(), Align_Double, AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_OBJ_NAME_PTR, ATD_ALIGNMENT, ATD_CLASS, ATD_CPNT_OFFSET_IDX, ATD_IM_A_DOPE, ATD_OFFSET_ASSIGNED, ATD_OFFSET_FLD, ATD_OFFSET_IDX, ATD_POINTER, ATD_STOR_BLK_IDX, ATD_SYMBOLIC_CONSTANT, ATD_TYPE_IDX, ATT_ALIGNMENT, ATT_CHAR_SEQ, ATT_DALIGN_ME, ATT_DCL_NUMERIC_SEQ, ATT_STRUCT_BIT_LEN_FLD, ATT_STRUCT_BIT_LEN_IDX, C_TO_F_INT, calculate_pad(), Caution, CG_INTEGER_DEFAULT_TYPE, Character, cmd_line_flags, CN_INTEGER_ZERO_IDX, CN_Tbl_Idx, Complex_16, size_offset_entry::constant, CRI_Ptr_8, CURR_BLK_NAME, cmd_line_flags_entry::dalign, DALIGN_TEST_CONDITION, FALSE, size_offset_entry::fld, fold_relationals(), Func_Entry, Func_Exit, size_offset_entry::idx, on_off_flags_entry::integer_1_and_2, Mod_Opr, Ne_Opr, NO_Tbl_Idx, ntr_const_tbl(), NULL, NULL_IDX, on_off_flags, PACK_16_BIT_TEST_CONDITION, PACK_8_BIT_TEST_CONDITION, PACK_HALF_WORD_TEST_CONDITION, Plus_Opr, PRINTMSG(), Real_16, result, cmd_line_flags_entry::s_pointer8, SB_BLANK_COMMON, SB_IS_COMMON, SB_LEN_FLD, SB_LEN_IDX, SB_NAME_PTR, SB_PAD_BLK, size_offset_binary_calc(), stor_bit_size_of(), storage_bit_size_tbl, Struct_Component, Structure, TRACE, TRUE, TYP_IDX, TYP_LINEAR, TYP_TYPE, size_offset_entry::type_idx, and Warning.

Referenced by check_and_allocate_common_storage(), end_type_blk(), final_attr_semantics(), final_decl_semantics(), gen_forall_derived_type(), and parse_cpnt_dcl_stmt().

Here is the call graph for this function:

attr_aux_tbl_type* attr_aux_var_error ( char *  err_str,
int  attr_idx 
)

Definition at line 3640 of file sytb.c.

References attr_aux_tbl, Internal, print_at_all(), PRINTMSG(), stmt_start_col, and stmt_start_line.

Here is the call graph for this function:

bounds_tbl_type* bd_var_error ( char *  err_str,
int  bd_idx 
)

Definition at line 3674 of file sytb.c.

References bounds_tbl, Internal, print_bd(), PRINTMSG(), stmt_start_col, and stmt_start_line.

Here is the call graph for this function:

boolean compare_value_to_cn ( long_type value,
int  cn_idx,
int  opr 
)

Definition at line 224 of file sytb.c.

References CN_CONST, CN_POOL_IDX, CN_TYPE_IDX, const_pool, Eq_Opr, FALSE, folder_driver(), Func_Entry, Func_Exit, Ne_Opr, NULL, result, stmt_start_col, stmt_start_line, storage_bit_size_tbl, THIS_IS_TRUE, TRACE, TRUE, and TYP_LINEAR.

Referenced by insert_constant().

Here is the call graph for this function:

static void dump_cn_tree ( int  root,
int  type_idx,
int  indent 
) [static]

Definition at line 2470 of file sytb.c.

References CN_CONST, CN_LEFT_CHILD, CN_RIGHT_CHILD, CN_TYPE_IDX, convert_to_string(), Default_Typed, Func_Entry, Func_Exit, indent, NULL, NULL_IDX, TRACE, and TYP_DESC.

Referenced by ntr_const_tbl().

Here is the call graph for this function:

void fill_in_global_attr_ntry ( int  ga_idx,
int  attr_idx,
int  ga_pgm_idx 
)

Definition at line 6679 of file sytb.c.

References Assumed_Shape, AT_MODULE_IDX, AT_NAME_LEN, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_REFERENCED, ATD_ARRAY_IDX, ATD_CLASS, ATD_IN_COMMON, ATD_INTENT, ATD_POINTER, ATD_TARGET, ATD_TYPE_IDX, ATP_ALT_ENTRY, ATP_ELEMENTAL, ATP_EXPL_ITRFC, ATP_EXTRA_DARG, ATP_FIRST_IDX, ATP_GLOBAL_ATTR_IDX, ATP_NOSIDE_EFFECTS, ATP_NUM_DARGS, ATP_PGM_UNIT, ATP_PURE, ATP_RECURSIVE, ATP_RSLT_IDX, ATP_SCP_ALIVE, ATP_VFUNCTION, ATT_GLOBAL_TYPE_IDX, ATT_NUM_CPNTS, ATT_PRIVATE_CPNT, ATT_SEQUENCE_SET, ATT_STRUCT_BIT_LEN_IDX, BD_ARRAY_CLASS, BD_RANK, Character, CN_POOL_IDX, CN_TYPE_IDX, CP_CONSTANT, CRI__Pointee, curr_scp_idx, Data_Obj, Derived_Type, Dummy_Argument, fill_in_global_attr_ntry(), Func_Entry, Func_Exit, Function, Function_Result, GA_DEF_COLUMN, GA_DEF_LINE, GA_DEFINED, GA_MODULE_IDX, GA_OBJ_CLASS, GA_OPTIONAL, GA_REFERENCED, GAC_PGM_UNIT_IDX, GAD_ARRAY_IDX, GAD_ASSUMED_SHAPE_ARRAY, GAD_CLASS, GAD_INTENT, GAD_POINTER, GAD_RANK, GAD_TARGET, GAD_TYPE_IDX, GAP_ELEMENTAL, GAP_FIRST_IDX, GAP_IN_INTERFACE_BLK, GAP_NEEDS_EXPL_ITRFC, GAP_NOSIDE_EFFECTS, GAP_NUM_DARGS, GAP_PGM_UNIT, GAP_PGM_UNIT_DEFINED, GAP_PURE, GAP_RECURSIVE, GAP_RSLT_IDX, GAP_VFUNCTION, GAT_NUM_CPNTS, GAT_PRIVATE_CPNT, GAT_SEQUENCE_SET, GAT_STRUCT_BIT_LEN, GAT_STRUCT_LIN_TYPE, global_attr_tbl_idx, GN_ATTR_IDX, GT_CHAR_CLASS, GT_TYPE, Not_Referenced, ntr_global_attr_tbl(), ntr_global_bounds_tbl(), ntr_global_name_tbl(), ntr_global_type_tbl(), NULL, NULL_IDX, num_host_wds, Pgm_Unit, SCP_ATTR_IDX, SCP_IS_INTERFACE, SN_ATTR_IDX, SN_COLUMN_NUM, SN_LINE_NUM, srch_global_name_tbl(), Struct_Component, Subroutine, TRACE, TRUE, TYP_IDX, TYP_LINEAR, TYP_TYPE, Var_Len_Char, and Variable.

Referenced by check_global_pgm_unit(), fill_in_global_attr_ntry(), ntr_common_in_global_attr_tbl(), ntr_global_name_tbl(), ntr_global_type_tbl(), and ntr_ref_in_global_tbl().

Here is the call graph for this function:

void find_opnd_line_and_column ( opnd_type opnd,
int *  line,
int *  column 
)

Definition at line 7642 of file sytb.c.

References AT_Tbl_Idx, CN_Tbl_Idx, COPY_OPND, find_opnd_line_and_column(), Func_Entry, Func_Exit, IL_OPND, IL_Tbl_Idx, IR_COL_NUM, IR_LINE_NUM, IR_Tbl_Idx, NULL, OPND_COL_NUM, OPND_FLD, OPND_IDX, OPND_LINE_NUM, SB_Tbl_Idx, SH_COL_NUM, SH_GLB_LINE, SH_Tbl_Idx, and TRACE.

Referenced by add_common_blk_objects_to_list(), alloc_obj_opr_handler(), allocate_stmt_semantics(), analyse_loops(), and_opr_handler(), arith_if_stmt_semantics(), array_construct_semantics(), assign_stmt_semantics(), assignment_stmt_semantics(), attr_init_semantics(), buffer_stmt_semantics(), build_loop_tbl(), call_list_semantics(), case_stmt_semantics(), case_value_range_semantics(), cast_opnd_to_type_idx(), cast_to_cg_default(), cast_to_type_idx(), change_section_to_do(), change_section_to_this_element(), change_subscript(), char_len_resolution(), check_arg_for_co_array(), check_array_bounds(), check_elemental_conformance(), check_for_dependencies(), check_mp_dir_nesting(), check_stat_variable(), check_substring_bounds(), check_target_and_value(), cmp_ref_trees(), cmplx_intrinsic(), compare_darg_to_actual_arg(), compute_char_element_len(), const_init_semantics(), constant_value_semantics(), create_array_constructor_asg(), create_constructor_constant(), create_imp_do_loops(), create_loop_stmts(), create_struct_constructor_asg(), create_tmp_asg(), create_tmp_DV_asg(), csmg_intrinsic(), cvmgp_intrinsic(), data_repeat_semantics(), data_stmt_semantics(), deallocate_stmt_semantics(), default_init_semantics(), determine_tmp_size(), dim_intrinsic(), directive_stmt_semantics(), do_loop_expr_semantics(), do_single_asg(), do_stmt_semantics(), doall_cmic_semantics(), doparallel_cmic_semantics(), dope_vector_setup(), else_stmt_semantics(), encode_decode_stmt_semantics(), eq_opr_handler(), final_arg_work(), find_opnd_line_and_column(), fold_aggragate_expression(), fold_clen_opr(), fold_nested_substrings(), forall_semantics(), gen_array_element_init(), gen_bias_ref(), gen_common_dv_init(), gen_dv_def_loops(), gen_Dv_Set_stmt(), gen_dv_whole_def(), gen_dv_whole_def_init(), gen_forall_branch_around(), gen_forall_max_expr(), gen_init_stmt(), gen_internal_dope_vector(), gen_loop_end_ir(), gen_runtime_conformance(), gen_sf_dv_whole_def(), gen_static_dv_whole_def(), generate_bounds_list(), get_char_len(), goto_stmt_semantics(), iand_intrinsic(), inquire_stmt_semantics(), interpret_constructor(), interpret_implied_do(), interpret_struct_construct_opr(), io_ctl_list_semantics(), io_list_semantics(), kind_to_linear_type(), lbound_intrinsic(), lg_opr_handler(), lt_opr_handler(), make_base_assumed_size(), make_base_subtree(), make_logical_array_tmp(), make_triplet_extent_tree(), merge_parameter(), minus_opr_handler(), mp_directive_semantics(), mult_opr_handler(), not_intrinsic(), not_opr_handler(), ntr_bnds_sh_tmp_list(), ntr_bnds_tmp_list(), nullify_stmt_semantics(), num_images_intrinsic(), open_mp_directive_semantics(), outmoded_if_stmt_semantics(), parallel_cmic_semantics(), parse_assert_directive(), parse_cache_align_name_list(), parse_cache_bypass_dir(), parse_data_imp_do(), parse_deref(), parse_id_directive(), parse_imp_do(), parse_initializer(), parse_io_control_list(), parse_mp_directive(), parse_name_dir(), parse_open_mp_clauses(), parse_star_directives(), parse_var_common_list(), parse_var_name_list(), plus_opr_handler(), power_opr_handler(), prefetch_ref_semantics(), print_stmt_semantics(), process_cpnt_inits(), process_deferred_functions(), process_variable_size_func(), ptr_assign_from_ptr(), read_stmt_semantics(), resolve_ext_opr(), save_array_syntax_subscripts(), select_stmt_semantics(), set_up_exp_desc(), shift_intrinsic(), short_circuit_branch(), short_circuit_high_level_if(), size_intrinsic(), stmt_expansion_control_end(), stmt_func_call_opr_handler(), struct_construct_opr_handler(), struct_opr_handler(), subscript_opr_handler(), substring_opr_handler(), transform_char_sequence_ref(), transform_cri_ch_ptr(), translate_distant_dv_ref(), translate_distant_ref(), translate_distant_ref1(), translate_distant_ref2(), translate_dv_component(), triplet_opr_handler(), type_init_semantics(), ubound_intrinsic(), uplus_opr_handler(), validate_char_len(), wait_send_semantics(), where_stmt_semantics(), and write_stmt_semantics().

Here is the call graph for this function:

static int fp_classify ( int  type_idx,
long_type constant 
) [static]

Definition at line 9218 of file sytb.c.

References fp_classify_128(), fp_classify_32(), fp_classify_64(), Func_Entry, Func_Exit, NULL, storage_bit_size_tbl, TRACE, and TYP_LINEAR.

Referenced by ntr_abnormal_ieee_const().

Here is the call graph for this function:

global_attr_tbl_type* ga_var_error ( char *  err_str,
int  ga_idx 
)

Definition at line 3744 of file sytb.c.

References global_attr_tbl, Internal, print_ga(), PRINTMSG(), stmt_start_col, and stmt_start_line.

Here is the call graph for this function:

int gen_compiler_tmp ( int  tmp_line,
int  tmp_column,
task_scope_type  scope,
boolean  add_to_attr_list 
)

Definition at line 4116 of file sytb.c.

References ADD_TMP_TO_PRIVATE_LIST, ADD_TMP_TO_SHARED_LIST, AT_COMPILER_GEND, AT_DEF_COLUMN, AT_DEF_LINE, AT_NAME_IDX, AT_NAME_LEN, AT_REFERENCED, AT_TYPED, ATD_CLASS, Compiler_Tmp, CREATE_ID, curr_scp_idx, FALSE, Func_Entry, Func_Exit, idx, loc_name_tbl, name, name_pool, NTR_ATTR_TBL, ntr_local_attr_list(), NTR_NAME_POOL, NULL, Priv, Referenced, SCP_LN_FW_IDX, SCP_LN_LW_IDX, srch_name_tbl(), id_str_entry::string, TRACE, TRUE, and id_str_entry::words.

Referenced by adjust_char_value_len(), align_bit_length(), array_construct_semantics(), array_dim_resolution(), array_element_to_scalar(), assign_stmt_semantics(), attr_semantics(), backspace_stmt_semantics(), bits_and_bytes_to_words(), build_loop_tbl(), call_list_semantics(), change_section_to_do(), character_to_character(), check_stat_variable(), close_stmt_semantics(), copy_and_replace_tmps(), create_alloc_descriptor(), create_argchck_descriptor(), create_constructor_constant(), create_format_tmp(), create_imp_do_loops(), create_io_call_descriptor(), create_namelist_descriptor(), create_runtime_array_constructor(), create_runtime_struct_constructor(), create_scalar_type_tbl(), create_strct_tbl(), determine_lb_ub(), do_single_asg(), endfile_stmt_semantics(), final_arg_work(), final_decl_semantics(), finish_cdir_id(), flatten_function_call(), fold_aggragate_expression(), forall_semantics(), gen_allocatable_ptr_ptee(), gen_arg_type_descriptor(), gen_call_type_descriptor(), gen_dv_def_loops(), gen_forall_tmp(), gen_initialized_tmp(), gen_loop_end_ir(), gen_sf_dv_whole_def(), gen_static_integer_array_tmp(), gen_tmp_equal_max_zero(), get_stmt_tmp(), init_whole_array(), inquire_stmt_semantics(), interpret_reshape_intrinsic(), interpret_transfer_intrinsic(), io_ctl_list_semantics(), io_list_semantics(), lbound_intrinsic(), null_intrinsic(), open_stmt_semantics(), optimize_reshape(), parse_dummy_args(), parse_id_directive(), pe_array_dim_resolution(), put_string_in_tmp(), random_seed_intrinsic(), ranget_intrinsic(), read_stmt_semantics(), reshape_intrinsic(), rewind_stmt_semantics(), scalar_dope_to_scalar(), set_sb_first_attr_idx(), set_up_bd_tmps(), set_up_which_entry_tmp(), shape_intrinsic(), size_offset_binary_calc(), srch_for_calls(), storage_blk_resolution(), struct_construct_opr_handler(), subscript_opr_handler(), transfer_intrinsic(), transform_cri_ch_ptr(), translate_distant_dv_ref(), translate_distant_ref1(), translate_dv_component(), ubound_intrinsic(), vv_subscript_semantics(), and write_stmt_semantics().

Here is the call graph for this function:

static int insert_constant ( int  type_idx,
long_type constant,
int  num_long_types 
) [static]
static int insert_unordered_constant ( int  type_idx,
long_type constant,
int  input_word_len,
int  const_word_len 
) [static]
ir_list_tbl_type* ir_list_var_error ( char *  err_str,
int  il_idx 
)

Definition at line 3708 of file sytb.c.

References Internal, ir_list_tbl, print_il(), PRINTMSG(), stmt_start_col, and stmt_start_line.

Here is the call graph for this function:

static boolean is_normal ( int  type_idx,
long_type constant 
) [static]

Definition at line 8915 of file sytb.c.

References FALSE, Func_Entry, Func_Exit, is_normal_128(), is_normal_32(), is_normal_64(), NULL, result, storage_bit_size_tbl, TRACE, TRUE, and TYP_LINEAR.

Referenced by ntr_const_tbl().

Here is the call graph for this function:

static int is_normal_128 ( int  type_idx,
long_type constant 
) [static]
static int is_normal_32 ( long_type constant) [static]
static int is_normal_64 ( int  type_idx,
long_type constant 
) [static]
static int ntr_abnormal_ieee_const ( int  type_idx,
long_type constant 
) [static]
int ntr_const_tbl ( int  type_idx,
boolean  extra_zero_word,
long_type constant 
)

Definition at line 1574 of file sytb.c.

References AT_DEF_COLUMN, AT_DEF_LINE, AT_OBJ_NAME_PTR, ATT_STRUCT_BIT_LEN_FLD, ATT_STRUCT_BIT_LEN_IDX, BITS_TO_WORDS, Character, CLEAR_TBL_NTRY, CN_CONST, CN_EXTRA_ZERO_WORD, CN_INT_TO_C, CN_POOL_IDX, cn_root_idx, CN_Tbl_Idx, CN_TYPE_IDX, Complex, Complex_4, const_pool, const_pool_idx, const_pool_inc, const_pool_size, const_tbl, const_tbl_idx, size_offset_entry::constant, dump_flags_entry::constant_bits, DALIGN_TEST_CONDITION, dump_cn_tree(), dump_flags, F_INT_TO_C, FALSE, size_offset_entry::fld, FOUND, Func_Entry, Func_Exit, size_offset_entry::idx, insert_constant(), insert_unordered_constant(), Integer, Internal, is_normal(), L, Logical, MEM_REALLOC, ntr_abnormal_ieee_const(), ntr_unshared_const_tbl(), NULL, NULL_IDX, num_host_wds, PRINTMSG(), pvp_isnormal(), Real, storage_bit_size_tbl, STORAGE_WORD_SIZE, Structure, target_ieee, TBL_REALLOC_CK, TRACE, TRUE, TYP_BIT_LEN, TYP_IDX, TYP_LINEAR, TYP_TYPE, size_offset_entry::type_idx, Typeless, and write.

Referenced by abs_intrinsic(), adjust_char_value_len(), and_opr_handler(), arith_if_stmt_semantics(), assign_new_idxs(), assign_offset(), assign_offsets_for_equiv_groups(), attr_semantics(), buffer_stmt_semantics(), calculate_iteration_count(), cast_to_cg_default(), cast_to_type_idx(), cast_typeless_constant(), char_intrinsic(), check_and_allocate_common_storage(), check_target_and_value(), concat_opr_handler(), const_init_semantics(), convert_to_do_var_type(), copy_from_gl_subtree(), create_bd_ntry_for_const(), create_constructor_constant(), create_dv_type_code(), create_kwd_text(), create_namelist_descriptor(), create_runtime_array_constructor(), create_scalar_type_tbl(), create_strct_tbl(), create_struct_argchck_tbl(), csmg_intrinsic(), cvrt_exp_to_pdg(), cvrt_opr_handler(), data_stmt_semantics(), determine_tmp_size(), dim_intrinsic(), end_type_blk(), eoshift_intrinsic(), eq_opr_handler(), final_arg_work(), final_attr_semantics(), final_decl_semantics(), final_equivalence_semantics(), finish_cdir_id(), fold_aggragate_expression(), folder_driver(), gen_alloc_header_const(), gen_arg_type_descriptor(), gen_array_element_init(), gen_call_type_descriptor(), gen_common_dv_init(), gen_dv_whole_def_init(), gen_init_stmt(), gen_internal_dope_vector(), gen_loop_end_ir(), gen_sf_dv_whole_def(), gen_static_dv_whole_def(), get_next_array_expr_element(), ichar_intrinsic(), imp_do_metamorphed(), index_intrinsic(), init_directive(), init_whole_array(), int_intrinsic(), interpret_data_imp_do(), interpret_implied_do(), interpret_reshape_intrinsic(), interpret_transfer_intrinsic(), io_ctl_list_semantics(), kludge_input_conversion(), lbound_intrinsic(), len_trim_intrinsic(), lg_opr_handler(), lge_intrinsic(), linearize_list_for_equiv(), lt_opr_handler(), mask_intrinsic(), max_intrinsic(), merge_equivalence_groups2(), merge_parameter(), minus_opr_handler(), mod_intrinsic(), modulo_intrinsic(), mult_opr_handler(), namelist_static_dv_whole_def(), nint_intrinsic(), not_opr_handler(), ntr_int_const_tbl(), ntr_io_string_constant(), num_images_intrinsic(), outmoded_if_stmt_semantics(), parse_dir_directives(), parse_id_directive(), parse_open_mp_directives(), parse_openad_directives(), parse_operand(), plus_opr_handler(), power_opr_handler(), pre_parse_format(), push_data_value(), put_c_str_in_cn(), put_char_const_in_tbl(), put_format_in_tbl(), put_string_in_tmp(), reshape_intrinsic(), selected_int_kind_intrinsic(), selected_real_kind_intrinsic(), set_stride_for_first_dim(), set_up_logical_constant(), shape_intrinsic(), shift_intrinsic(), sign_intrinsic(), size_offset_binary_calc(), size_offset_logical_calc(), size_offset_min_max_calc(), stop_pause_stmt_semantics(), storage_blk_resolution(), substring_opr_handler(), transfer_intrinsic(), transform_char_sequence_ref(), translate_distant_ref2(), ubound_intrinsic(), update_fld_type(), uplus_opr_handler(), and wait_send_semantics().

Here is the call graph for this function:

int ntr_derived_type_tbl ( void  )

Definition at line 5362 of file sytb.c.

References EXIT, FALSE, Func_Entry, Func_Exit, NULL, NUM_TYP_WDS, TBL_REALLOC_CK, TRACE, TRUE, TYP_WORK_IDX, type_tbl, and type_tbl_idx.

Referenced by send_attr_ntry().

int ntr_gl_ir_tbl ( void  )
int ntr_gl_sh_tbl ( void  )
int ntr_ir_tbl ( void  )
int ntr_sym_tbl ( token_type token,
int  name_idx 
)

Definition at line 370 of file sytb.c.

References AT_DEF_COLUMN, AT_DEF_LINE, AT_NAME_IDX, AT_NAME_LEN, CLEAR_TBL_NTRY, curr_scp_idx, Func_Entry, Func_Exit, Internal, LN_ATTR_IDX, LN_NAME_IDX, LN_NAME_LEN, loc_name_tbl, loc_name_tbl_idx, NTR_ATTR_TBL, NTR_NAME_POOL, NULL, PRINTMSG(), SCP_LN_FW_IDX, SCP_LN_LW_IDX, scp_tbl_idx, stmt_start_col, stmt_start_line, TBL_REALLOC_CK, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, and TRACE.

Referenced by check_label_ref(), ck_lbl_construct_name(), enter_intrinsic_info(), gen_attr_and_IR_for_lbl(), gen_loop_lbl_name(), generic_spec_semantics(), implicit_use_semantics(), init_parse_prog_unit(), parse_assign_stmt(), parse_assignment_stmt(), parse_attrs(), parse_auxiliary_dir(), parse_cache_noalloc(), parse_call_stmt(), parse_common_stmt(), parse_copy_assumed_shape_dir(), parse_data_imp_do(), parse_data_stmt(), parse_decode_stmt(), parse_deref(), parse_derived_type_stmt(), parse_distribution_dir(), parse_do_stmt(), parse_dummy_args(), parse_encode_stmt(), parse_entry_stmt(), parse_equivalence_stmt(), parse_fill_align_symbol(), parse_goto_stmt(), parse_ignore_tkr(), parse_inline_always_never(), parse_io_control_list(), parse_module_stmt(), parse_name_dir(), parse_namelist_stmt(), parse_nosideeffects_dir(), parse_parameter_stmt(), parse_permutation_mic(), parse_pointer_stmt(), parse_print_stmt(), parse_read_stmt(), parse_redistribute_dir(), parse_sgi_dir_inline(), parse_star_directives(), parse_stmt_func_stmt(), parse_symmetric_dir(), parse_type_dcl_stmt(), parse_type_spec(), parse_use_stmt(), parse_var_common_list(), parse_vfunction_dir(), parse_write_stmt(), set_function_rslt(), set_up_pe_offset_attr(), start_new_prog_unit(), start_new_scp(), and start_new_subpgm().

Here is the call graph for this function:

int ntr_type_tbl ( void  )

Definition at line 5248 of file sytb.c.

References Character, CHARACTER_DEFAULT_TYPE, Complex, CRI_Ch_Ptr, CRI_Parcel_Ptr, CRI_Ptr, Default_Typed, Err_Res, EXIT, FALSE, Func_Entry, Func_Exit, Integer, Logical, Long_Typeless, NULL, NUM_TYP_WDS, Real, Structure, TBL_REALLOC_CK, TRACE, TRUE, TYP_BIT_LEN, TYP_DESC, TYP_LINEAR, TYP_PTR_INCREMENT, TYP_TYPE, TYP_WORK_IDX, type_tbl, type_tbl_idx, Typeless, Typeless_4, and Typeless_8.

Referenced by adjust_char_value_len(), attr_semantics(), char_len_resolution(), clock_intrinsic(), concat_opr_handler(), convert_binary_literal(), convert_const(), convert_hex_literal(), convert_octal_literal(), create_constructor_constant(), create_format_tmp(), create_kwd_text(), create_runtime_array_constructor(), create_struct_argchck_tbl(), cri_ptr_type(), final_arg_work(), final_attr_semantics(), finish_cdir_id(), fold_aggragate_expression(), folder_driver(), gen_arg_type_descriptor(), gen_call_type_descriptor(), gen_forall_derived_type(), gen_static_dv_whole_def(), get_operand_quote(), init_directive(), interpret_adjustl_intrinsic(), interpret_binary_intrinsic_opr(), interpret_binary_opr(), interpret_index_opr(), interpret_reshape_intrinsic(), interpret_transfer_intrinsic(), interpret_unary_intrinsic_opr(), kind_to_linear_type(), lbound_intrinsic(), loc_intrinsic(), make_new_bd_entries(), merge_parameter(), namelist_static_dv_whole_def(), ntr_io_string_constant(), parse_cpnt_dcl_stmt(), parse_dir_directives(), parse_open_mp_directives(), parse_openad_directives(), parse_operand(), parse_pointer_stmt(), parse_type_dcl_stmt(), parse_type_spec(), pre_parse_format(), push_data_value(), put_c_str_in_cn(), put_char_const_in_tbl(), put_format_in_tbl(), put_string_in_tmp(), reshape_intrinsic(), set_sb_first_attr_idx(), set_up_pe_offset_attr(), shape_intrinsic(), srch_for_calls(), stop_pause_stmt_semantics(), struct_construct_opr_handler(), substring_opr_handler(), transfer_intrinsic(), transform_char_sequence_ref(), ubound_intrinsic(), and validate_char_len().

static boolean pvp_isnormal ( int  type_idx,
long_type constant 
) [static]

Definition at line 8871 of file sytb.c.

References AR_STAT_OVERFLOW, AR_STAT_UNDERFLOW, AR_status(), FALSE, Func_Entry, Func_Exit, linear_to_arith, NULL, result, TRACE, TRUE, and TYP_LINEAR.

Referenced by ntr_const_tbl().

Here is the call graph for this function:

void remove_hidden_name_ntry ( int  name_idx)

Definition at line 7880 of file sytb.c.

References curr_scp_idx, Func_Entry, Func_Exit, hidden_name_tbl, hidden_name_tbl_idx, NULL, SCP_HN_LW_IDX, and TRACE.

Referenced by compress_tbls(), and resolve_attr().

void remove_hidden_name_tbl ( int  scp_idx)

Definition at line 8829 of file sytb.c.

References Func_Entry, Func_Exit, hidden_name_tbl_idx, NULL, NULL_IDX, SCP_HN_FW_IDX, SCP_HN_LW_IDX, and TRACE.

Referenced by end_interface_body().

void remove_ln_ntry ( int  name_idx)
static int sign_bit ( int  type_idx,
long_type constant 
) [static]

Definition at line 9076 of file sytb.c.

References Func_Entry, Func_Exit, NULL, result, sign_bit_128(), sign_bit_32(), sign_bit_64(), storage_bit_size_tbl, TRACE, and TYP_LINEAR.

Referenced by ntr_abnormal_ieee_const().

Here is the call graph for this function:

static int sign_bit_128 ( long_type constant) [static]

Definition at line 9188 of file sytb.c.

References f, ieee_real_16::integer_array, ieee_real_16::parts, and ieee_real_16::sign.

Referenced by sign_bit().

static int sign_bit_32 ( long_type constant) [static]

Definition at line 9126 of file sytb.c.

References f, ieee_real_4::integer_form, ieee_real_4::parts, and ieee_real_4::sign.

Referenced by sign_bit().

static int sign_bit_64 ( long_type constant) [static]

Definition at line 9157 of file sytb.c.

References f, ieee_real_8::integer_array, ieee_real_8::parts, and ieee_real_8::sign.

Referenced by sign_bit().

int srch_hidden_name_tbl ( char *  name_str,
int  name_len,
int  attr_idx,
int *  np_idx,
int *  name_idx 
)

Definition at line 7707 of file sytb.c.

References curr_scp_idx, Func_Entry, Func_Exit, hidden_name_tbl, HN_ATTR_IDX, HN_NAME_IDX, idx, name_pool, NULL, NULL_IDX, SCP_HN_FW_IDX, SCP_HN_LW_IDX, srch_name_tbl(), and TRACE.

Referenced by resolve_attr().

Here is the call graph for this function:

Definition at line 3027 of file sytb.c.

References curr_scp_idx, Func_Entry, Func_Exit, idx, NULL, NULL_IDX, SCP_IS_INTERFACE, SCP_PARENT_IDX, srch_stor_blk_tbl(), token, TOKEN_LEN, TOKEN_STR, and TRACE.

Here is the call graph for this function:

int srch_sym_tbl ( char *  name_str,
int  name_len,
int *  name_idx 
)

Definition at line 311 of file sytb.c.

References curr_scp_idx, Func_Entry, Func_Exit, idx, LN_ATTR_IDX, LN_NAME_IDX, loc_name_tbl, name_pool, NULL, NULL_IDX, SCP_LN_FW_IDX, SCP_LN_LW_IDX, srch_name_tbl(), and TRACE.

Referenced by attr_link_resolution(), attr_semantics(), call_list_semantics(), check_and_allocate_common_storage(), check_label_ref(), ck_lbl_construct_name(), convert_const(), copy_from_gl_subtree(), final_decl_semantics(), find_attrs_used_in_bound(), gen_attr_and_IR_for_lbl(), gen_loop_lbl_name(), generic_spec_semantics(), get_operand_dot(), get_operator_dot(), host_associated_attr_semantics(), implicit_use_semantics(), init_parse_prog_unit(), issue_undefined_type_msg(), merge_intrinsic(), parse_assign_stmt(), parse_assignment_stmt(), parse_attrs(), parse_auxiliary_dir(), parse_cache_noalloc(), parse_call_stmt(), parse_common_stmt(), parse_copy_assumed_shape_dir(), parse_data_imp_do(), parse_data_stmt(), parse_decode_stmt(), parse_deref(), parse_derived_type_stmt(), parse_distribution_dir(), parse_do_stmt(), parse_dummy_args(), parse_encode_stmt(), parse_entry_stmt(), parse_equivalence_stmt(), parse_expr(), parse_fill_align_symbol(), parse_goto_stmt(), parse_ignore_tkr(), parse_inline_always_never(), parse_io_control_list(), parse_level_1(), parse_module_stmt(), parse_name_dir(), parse_namelist_stmt(), parse_nosideeffects_dir(), parse_parameter_stmt(), parse_permutation_mic(), parse_pointer_stmt(), parse_print_stmt(), parse_prog_unit(), parse_read_stmt(), parse_redistribute_dir(), parse_sgi_dir_inline(), parse_star_directives(), parse_stmt_func_stmt(), parse_symmetric_dir(), parse_type_dcl_stmt(), parse_type_spec(), parse_use_stmt(), parse_var_common_list(), parse_vfunction_dir(), parse_write_stmt(), print_at_by_name(), print_ln_by_name(), rename_only_semantics(), reshape_array_semantics(), resolve_attr(), resolve_ext_opr(), set_function_rslt(), set_up_pe_offset_attr(), srch_host_sym_tbl(), start_new_prog_unit(), start_new_scp(), start_new_subpgm(), and update_intrinsic().

Here is the call graph for this function:

size_offset_type stor_bit_size_of ( int  attr_idx,
boolean  all_elements,
boolean  check_array_size 
)

Definition at line 3856 of file sytb.c.

References align_bit_length(), AT_COMPILER_GEND, AT_DCL_ERR, AT_DEF_COLUMN, AT_DEF_LINE, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, ATD_ARRAY_IDX, ATD_AUXILIARY, ATD_IM_A_DOPE, ATD_TOO_BIG_FOR_DV, ATD_TYPE_IDX, ATT_STRUCT_BIT_LEN_FLD, ATT_STRUCT_BIT_LEN_IDX, BD_ARRAY_CLASS, BD_ARRAY_SIZE, BD_LEN_FLD, BD_LEN_IDX, BD_RANK, C_TO_F_INT, CG_INTEGER_DEFAULT_TYPE, Character, cmd_line_flags, CN_INTEGER_CHAR_BIT_IDX, CN_INTEGER_TWO_IDX, CN_Tbl_Idx, size_offset_entry::constant, Constant_Size, Data_Obj, DV_DIM_WORD_SIZE, DV_HD_WORD_SIZE, Err_Res, Error, Explicit_Shape, FALSE, size_offset_entry::fld, Func_Entry, Func_Exit, Gt_Opr, size_offset_entry::idx, Integer_8, Internal, ISSUE_EXPR_SIZE_EXCEEDED_MSG, ISSUE_STORAGE_SIZE_EXCEEDED_MSG, MAX_STORAGE_SIZE_IN_WORDS, Mult_Opr, NO_Tbl_Idx, NULL, NULL_IDX, PRINTMSG(), result, cmd_line_flags_entry::s_pointer8, size_offset_binary_calc(), size_offset_logical_calc(), storage_bit_size_tbl, Structure, Symbolic_Constant_Size, target_t3e, THIS_IS_TRUE, TRACE, TRUE, TYP_BIT_LEN, TYP_FLD, TYP_IDX, TYP_LINEAR, TYP_TYPE, size_offset_entry::type_idx, Typeless, and Warning.

Referenced by array_dim_resolution(), assign_offset(), assign_storage_blk(), attr_semantics(), check_and_allocate_common_storage(), data_stmt_semantics(), end_function_semantics(), final_attr_semantics(), final_equivalence_semantics(), get_type_desc(), return_stmt_semantics(), send_attr_ntry(), and send_dummy_procedure().

Here is the call graph for this function:

attr_tbl_type* sytb_var_error ( char *  err_str,
int  attr_idx 
)

Definition at line 3605 of file sytb.c.

References attr_tbl, Internal, print_at_all(), PRINTMSG(), stmt_start_col, and stmt_start_line.

Here is the call graph for this function:


Variable Documentation

char USMID[] = "\n@(#)5.0_pl/sources/sytb.c 5.25 10/27/99 16:59:36\n" [static]

Definition at line 37 of file sytb.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines