Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
p_directiv.c File Reference
#include "defines.h"
#include "host.m"
#include "host.h"
#include "target.m"
#include "target.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 "s_globals.h"
#include "p_directiv.h"
Include dependency graph for p_directiv.c:

Go to the source code of this file.

Functions

static void check_do_open_mp_nesting (void)
static void check_ordered_open_mp_nesting (void)
static boolean check_section_open_mp_context (void)
static boolean directive_region_error (directive_stmt_type, int, int)
static boolean parse_assert_directive (void)
static void parse_auxiliary_dir (void)
static void parse_cache_align_name_list (opnd_type *)
static void parse_cache_bypass_dir (opnd_type *)
static void parse_cache_noalloc (void)
static void parse_common_dirs (sb_type_type)
static void parse_copy_assumed_shape_dir (void)
static void parse_dir_directives (void)
static void parse_dir_var_list (void)
static void parse_distribution_dir (boolean)
static void parse_doall_cmic (void)
static void parse_dollar_directives (void)
static void parse_doparallel_cmic (void)
static void parse_fill_align_symbol (void)
static void parse_id_directive (void)
static void parse_ignore_tkr (void)
static void parse_inline_always_never (boolean)
static void parse_int_or_star_list (opnd_type *)
static void parse_mic_directives (void)
static void parse_mp_directive (mp_directive_type)
static void parse_name_dir (void)
static void parse_nosideeffects_dir (void)
static void parse_par_directives (void)
static void parse_parallel_cmic (void)
static void parse_permutation_mic (void)
static void parse_prefetch_ref (void)
static void parse_redistribute_dir (void)
static void parse_reference_list (opnd_type *)
static void parse_sgi_dir_inline (boolean)
static void parse_slash_common_dirs (void)
static void parse_star_directives (void)
static void parse_star_dir_directives (void)
static void parse_symmetric_dir (void)
static void parse_var_common_list (opnd_type *, boolean)
static boolean parse_var_name_list (opnd_type *, int maxlen)
static void parse_vfunction_dir (void)
static void parse_open_mp_directives (void)
static void parse_open_mp_clauses (open_mp_directive_type)
static void parse_openad_directives (void)
static char * get_openad_dir_xxx_string (void)
static void parse_openad_varlist (token_values_type)
static int update_fld_type (fld_type, int, int)
void init_directive (int pass)
void parse_directive_stmt (void)
int gen_directive_ir (operator_type operator)
void do_cmic_blk_checks (void)

Variables

static char USMID [] = "\n@(#)5.0_pl/sources/p_directiv.c 5.12 10/12/99 10:54:10\n"

Function Documentation

static boolean check_section_open_mp_context ( void  ) [static]
static char * get_openad_dir_xxx_string ( void  ) [static]

Definition at line 12445 of file p_directiv.c.

References BLANK, EOS, LA_CH_VALUE, NEXT_LA_CH_LITERAL, and NULL.

Referenced by parse_openad_directives().

void init_directive ( int  pass)

Definition at line 129 of file p_directiv.c.

References cdir_switch_entry::align, ATD_BOUNDS_CHECK, ATD_NOBOUNDS_CHECK, cdir_switch_entry::autoscope, cdir_switch_entry::bl, cdir_switch_entry::blockable_count, cdir_switch_entry::blockable_group, cdir_switch_entry::blockable_sh_idx, opt_flags_entry::bottom_load, cdir_switch_entry::bounds, cdir_switch_entry::bounds_il_list, C_INT_TO_CN, cdir_switch_entry::cache_bypass_ir_idx, cdir_switch_entry::casedir, cdir_switches, CG_INTEGER_DEFAULT_TYPE, Character, CHARACTER_DEFAULT_TYPE, cdir_switch_entry::chunk_opnd, CLEAR_TBL_NTRY, cmd_line_flags, CN_INTEGER_ONE_IDX, CN_INTEGER_ZERO_IDX, CN_Tbl_Idx, cdir_switch_entry::code, cdir_switch_entry::concurrent, cdir_switch_entry::concurrent_idx, Const_Len_Char, const_safevl_idx, cdir_switch_entry::copyin_list_idx, cdir_switch_entry::copyprivate_list_idx, cdir_switch_entry::default_scope_list_idx, cdir_switch_entry::dir_nest_check_sh_idx, directive_state, cdir_switch_entry::do_inline, cdir_switch_entry::do_omp_sh_idx, cdir_switch_entry::do_parallel, cdir_switch_entry::doacross_sh_idx, cdir_switch_entry::doall_region, cdir_switch_entry::doall_sh_idx, cdir_switch_entry::dopar_sh_idx, FALSE, cdir_switch_entry::first_sh_blk_stk, cdir_switch_entry::firstprivate_list_idx, cdir_switch_entry::flow, on_off_flags_entry::flowtrace_option, cdir_switch_entry::flush_list_idx, FREE_IR_LIST_NODE, Func_Entry, Func_Exit, cdir_switch_entry::getfirst_list_idx, global_schedtype_col, global_schedtype_line, global_schedtype_value, cdir_switch_entry::guard, cdir_switch_entry::guard_has_flag, cdir_switch_entry::guard_in_par_reg, IL_IDX, IL_NEXT_LIST_IDX, cmd_line_flags_entry::implicit_use_idx, cdir_switch_entry::implicit_use_idx, cdir_switch_entry::inline_here_list_idx, cdir_switch_entry::inline_here_sgi, cdir_switch_entry::interchange_count, cdir_switch_entry::interchange_group, cdir_switch_entry::interchange_level, cdir_switch_entry::interchange_sh_idx, cdir_switch_entry::ivdep, cdir_switch_entry::lastlocal_list_idx, cdir_switch_entry::lastprivate_list_idx, cdir_switch_entry::lastthread_list_idx, cdir_switch_entry::mark, opt_flags_entry::mark, cdir_switch_entry::mark_cmdline_idx, cdir_switch_entry::mark_dir_idx, opt_flags_entry::mark_name, cdir_switch_entry::maxcpus, cdir_switch_entry::mp_schedtype_opnd, cdir_switch_entry::nextscalar, cdir_switch_entry::no_internal_calls, cdir_switch_entry::nobounds_il_list, cdir_switch_entry::noinline, cdir_switch_entry::noinline_here_list_idx, cdir_switch_entry::noinline_here_sgi, cdir_switch_entry::nointerchange, opt_flags_entry::nointerchange, cdir_switch_entry::notask_region, ntr_const_tbl(), ntr_type_tbl(), NULL, NULL_IDX, null_opnd, on_off_flags, OPND_COL_NUM, OPND_FLD, OPND_IDX, OPND_LINE_NUM, opt_flags, cdir_switch_entry::parallel_region, cdir_switch_entry::paralleldo_omp_sh_idx, cdir_switch_entry::paralleldo_sh_idx, cdir_switch_entry::pattern, opt_flags_entry::pattern, cdir_switch_entry::pdo_sh_idx, cdir_switch_entry::preferstream, cdir_switch_entry::preferstream_nocinv, cdir_switch_entry::prefertask, cdir_switch_entry::prefervector, cdir_switch_entry::private_list_idx, cdir_switch_entry::recurrence, opt_flags_entry::recurrence, cdir_switch_entry::reduction_list_idx, cmd_line_flags_entry::runtime_bounds, cdir_switch_entry::safevl_idx, cdir_switch_entry::send_list_idx, opt_flags_entry::set_allfastint_option, opt_flags_entry::set_fastint_option, opt_flags_entry::set_nofastint_option, cdir_switch_entry::shared_list_idx, cdir_switch_entry::shortloop, cdir_switch_entry::shortloop128, cdir_switch_entry::split, opt_flags_entry::split_lvl, Split_Lvl_2, cdir_switch_entry::stream, opt_flags_entry::stream_lvl, Stream_Lvl_1, id_str_entry::string, cdir_switch_entry::task, opt_flags_entry::task_lvl, Task_Lvl_0, TRACE, TRUE, TYP_CHAR_CLASS, TYP_FLD, TYP_IDX, TYP_LINEAR, TYP_TYPE, TYP_WORK_IDX, type_tbl, cdir_switch_entry::unroll_count_idx, cdir_switch_entry::unroll_dir, opt_flags_entry::unroll_lvl, Unroll_Lvl_2, cdir_switch_entry::vector, opt_flags_entry::vector_lvl, Vector_Lvl_0, cdir_switch_entry::vsearch, opt_flags_entry::vsearch, cdir_switch_entry::wait_list_idx, and id_str_entry::words.

Referenced by cvrt_to_pdg(), init_parse_prog_unit(), and semantics_pass_driver().

Here is the call graph for this function:

static boolean parse_assert_directive ( void  ) [static]

Definition at line 9518 of file p_directiv.c.

References After, ASSERT_ARGUMENTALIASING, ASSERT_BENIGN, ASSERT_BOUNDSVIOLATIONS, ASSERT_CONCURRENTCALL, ASSERT_DEPENDENCE, ASSERT_DO, ASSERT_DOPREFER, ASSERT_EQUIVALENCEHAZARD, ASSERT_FREQUENCY, ASSERT_IGNOREANYDEPENDENCE, ASSERT_IGNOREANYDEPENDENCES, ASSERT_IGNOREASSUMEDDEPENDENCE, ASSERT_IGNOREASSUMEDDEPENDENCES, ASSERT_LASTVALUENEEDED, ASSERT_LASTVALUESNEEDED, ASSERT_NOARGUMENTALIASING, ASSERT_NOBOUNDSVIOLATIONS, ASSERT_NOCONCURRENTCALL, ASSERT_NOEQUIVALENCEHAZARD, ASSERT_NOINTERCHANGE, ASSERT_NOLASTVALUENEEDED, ASSERT_NOLASTVALUESNEEDED, ASSERT_NORECURRENCE, ASSERT_NOSYNC, ASSERT_NOTEMPORARIESFORCONSTANTARGUMENTS, ASSERT_PERMUTATION, ASSERT_RELATION, Assert_Star_Opr, ASSERT_TEMPORARIESFORCONSTANTARGUMENTS, ASSERT_USECOMPRESS, ASSERT_USECONTROLLEDSTORE, ASSERT_USEEXPAND, ASSERT_USEGATHER, ASSERT_USESCATTER, AT_Tbl_Idx, C_INT_TO_CN, CG_INTEGER_DEFAULT_TYPE, CN_Tbl_Idx, COPY_OPND, copy_to_gl_subtree(), curr_gl_stmt_sh_idx, Directive_Stmt, directives_are_global, DOPREFER_CONCURRENT, DOPREFER_SERIAL, DOPREFER_VECTOR, Error, EXIT, FALSE, Find_EOS, find_opnd_line_and_column(), Func_Entry, Func_Exit, gen_directive_ir(), gen_gl_sh(), GL_SH_IR_IDX, IR_COL_NUM_L, IR_COL_NUM_R, IR_FLD_L, IR_FLD_R, IR_IDX_L, IR_IDX_R, IR_LINE_NUM_L, IR_LINE_NUM_R, IR_OPND_R, IR_Tbl_Idx, LA_CH_VALUE, LPAREN, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, NULL_IDX, OPND_FLD, parse_deref(), parse_err_flush(), parse_var_name_list(), PRINTMSG(), RPAREN, Tok_Class_Id, Tok_Class_SGI_Dir_Kwd, Tok_SGI_Dir_Argumentaliasing, Tok_SGI_Dir_Benign, Tok_SGI_Dir_Boundsviolations, Tok_SGI_Dir_Concur, Tok_SGI_Dir_Concurrent, Tok_SGI_Dir_Concurrentcall, Tok_SGI_Dir_Dependence, Tok_SGI_Dir_Do, Tok_SGI_Dir_Doprefer, Tok_SGI_Dir_Equivalencehazard, Tok_SGI_Dir_Frequency, Tok_SGI_Dir_Ignoreanydependence, Tok_SGI_Dir_Ignoreanydependences, Tok_SGI_Dir_Ignoreassumeddependence, Tok_SGI_Dir_Ignoreassumeddependences, Tok_SGI_Dir_Lastvalueneeded, Tok_SGI_Dir_Lastvaluesneeded, Tok_SGI_Dir_Noargumentaliasing, Tok_SGI_Dir_Noboundsviolations, Tok_SGI_Dir_Noconcurrentcall, Tok_SGI_Dir_Noequivalencehazard, Tok_SGI_Dir_Nointerchange, Tok_SGI_Dir_Nolastvalueneeded, Tok_SGI_Dir_Nolastvaluesneeded, Tok_SGI_Dir_Norecurrence, Tok_SGI_Dir_Nosync, Tok_SGI_Dir_Notemporariesforconstantarguments, Tok_SGI_Dir_Permutation, Tok_SGI_Dir_Relation, Tok_SGI_Dir_Serial, Tok_SGI_Dir_Temporariesforconstantarguments, Tok_SGI_Dir_Tile, Tok_SGI_Dir_Usecompress, Tok_SGI_Dir_Usecontrolledstore, Tok_SGI_Dir_Useexpand, Tok_SGI_Dir_Usegather, Tok_SGI_Dir_Usescatter, Tok_SGI_Dir_Vector, token, TOKEN_COLUMN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, and Warning.

Referenced by parse_star_directives().

Here is the call graph for this function:

static void parse_dir_directives ( void  ) [static]

Definition at line 3575 of file p_directiv.c.

References ADD_ATTR_TO_LOCAL_LIST, Align_Cdir_Opr, ASSERT_DOPREFER, Assert_Star_Opr, AT_DEFINED, AT_Tbl_Idx, ATL_DEF_STMT_IDX, ATL_NOTASK, ATL_NOVECTOR, ATP_HAS_TASK_DIRS, ATP_MAY_INLINE, ATP_PGM_UNIT, ATP_SAVE_ALL, ATP_STACK_DIR, ATP_SYMMETRIC, ATP_SYSTEM_MODULE, ATP_USES_EREGS, cdir_switch_entry::bl, Bl_Cdir_Opr, blk_stk_idx, BLK_TOP_LBL_IDX, BLK_TYPE, opt_flags_entry::bottom_load, cdir_switch_entry::bounds, Bounds_Cdir_Opr, C_INT_TO_CN, Cache_Bypass_Cdir_Opr, Cachealign_Cdir_Opr, Call_Opr, Call_Stmt, Caution, cdir_info, cdir_switches, CG_INTEGER_DEFAULT_TYPE, Character, CHARACTER_DEFAULT_TYPE, cif_directive_rec(), CIF_Eject, cif_flags, CIF_List, CIF_Nolist, CLEAR_TBL_NTRY, cmd_line_flags, CN_Tbl_Idx, Cncall_Cmic_Opr, COMMA, Common, Concurrent_Cdir_Opr, Const_Len_Char, COPY_OPND, create_lib_entry_attr(), CURR_BLK, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Cvrt_Opr, Dir_Integer_Stmt_Cat, cmd_line_flags_entry::disregard_all_mpp_cdirs, disregard_directive, Do_Blk, cdir_switch_entry::do_inline, DOPREFER_CONCURRENT, dump_flags, EOS, EOS_STR, EQUAL, Error, Executable_Stmt_Cat, EXIT, FALSE, Find_Comma, Find_EOS, cdir_switch_entry::flow, Func_Entry, Func_Exit, gen_directive_ir(), gen_internal_lbl(), glb_tbl_idx, IDENTICAL, IL_COL_NUM, IL_FLD, IL_IDX, IL_LINE_NUM, IL_Tbl_Idx, Inline_Cdir_Opr, opt_flags_entry::inline_lvl, Inline_Lvl_0, Integer_4, Interface_Blk, Interface_Body_Blk, IR_COL_NUM, IR_COL_NUM_L, IR_COL_NUM_R, IR_FLD_L, IR_FLD_R, IR_IDX_L, IR_IDX_R, IR_LINE_NUM, IR_LINE_NUM_L, IR_LINE_NUM_R, IR_LIST_CNT_L, IR_LIST_CNT_R, IR_OPND_L, IR_OPND_R, IR_OPR, IR_Tbl_Idx, IR_TYPE_IDX, Ivdep_Cdir_Opr, LA_CH_BUF_IDX, LA_CH_COLUMN, LA_CH_LINE, LA_CH_STMT_NUM, LA_CH_VALUE, LPAREN, MAIN_SCP_IDX, cdir_switch_entry::mark, opt_flags_entry::mark, Mark_Cdir_Opr, cdir_switch_entry::mark_cmdline_idx, MATCHED_TOKEN_CLASS, MISC_RECS, opt_flags_entry::modinline, Module, name, NEXT_LA_CH, Nextscalar_Cdir_Opr, NO_Tbl_Idx, Nobl_Cdir_Opr, Noblocking_Dir_Opr, Nobounds_Cdir_Opr, Noinline_Cdir_Opr, Nointerchange_Dir_Opr, Nomark_Cdir_Opr, Nopattern_Cdir_Opr, Norecurrence_Cdir_Opr, Nosplit_Cdir_Opr, Nostream_Dir_Opr, Notask_Cdir_Opr, cdir_switch_entry::notask_region, Nounroll_Cdir_Opr, Novector_Cdir_Opr, Novsearch_Cdir_Opr, ntr_const_tbl(), NTR_IR_LIST_TBL, NTR_IR_TBL, ntr_type_tbl(), NULL, NULL_IDX, Numcpus_Cmic_Opr, opt_flags, parse_auxiliary_dir(), parse_cache_align_name_list(), parse_cache_bypass_dir(), parse_cache_noalloc(), parse_common_dirs(), parse_copy_assumed_shape_dir(), parse_dir_var_list(), parse_err_flush(), parse_expr(), parse_id_directive(), parse_ignore_tkr(), parse_inline_always_never(), parse_name_dir(), parse_nosideeffects_dir(), parse_permutation_mic(), parse_star_dir_directives(), parse_symmetric_dir(), parse_var_name_list(), parse_vfunction_dir(), cdir_switch_entry::pattern, opt_flags_entry::pattern, Pattern_Cdir_Opr, Permutation_Cmic_Opr, cdir_switch_entry::preferstream, Preferstream_Dir_Opr, cdir_switch_entry::preferstream_nocinv, Preferstream_Nocinv_Dir_Opr, cdir_switch_entry::prefertask, Prefertask_Cdir_Opr, cdir_switch_entry::prefervector, Prefervector_Cdir_Opr, dump_flags_entry::preinline, PRINTMSG(), cdir_switch_entry::recurrence, opt_flags_entry::recurrence, Recurrence_Cdir_Opr, reset_lex(), RPAREN, opt_flags_entry::scalar_lvl, Scalar_Lvl_0, SCP_ATTR_IDX, SCP_COPY_ASSUMED_LIST, SCP_COPY_ASSUMED_SHAPE, SCP_DBG_PRINT_STMT, SCP_DBG_PRINT_SYTB, SCP_IGNORE_TKR, SCP_IMPL_NONE, Set_Numthreads_Attr_Idx, SET_NUMTHREADS_ENTRY, SET_NUMTHREADS_NAME_LEN, SH_STMT_TYPE, cdir_switch_entry::shortloop, cdir_switch_entry::shortloop128, Shortloop128_Cdir_Opr, Shortloop_Cdir_Opr, Split_Cdir_Opr, opt_flags_entry::split_lvl, Split_Lvl_0, stmt_start_col, stmt_start_line, cdir_switch_entry::stream, Stream_Dir_Opr, opt_flags_entry::stream_lvl, Stream_Lvl_0, Suppress_Opr, cdir_switch_entry::task, Task_Cdir_Opr, Task_Common, opt_flags_entry::task_lvl, Task_Lvl_0, Tok_Class_Dir_Kwd, Tok_Class_Id, Tok_Dbg_Stmt, Tok_Dbg_Sytb, Tok_Dir_Align, Tok_Dir_Atomicupdate, Tok_Dir_Auxiliary, Tok_Dir_Barrier, Tok_Dir_Bl, Tok_Dir_Blockable, Tok_Dir_Blockingsize, Tok_Dir_Bounds, Tok_Dir_Cache_Align, Tok_Dir_Cache_Bypass, Tok_Dir_Cache_Noalloc, Tok_Dir_Cncall, Tok_Dir_Common, Tok_Dir_Concurrent, Tok_Dir_Copy_Assumed_Shape, Tok_Dir_Critical, Tok_Dir_Doshared, Tok_Dir_Eject, Tok_Dir_End, Tok_Dir_Endcritical, Tok_Dir_Endmaster, Tok_Dir_Fixed, Tok_Dir_Flow, Tok_Dir_Free, Tok_Dir_Geometry, Tok_Dir_Id, Tok_Dir_Ignore_TKR, Tok_Dir_Inline, Tok_Dir_Inline_Always, Tok_Dir_Inline_Never, Tok_Dir_Interchange, Tok_Dir_Ivdep, Tok_Dir_List, Tok_Dir_Mark, Tok_Dir_Master, Tok_Dir_Maxcpus, Tok_Dir_Modinline, Tok_Dir_Name, Tok_Dir_Nextscalar, Tok_Dir_Nobarrier, Tok_Dir_Nobl, Tok_Dir_Noblocking, Tok_Dir_Nobounds, Tok_Dir_Nocinv, Tok_Dir_Noflow, Tok_Dir_Noinline, Tok_Dir_Nointerchange, Tok_Dir_Nolist, Tok_Dir_Nomark, Tok_Dir_Nomodinline, Tok_Dir_Nopattern, Tok_Dir_Norecurrence, Tok_Dir_Nosideeffects, Tok_Dir_Nosplit, Tok_Dir_Nostream, Tok_Dir_Notask, Tok_Dir_Nounroll, Tok_Dir_Novector, Tok_Dir_Novsearch, Tok_Dir_Numcpus, Tok_Dir_Parallel_Only, Tok_Dir_Pattern, Tok_Dir_Pe_Private, Tok_Dir_Pe_Resident, Tok_Dir_Permutation, Tok_Dir_Preferstream, Tok_Dir_Prefertask, Tok_Dir_Prefervector, Tok_Dir_Recurrence, Tok_Dir_Serial_Only, Tok_Dir_Shared, Tok_Dir_Shortloop, Tok_Dir_Split, Tok_Dir_Stack, Tok_Dir_Start, Tok_Dir_Stream, Tok_Dir_Suppress, Tok_Dir_Symmetric, Tok_Dir_System_Module, Tok_Dir_Task, Tok_Dir_Taskcommon, Tok_Dir_Unknown, Tok_Dir_Unknown_Shared, Tok_Dir_Unroll, Tok_Dir_Uses_Eregs, Tok_Dir_Vector, Tok_Dir_Vfunction, Tok_Dir_Vsearch, token, TOKEN_COLUMN, TOKEN_ID, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, TYP_CHAR_CLASS, TYP_FLD, TYP_IDX, TYP_LINEAR, TYP_TYPE, TYP_WORK_IDX, type_tbl, Unroll_Cdir_Opr, opt_flags_entry::unroll_lvl, Unroll_Lvl_0, cdir_switch_entry::vector, Vector_Cdir_Opr, opt_flags_entry::vector_lvl, Vector_Lvl_0, cdir_switch_entry::vsearch, opt_flags_entry::vsearch, Vsearch_Cdir_Opr, and Warning.

Referenced by parse_directive_stmt().

Here is the call graph for this function:

static void parse_dollar_directives ( void  ) [static]

Definition at line 5931 of file p_directiv.c.

References ATP_HAS_TASK_DIRS, C_INT_TO_CN, cdir_switches, CG_INTEGER_DEFAULT_TYPE, cdir_switch_entry::chunk_opnd, CN_Tbl_Idx, COMMA, COPY_OPND, Copyin_Dir, Copyin_Dollar_Opr, curr_scp_idx, curr_stmt_sh_idx, directive_region_error(), directives_are_global, disregard_mips, Doacross, Doacross_Dir, Doacross_Dollar_Opr, Doacross_Region, cdir_switch_entry::doacross_sh_idx, dump_flags_entry::dsm, dump_flags, Dynamic_Dollar_Opr, EOS, EQUAL, EXIT, FALSE, Find_EOS, Func_Entry, Func_Exit, gen_directive_ir(), global_schedtype_col, global_schedtype_line, global_schedtype_value, IL_NEXT_LIST_IDX, IL_OPND, IL_PREV_LIST_IDX, IL_Tbl_Idx, IR_COL_NUM, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LIST_CNT_L, IR_OPND_L, LA_CH_COLUMN, LA_CH_LINE, LA_CH_VALUE, LPAREN, MATCHED_TOKEN_CLASS, MP_SCHEDTYPE_DYNAMIC, MP_SCHEDTYPE_GUIDED, MP_SCHEDTYPE_INTERLEAVED, cdir_switch_entry::mp_schedtype_opnd, MP_SCHEDTYPE_RUNTIME, MP_SCHEDTYPE_SIMPLE, NEXT_LA_CH, NTR_IR_LIST_TBL, NULL, NULL_IDX, OPND_COL_NUM, OPND_FLD, OPND_IDX, OPND_LINE_NUM, Page_Place_Dollar_Opr, parse_deref(), parse_distribution_dir(), parse_err_flush(), parse_expr(), parse_mp_directive(), parse_redistribute_dir(), parse_var_common_list(), parse_var_name_list(), PRINTMSG(), RPAREN, SCP_ATTR_IDX, SET_DIRECTIVE_STATE, Tok_Class_Id, Tok_Class_SGI_Dir_Kwd, Tok_SGI_Dir_Chunk, Tok_SGI_Dir_Copyin, Tok_SGI_Dir_Distribute, Tok_SGI_Dir_Distribute_Reshape, Tok_SGI_Dir_Doacross, Tok_SGI_Dir_Dynamic, Tok_SGI_Dir_End, Tok_SGI_Dir_Gss, Tok_SGI_Dir_Guided, Tok_SGI_Dir_Interleave, Tok_SGI_Dir_Interleaved, Tok_SGI_Dir_Mp_Schedtype, Tok_SGI_Dir_Page_Place, Tok_SGI_Dir_Redistribute, Tok_SGI_Dir_Runtime, Tok_SGI_Dir_Simple, Tok_SGI_Dir_Start, Tok_SGI_Dir_Static, token, TOKEN_COLUMN, TOKEN_LINE, TRACE, TRUE, and Warning.

Referenced by parse_directive_stmt().

Here is the call graph for this function:

static void parse_id_directive ( void  ) [static]
static void parse_mic_directives ( void  ) [static]

Definition at line 4805 of file p_directiv.c.

References ADD_ATTR_TO_LOCAL_LIST, AT_Tbl_Idx, ATP_HAS_TASK_DIRS, BLK_IS_PARALLEL_REGION, blk_stk_idx, BLK_TYPE, Call_Opr, Call_Stmt, Case_Blk, Case_Cmic_Opr, Case_Region, cdir_switch_entry::casedir, Caution, cdir_switches, CLEAR_DIRECTIVE_STATE, CN_INTEGER_ONE_IDX, CN_Tbl_Idx, Cncall_Cmic_Opr, COMMA, COPY_OPND, create_lib_entry_attr(), CURR_BLK_FIRST_SH_IDX, curr_scp_idx, curr_stmt_sh_idx, Cvrt_Opr, disregard_mics, Do_Blk, cdir_switch_entry::do_parallel, Do_Parallel_Blk, Do_Parallel_Region, Doall_Blk, Doall_Cmic_Opr, Doall_Region, cdir_switch_entry::doall_sh_idx, cdir_switch_entry::dopar_sh_idx, Doparallel_Cmic_Opr, end_do_parallel_blk(), End_Do_Parallel_Stmt, end_guard_blk(), End_Guard_Stmt, end_parallel_blk(), end_parallel_case_blk(), End_Parallel_Case_Stmt, End_Parallel_Stmt, Endcase_Cmic_Opr, Enddo_Cmic_Opr, Endguard_Cmic_Opr, Endparallel_Cmic_Opr, EOS, EOS_STR, Error, FALSE, Find_Comma, Find_EOS, Func_Entry, Func_Exit, gen_directive_ir(), glb_tbl_idx, cdir_switch_entry::guard, Guard_Blk, Guard_Cmic_Opr, cdir_switch_entry::guard_has_flag, cdir_switch_entry::guard_in_par_reg, Guard_Region, IL_FLD, IL_IDX, IL_Tbl_Idx, Integer_4, IR_COL_NUM, IR_COL_NUM_L, IR_FLD_L, IR_FLD_R, IR_IDX_L, IR_IDX_R, IR_LINE_NUM, IR_LINE_NUM_L, IR_LIST_CNT_R, IR_OPND_L, IR_OPND_R, IR_OPR, IR_Tbl_Idx, IR_TYPE_IDX, LA_CH_COLUMN, LA_CH_LINE, LA_CH_VALUE, LINK_TO_PARENT_BLK, LPAREN, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NTR_IR_LIST_TBL, NTR_IR_TBL, NULL, NULL_IDX, null_opnd, Numcpus_Cmic_Opr, OPND_COL_NUM, OPND_FLD, OPND_IDX, OPND_LINE_NUM, Parallel_Blk, Parallel_Case_Blk, Parallel_Case_Stmt, Parallel_Cmic_Opr, Parallel_Region, cdir_switch_entry::parallel_region, parse_doall_cmic(), parse_doparallel_cmic(), parse_err_flush(), parse_expr(), parse_parallel_cmic(), parse_permutation_mic(), Permutation_Cmic_Opr, PRINTMSG(), PUSH_BLK_STK, remove_do_parallel_blk(), reset_lex(), RPAREN, SCP_ATTR_IDX, Send_Cmic_Opr, SET_DIRECTIVE_STATE, Set_Numthreads_Attr_Idx, SET_NUMTHREADS_ENTRY, SET_NUMTHREADS_NAME_LEN, SH_STMT_TYPE, stmt_type, Tok_Class_Mic_Kwd, Tok_Mic_Case, Tok_Mic_Cncall, Tok_Mic_Continue, Tok_Mic_Do_All, Tok_Mic_Do_Parallel, Tok_Mic_End, Tok_Mic_End_Case, Tok_Mic_End_Do, Tok_Mic_End_Guard, Tok_Mic_End_Parallel, Tok_Mic_Guard, Tok_Mic_If, Tok_Mic_Numcpus, Tok_Mic_Parallel, Tok_Mic_Permutation, Tok_Mic_Point, Tok_Mic_Send, Tok_Mic_Span, Tok_Mic_Start, Tok_Mic_Taskcommon, Tok_Mic_Wait, token, TOKEN_BUF_IDX, TOKEN_COLUMN, TOKEN_LINE, TOKEN_STMT_NUM, TRACE, TRUE, Wait_Cmic_Opr, and Warning.

Referenced by parse_directive_stmt().

Here is the call graph for this function:

static void parse_mp_directive ( mp_directive_type  directive) [static]

Definition at line 7142 of file p_directiv.c.

References Affinity_Clause, AT_Tbl_Idx, Blocked_Clause, C_INT_TO_CN, cdir_switches, CG_INTEGER_DEFAULT_TYPE, Chunk_Clause, cdir_switch_entry::chunk_opnd, clause_allowed, CN_INTEGER_ONE_IDX, CN_INTEGER_ZERO_IDX, CN_Tbl_Idx, COMMA, COPY_OPND, curr_stmt_sh_idx, dump_flags_entry::dsm, dump_flags, EOS, EQUAL, Error, EXIT, FALSE, Find_EOS, find_opnd_line_and_column(), Find_Rparen, Func_Entry, Func_Exit, If_Clause, IL_COL_NUM, IL_FLD, IL_IDX, IL_LINE_NUM, IL_LIST_CNT, IL_NEXT_LIST_IDX, IL_OPND, IL_PREV_LIST_IDX, IL_Tbl_Idx, IR_FLD_L, IR_IDX_L, IR_LIST_CNT_L, LA_CH_VALUE, Lastlocal_Clause, Lastthread_Clause, Local_Clause, LPAREN, MATCHED_TOKEN_CLASS, Mode_Clause, MP_DIR_AFFINITY_IDX, MP_DIR_CHUNK_IDX, MP_DIR_IF_IDX, MP_DIR_IS_THREAD_IDX, MP_DIR_LASTLOCAL_IDX, MP_DIR_LASTTHREAD_IDX, MP_DIR_LIST_CNT, MP_DIR_LOCAL_IDX, MP_DIR_MP_SCHEDTYPE_IDX, MP_DIR_NEST_IDX, MP_DIR_ONTO_IDX, MP_DIR_ORDERED_IDX, MP_DIR_REDUCTION_IDX, MP_DIR_SHARE_IDX, mp_dir_str, MP_DIR_THREAD_DATA_IDX, Mp_Schedtype_Clause, MP_SCHEDTYPE_DYNAMIC, MP_SCHEDTYPE_GUIDED, MP_SCHEDTYPE_INTERLEAVED, cdir_switch_entry::mp_schedtype_opnd, MP_SCHEDTYPE_RUNTIME, MP_SCHEDTYPE_SIMPLE, Nest_Clause, NEXT_LA_CH, NO_Tbl_Idx, NTR_IR_LIST_TBL, NULL, NULL_IDX, null_opnd, Onto_Clause, OPND_FLD, OPND_IDX, OPND_LIST_CNT, Ordered_Clause, parse_deref(), parse_err_flush(), parse_expr(), parse_int_or_star_list(), parse_reference_list(), parse_var_name_list(), PRINTMSG(), Reduction_Clause, RPAREN, SH_IR_IDX, Share_Clause, Tok_Class_Id, Tok_Class_SGI_Dir_Kwd, Tok_SGI_Dir_Affinity, Tok_SGI_Dir_Blocked, Tok_SGI_Dir_Chunk, Tok_SGI_Dir_Data, Tok_SGI_Dir_Dynamic, Tok_SGI_Dir_Gss, Tok_SGI_Dir_Guided, Tok_SGI_Dir_If, Tok_SGI_Dir_Interleave, Tok_SGI_Dir_Interleaved, Tok_SGI_Dir_Lastlocal, Tok_SGI_Dir_Lastthread, Tok_SGI_Dir_Local, Tok_SGI_Dir_Mp_Schedtype, Tok_SGI_Dir_Nest, Tok_SGI_Dir_Onto, Tok_SGI_Dir_Ordered, Tok_SGI_Dir_Private, Tok_SGI_Dir_Reduction, Tok_SGI_Dir_Runtime, Tok_SGI_Dir_Share, Tok_SGI_Dir_Shared, Tok_SGI_Dir_Simple, Tok_SGI_Dir_Static, Tok_SGI_Dir_Thread, token, TOKEN_COLUMN, TOKEN_LINE, TRACE, and TRUE.

Referenced by parse_dollar_directives(), and parse_par_directives().

Here is the call graph for this function:

static void parse_open_mp_clauses ( open_mp_directive_type  directive) [static]

Definition at line 11061 of file p_directiv.c.

References Affinity_Omp_Clause, And_Opr, Band_Opr, Bneqv_Opr, Bor_Opr, C_INT_TO_CN, cdir_switches, CG_INTEGER_DEFAULT_TYPE, Ch_Class_Letter, CN_INTEGER_ONE_IDX, CN_INTEGER_ZERO_IDX, CN_Tbl_Idx, COLON, COMMA, COPY_OPND, Copyin_Omp_Clause, Copyprivate_Omp_Clause, curr_stmt_sh_idx, Default_Omp_Clause, dump_flags_entry::dsm, dump_flags, EOS, EQUAL, Eqv_Opr, Error, EXIT, FALSE, Find_EOS, find_opnd_line_and_column(), Firstprivate_Omp_Clause, Flush_Omp_Clause, Func_Entry, Func_Exit, If_Omp_Clause, IL_COL_NUM, IL_FLD, IL_IDX, IL_LINE_NUM, IL_LIST_CNT, IL_NEXT_LIST_IDX, IL_OPND, IL_PREV_LIST_IDX, IL_Tbl_Idx, INTEGER_DEFAULT_TYPE, IR_COL_NUM, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LIST_CNT_L, IR_OPR, IR_Tbl_Idx, IR_TYPE_IDX, LA_CH_CLASS, LA_CH_COLUMN, LA_CH_LINE, LA_CH_VALUE, Lastprivate_Omp_Clause, LPAREN, MATCHED_TOKEN_CLASS, Max_Opr, Min_Opr, Minus_Opr, cdir_switch_entry::mp_schedtype_opnd, Mult_Opr, Neqv_Opr, Nest_Omp_Clause, NEXT_LA_CH, NO_Tbl_Idx, NTR_IR_LIST_TBL, NTR_IR_TBL, NULL, NULL_IDX, null_opnd, omp_extension_prefix(), Onto_Omp_Clause, OPEN_MP_AFFINITY_IDX, open_mp_clause_allowed, OPEN_MP_COPYIN_IDX, OPEN_MP_COPYPRIVATE_IDX, OPEN_MP_DEFAULT_IDX, OPEN_MP_DEFAULT_NONE, OPEN_MP_DEFAULT_PRIVATE, OPEN_MP_DEFAULT_SHARED, open_mp_dir_str, OPEN_MP_FIRSTPRIVATE_IDX, OPEN_MP_FLUSH_IDX, OPEN_MP_IF_IDX, OPEN_MP_IS_THREAD_IDX, OPEN_MP_LASTPRIVATE_IDX, OPEN_MP_LIST_CNT, OPEN_MP_NEST_IDX, OPEN_MP_ONTO_IDX, OPEN_MP_ORDERED_IDX, OPEN_MP_PRIVATE_IDX, OPEN_MP_REDUCTION_LIST_IDX, OPEN_MP_REDUCTION_OPR_IDX, OPEN_MP_SCHEDULE_CHUNK_IDX, OPEN_MP_SCHEDULE_DYNAMIC, OPEN_MP_SCHEDULE_GUIDED, OPEN_MP_SCHEDULE_RUNTIME, OPEN_MP_SCHEDULE_STATIC, OPEN_MP_SCHEDULE_TYPE_IDX, OPEN_MP_SHARED_IDX, OPEN_MP_THREAD_DATA_IDX, OPND_FLD, OPND_IDX, OPND_LIST_CNT, Or_Opr, Ordered_Omp_Clause, parse_err_flush(), parse_expr(), parse_int_or_star_list(), parse_var_common_list(), parse_var_name_list(), Plus_Opr, PRINTMSG(), Private_Omp_Clause, Reduction_Omp_Clause, RPAREN, Schedule_Omp_Clause, SH_IR_IDX, Shared_Omp_Clause, Tok_Class_Id, Tok_Class_Op, Tok_Class_Open_Mp_Dir_Kwd, Tok_Op_Add, Tok_Op_And, Tok_Op_Eqv, Tok_Op_Mult, Tok_Op_Neqv, Tok_Op_Or, Tok_Op_Sub, Tok_Open_Mp_Dir_Affinity, Tok_Open_Mp_Dir_Copyin, Tok_Open_Mp_Dir_Copyprivate, Tok_Open_Mp_Dir_Data, Tok_Open_Mp_Dir_Default, Tok_Open_Mp_Dir_Dynamic, Tok_Open_Mp_Dir_Firstprivate, Tok_Open_Mp_Dir_Flush, Tok_Open_Mp_Dir_Guided, Tok_Open_Mp_Dir_If, Tok_Open_Mp_Dir_Lastprivate, Tok_Open_Mp_Dir_Nest, Tok_Open_Mp_Dir_None, Tok_Open_Mp_Dir_Onto, Tok_Open_Mp_Dir_Ordered, Tok_Open_Mp_Dir_Private, Tok_Open_Mp_Dir_Reduction, Tok_Open_Mp_Dir_Runtime, Tok_Open_Mp_Dir_Schedule, Tok_Open_Mp_Dir_Shared, Tok_Open_Mp_Dir_Static, Tok_Open_Mp_Dir_Thread, token, TOKEN_COLUMN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, and Warning.

Referenced by parse_open_mp_directives().

Here is the call graph for this function:

static void parse_open_mp_directives ( void  ) [static]

Definition at line 10142 of file p_directiv.c.

References Atomic_Open_Mp_Dir, Atomic_Open_Mp_Opr, ATP_HAS_TASK_DIRS, Barrier_Open_Mp_Dir, Barrier_Open_Mp_Opr, BLK_IS_PARALLEL_REGION, blk_stk_idx, C_INT_TO_CN, cdir_switches, CG_INTEGER_DEFAULT_TYPE, Character, CHARACTER_DEFAULT_TYPE, check_do_open_mp_nesting(), check_ordered_open_mp_nesting(), check_section_open_mp_context(), CLEAR_DIRECTIVE_STATE, CLEAR_TBL_NTRY, CN_CONST, CN_INTEGER_ONE_IDX, CN_Tbl_Idx, COMMA, Const_Len_Char, COPY_OPND, Critical_Open_Mp_Dir, Critical_Open_Mp_Opr, CURR_BLK, CURR_BLK_FIRST_SH_IDX, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Default_Typed, Dir_Integer_Stmt_Cat, directive_region_error(), disregard_open_mp, Do_Omp, cdir_switch_entry::do_omp_sh_idx, Do_Open_Mp_Dir, Do_Open_Mp_Opr, dump_flags_entry::dsm, dump_flags, Dynamic_Dollar_Opr, end_open_mp_critical_blk(), end_open_mp_do_blk(), end_open_mp_master_blk(), end_open_mp_ordered_blk(), end_open_mp_parallel_blk(), end_open_mp_parallel_do_blk(), end_open_mp_parallel_sections_blk(), end_open_mp_parallel_workshare_blk(), end_open_mp_section_blk(), end_open_mp_sections_blk(), end_open_mp_single_blk(), end_open_mp_workshare_blk(), End_Single_Omp, Endcritical_Open_Mp_Dir, Endcritical_Open_Mp_Opr, Enddo_Open_Mp_Dir, Enddo_Open_Mp_Opr, Endmaster_Open_Mp_Dir, Endmaster_Open_Mp_Opr, Endordered_Open_Mp_Dir, Endordered_Open_Mp_Opr, Endparallel_Open_Mp_Dir, Endparallel_Open_Mp_Opr, Endparalleldo_Open_Mp_Dir, Endparalleldo_Open_Mp_Opr, Endparallelsections_Open_Mp_Dir, Endparallelsections_Open_Mp_Opr, Endparallelworkshare_Open_Mp_Dir, Endparallelworkshare_Open_Mp_Opr, Endsections_Open_Mp_Dir, Endsections_Open_Mp_Opr, Endsingle_Open_Mp_Dir, Endsingle_Open_Mp_Opr, Endworkshare_Open_Mp_Dir, Endworkshare_Open_Mp_Opr, EOS, EOS_STR, Error, Executable_Stmt_Cat, EXIT, FALSE, Find_EOS, Flush_Omp, Flush_Open_Mp_Dir, Flush_Open_Mp_Opr, FREE_IR_NODE, FREE_SH_NODE, Func_Entry, Func_Exit, gen_directive_ir(), IL_NEXT_LIST_IDX, IL_OPND, IL_PREV_LIST_IDX, IL_Tbl_Idx, IR_COL_NUM, IR_COL_NUM_L, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LINE_NUM_L, IR_LIST_CNT_L, IR_OPND_L, IR_OPND_R, IR_OPR, LA_CH_VALUE, LINK_TO_PARENT_BLK, LPAREN, Master_Open_Mp_Dir, Master_Open_Mp_Opr, MATCHED_TOKEN_CLASS, NEXT_LA_CH, ntr_const_tbl(), NTR_IR_LIST_TBL, ntr_type_tbl(), NULL, NULL_IDX, omp_extension_prefix(), Open_Mp_Critical_Blk, Open_Mp_Critical_Region, Open_Mp_Do_Region, Open_MP_End_Critical_Stmt, Open_MP_End_Do_Stmt, Open_MP_End_Master_Stmt, Open_MP_End_Ordered_Stmt, Open_MP_End_Parallel_Do_Stmt, Open_MP_End_Parallel_Sections_Stmt, Open_MP_End_Parallel_Stmt, Open_MP_End_Parallel_Workshare_Stmt, Open_MP_End_Sections_Stmt, Open_MP_End_Single_Stmt, Open_MP_End_Workshare_Stmt, Open_Mp_Master_Blk, Open_Mp_Master_Region, Open_Mp_Ordered_Blk, Open_Mp_Ordered_Region, Open_Mp_Parallel_Blk, Open_Mp_Parallel_Do_Region, Open_Mp_Parallel_Region, Open_Mp_Parallel_Sections_Blk, Open_Mp_Parallel_Sections_Region, Open_Mp_Parallel_Workshare_Blk, Open_Mp_Parallel_Workshare_Region, Open_Mp_Section_Blk, Open_Mp_Section_Region, Open_Mp_Sections_Blk, Open_Mp_Sections_Region, Open_Mp_Single_Blk, Open_Mp_Single_Region, Open_Mp_Workshare_Blk, Open_Mp_Workshare_Region, Ordered_Open_Mp_Dir, Ordered_Open_Mp_Opr, Page_Place_Dollar_Opr, Parallel_Do_Omp, Parallel_Omp, Parallel_Open_Mp_Dir, Parallel_Open_Mp_Opr, Parallel_Sections_Omp, Parallel_Workshare_Omp, cdir_switch_entry::paralleldo_omp_sh_idx, Paralleldo_Open_Mp_Dir, Paralleldo_Open_Mp_Opr, Parallelsections_Open_Mp_Dir, Parallelsections_Open_Mp_Opr, Parallelworkshare_Open_Mp_Dir, Parallelworkshare_Open_Mp_Opr, parse_deref(), parse_distribution_dir(), parse_err_flush(), parse_expr(), parse_open_mp_clauses(), parse_redistribute_dir(), parse_slash_common_dirs(), parse_var_name_list(), PRINTMSG(), PUSH_BLK_STK, reset_lex(), RPAREN, SCP_ATTR_IDX, Section_Open_Mp_Dir, Section_Open_Mp_Opr, Sections_Omp, Sections_Open_Mp_Dir, Sections_Open_Mp_Opr, SET_DIRECTIVE_STATE, SH_COMPILER_GEN, SH_IR_IDX, SH_NEXT_IDX, SH_PREV_IDX, SH_STMT_TYPE, Single_Omp, Single_Open_Mp_Dir, Single_Open_Mp_Opr, stmt_type, strcpy, Tok_Class_Id, Tok_Class_Open_Mp_Dir_Kwd, Tok_Open_Mp_Dir_Atomic, Tok_Open_Mp_Dir_Barrier, Tok_Open_Mp_Dir_Critical, Tok_Open_Mp_Dir_Distribute, Tok_Open_Mp_Dir_Distribute_Reshape, Tok_Open_Mp_Dir_Do, Tok_Open_Mp_Dir_Dynamic, Tok_Open_Mp_Dir_End, Tok_Open_Mp_Dir_Endcritical, Tok_Open_Mp_Dir_Enddo, Tok_Open_Mp_Dir_Endmaster, Tok_Open_Mp_Dir_Endordered, Tok_Open_Mp_Dir_Endparallel, Tok_Open_Mp_Dir_Endparalleldo, Tok_Open_Mp_Dir_Endparallelsections, Tok_Open_Mp_Dir_Endparallelworkshare, Tok_Open_Mp_Dir_Endsections, Tok_Open_Mp_Dir_Endsingle, Tok_Open_Mp_Dir_Endworkshare, Tok_Open_Mp_Dir_Flush, Tok_Open_Mp_Dir_Master, Tok_Open_Mp_Dir_Nowait, Tok_Open_Mp_Dir_Ordered, Tok_Open_Mp_Dir_Page_Place, Tok_Open_Mp_Dir_Parallel, Tok_Open_Mp_Dir_Paralleldo, Tok_Open_Mp_Dir_Parallelsections, Tok_Open_Mp_Dir_Parallelworkshare, Tok_Open_Mp_Dir_Redistribute, Tok_Open_Mp_Dir_Section, Tok_Open_Mp_Dir_Sections, Tok_Open_Mp_Dir_Single, Tok_Open_Mp_Dir_Start, Tok_Open_Mp_Dir_Threadprivate, Tok_Open_Mp_Dir_Workshare, token, TOKEN_BUF_IDX, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STMT_NUM, TOKEN_STR, TRACE, TRUE, TYP_CHAR_CLASS, TYP_DESC, TYP_FLD, TYP_IDX, TYP_LINEAR, TYP_TYPE, TYP_WORK_IDX, type_tbl, Warning, Workshare_Open_Mp_Dir, and Workshare_Open_Mp_Opr.

Referenced by parse_directive_stmt().

Here is the call graph for this function:

static void parse_openad_varlist ( token_values_type  tok) [static]

Definition at line 12497 of file p_directiv.c.

References COPY_OPND, curr_stmt_sh_idx, EOS, EXIT, Find_EOS, Func_Entry, Func_Exit, IR_OPND_L, LA_CH_VALUE, LPAREN, NEXT_LA_CH, NULL, parse_err_flush(), parse_var_name_list(), RPAREN, SH_IR_IDX, and TRACE.

Referenced by parse_openad_directives().

Here is the call graph for this function:

static void parse_par_directives ( void  ) [static]

Definition at line 5553 of file p_directiv.c.

References ATP_HAS_TASK_DIRS, Barrier_Dir, Barrier_Par_Opr, BLK_IS_PARALLEL_REGION, blk_stk_idx, cdir_switches, CLEAR_DIRECTIVE_STATE, CN_INTEGER_ONE_IDX, CN_INTEGER_ZERO_IDX, CN_Tbl_Idx, COPY_OPND, Critical_Section_Dir, Critical_Section_Par_Opr, Critical_Section_Region, CURR_BLK, CURR_BLK_FIRST_SH_IDX, curr_scp_idx, curr_stmt_sh_idx, directive_region_error(), disregard_mips, end_critical_section_blk(), End_Critical_Section_Dir, End_Critical_Section_Par_Opr, End_Parallel_Par_Opr, end_pdo_blk(), End_Pdo_Dir, End_Pdo_Par_Opr, end_psection_blk(), End_Psection_Dir, End_Psection_Par_Opr, end_SGI_parallel_blk(), end_single_process_blk(), End_Single_Process_Dir, End_Singleprocess_Par_Opr, EOS, EOS_STR, EXIT, FALSE, Find_EOS, Find_Rparen, FREE_IR_NODE, FREE_SH_NODE, Func_Entry, Func_Exit, gen_directive_ir(), IR_COL_NUM, IR_COL_NUM_L, IR_FLD_L, IR_IDX_L, IR_LINE_NUM, IR_LINE_NUM_L, IR_OPND_L, IR_OPND_R, IR_OPR, LA_CH_COLUMN, LA_CH_LINE, LA_CH_VALUE, LINK_TO_PARENT_BLK, LPAREN, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NULL, NULL_IDX, Parallel, Parallel_Do, Parallel_Do_Dir, Parallel_Do_Par_Opr, Parallel_Do_Region, Parallel_Par_Opr, Parallel_Section_Region, cdir_switch_entry::paralleldo_sh_idx, parse_deref(), parse_err_flush(), parse_mp_directive(), Pdo, Pdo_Dir, Pdo_Par_Opr, Pdo_Region, cdir_switch_entry::pdo_sh_idx, PRINTMSG(), Psection, Psection_Dir, Psection_Par_Opr, PUSH_BLK_STK, remove_pdo_blk(), RPAREN, SCP_ATTR_IDX, Section_Dir, Section_Par_Opr, SET_DIRECTIVE_STATE, SGI_Critical_Section_Blk, SGI_End_Critical_Section_Stmt, Sgi_End_Parallel_Dir, SGI_End_Parallel_Stmt, SGI_End_Pdo_Stmt, SGI_End_Psection_Stmt, SGI_End_Single_Process_Stmt, SGI_Parallel_Blk, Sgi_Parallel_Dir, Sgi_Parallel_Region, SGI_Psection_Blk, SGI_Section_Blk, SGI_Section_Stmt, SGI_Single_Process_Blk, SH_COMPILER_GEN, SH_IR_IDX, SH_NEXT_IDX, SH_PREV_IDX, SH_STMT_TYPE, Single_Process_Dir, Single_Process_Region, Singleprocess, Singleprocess_Par_Opr, stmt_type, Tok_Class_Id, Tok_Class_SGI_Dir_Kwd, Tok_SGI_Dir_Barrier, Tok_SGI_Dir_Criticalsection, Tok_SGI_Dir_End, Tok_SGI_Dir_Endcriticalsection, Tok_SGI_Dir_Endparallel, Tok_SGI_Dir_Endpdo, Tok_SGI_Dir_Endpsection, Tok_SGI_Dir_Endpsections, Tok_SGI_Dir_Endsingleprocess, Tok_SGI_Dir_Nowait, Tok_SGI_Dir_Parallel, Tok_SGI_Dir_Paralleldo, Tok_SGI_Dir_Pdo, Tok_SGI_Dir_Psection, Tok_SGI_Dir_Psections, Tok_SGI_Dir_Section, Tok_SGI_Dir_Singleprocess, Tok_SGI_Dir_Start, token, TOKEN_COLUMN, TOKEN_LINE, TRACE, TRUE, and Warning.

Referenced by parse_directive_stmt().

Here is the call graph for this function:

static void parse_sgi_dir_inline ( boolean  turn_on) [static]

Definition at line 8653 of file p_directiv.c.

References AT_ATTR_LINK, AT_DEF_COLUMN, AT_DEF_LINE, AT_ELEMENTAL_INTRIN, AT_IS_INTRIN, AT_NAME_IDX, AT_NAME_LEN, AT_OBJ_CLASS, AT_OBJ_NAME_PTR, AT_Tbl_Idx, ATI_FIRST_SPECIFIC_IDX, ATI_IPA_DIR_SPECIFIED, ATI_SGI_ROUTINE_INLINE, ATI_SGI_ROUTINE_NOINLINE, ATP_PGM_UNIT, ATP_PROC, ATP_SCP_IDX, ATP_SGI_GLOBAL_INLINE, ATP_SGI_GLOBAL_NOINLINE, ATP_SGI_ROUTINE_INLINE, ATP_SGI_ROUTINE_NOINLINE, cdir_switches, chg_data_obj_to_pgm_unit(), COMMA, complete_intrinsic_definition(), COPY_VARIANT_ATTR_INFO, curr_scp_idx, Data_Obj, EOS, EOS_STR, Error, EXIT, FALSE, Find_EOS, fnd_semantic_err(), Func_Entry, Func_Exit, gen_directive_ir(), IL_COL_NUM, IL_FLD, IL_IDX, IL_LINE_NUM, IL_NEXT_LIST_IDX, IL_PREV_LIST_IDX, IL_Tbl_Idx, inline_global_sgi, Inline_Global_Star_Opr, cdir_switch_entry::inline_here_sgi, Inline_Here_Star_Opr, Inline_Routine_Star_Opr, Interface, IR_FLD_L, IR_IDX_L, IR_LIST_CNT_L, LA_CH_VALUE, LN_DEF_LOC, LPAREN, MAKE_EXTERNAL_NAME, MATCHED_TOKEN_CLASS, NEXT_LA_CH, NO_Tbl_Idx, noinline_global_sgi, Noinline_Global_Star_Opr, Noinline_Here_Star_Opr, Noinline_Routine_Star_Opr, ntr_host_in_sym_tbl(), NTR_IR_LIST_TBL, ntr_sym_tbl(), NULL, NULL_IDX, Obj_Inline, Obj_Ipa, parse_err_flush(), Pgm_Unit, Pgm_Unknown, PRINTMSG(), RPAREN, SCP_INLINE_SGI, SCP_NOINLINE_SGI, srch_host_sym_tbl(), srch_sym_tbl(), Tok_Class_Id, Tok_Class_SGI_Dir_Kwd, Tok_SGI_Dir_Global, Tok_SGI_Dir_Here, Tok_SGI_Dir_Inline, Tok_SGI_Dir_Noinline, Tok_SGI_Dir_Routine, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, and Unknown_Proc.

Referenced by parse_star_directives().

Here is the call graph for this function:

static void parse_star_directives ( void  ) [static]

Definition at line 6211 of file p_directiv.c.

References After, Aggressiveinnerloopfission_Opr, Align_Symbol_Star_Opr, AT_ATTR_LINK, AT_NAME_IDX, AT_NAME_LEN, AT_OBJ_CLASS, AT_REFERENCED, AT_Tbl_Idx, ATP_OPTIONAL_DIR, ATP_PROC, ATP_SCP_IDX, Char_Rslt_Bound_Ref, chg_data_obj_to_pgm_unit(), CLEAR_DIRECTIVE_STATE, CN_INTEGER_ONE_IDX, CN_INTEGER_TWO_IDX, CN_INTEGER_ZERO_IDX, CN_Tbl_Idx, COMMA, Concurrentize_Star_Opr, COPY_OPND, copy_to_gl_subtree(), CURR_BLK_FIRST_SH_IDX, curr_gl_stmt_sh_idx, curr_scp_idx, curr_stmt_category, curr_stmt_sh_idx, Data_Obj, Dir_Integer_Stmt_Cat, directive_region_error(), Directive_Stmt, directives_are_global, disregard_mips, end_region_blk(), EOS, EQUAL, Error, Executable_Stmt_Cat, EXIT, Extern_Proc, FALSE, Fill_Symbol_Star_Opr, Find_EOS, find_opnd_line_and_column(), Fission_Star_Opr, Fissionable_Star_Opr, Flush_Star_Opr, fnd_semantic_err(), Func_Entry, Func_Exit, Function, Fusable_Star_Opr, Fuse_Star_Opr, gen_directive_ir(), gen_gl_sh(), GL_SH_IR_IDX, IR_COL_NUM, IR_COL_NUM_L, IR_COL_NUM_R, IR_FLD_L, IR_FLD_R, IR_IDX_L, IR_IDX_R, IR_LINE_NUM, IR_LINE_NUM_L, IR_LINE_NUM_R, IR_OPND_L, IR_OPND_R, IR_Tbl_Idx, LA_CH_COLUMN, LA_CH_LINE, LA_CH_VALUE, LINK_TO_PARENT_BLK, LN_DEF_LOC, LPAREN, MAKE_EXTERNAL_NAME, MATCHED_TOKEN_CLASS, NEXT_LA_CH, Noblocking_Dir_Opr, Noconcurrentize_Star_Opr, Nofission_Star_Opr, Nofusion_Star_Opr, Nointerchange_Dir_Opr, ntr_sym_tbl(), NULL, NULL_IDX, Obj_Optional_Dir, Opaque_Dir, Opaque_Star_Opr, OPND_FLD, Optional_Dir, parse_assert_directive(), parse_deref(), parse_err_flush(), parse_expr(), parse_fill_align_symbol(), parse_prefetch_ref(), parse_sgi_dir_inline(), parse_star_dir_directives(), parse_var_common_list(), parse_var_name_list(), Pgm_Unit, Prefetch_Manual_Star_Opr, Prefetch_Ref_Disable_Star_Opr, Prefetch_Ref_Star_Opr, Prefetch_Star_Opr, PRINTMSG(), PurpleConditional_Dir, Purpleconditional_Star_Opr, PurpleUnconditional_Dir, Purpleunconditional_Star_Opr, PUSH_BLK_STK, Region_Region, Regionbegin_Dir, Regionbegin_Star_Opr, Regionend_Dir, Regionend_Star_Opr, RPAREN, save_column_num, Section_Gp_Star_Opr, Section_Nongp_Star_Opr, SET_DIRECTIVE_STATE, SGI_Region_Blk, SGI_Region_End_Stmt, SH_STMT_TYPE, srch_sym_tbl(), stmt_type, Tok_Class_Id, Tok_Class_SGI_Dir_Kwd, Tok_SGI_Dir_Aggressiveinner, Tok_SGI_Dir_Align_Symbol, Tok_SGI_Dir_Assert, Tok_SGI_Dir_Blockable, Tok_SGI_Dir_Blockingsize, Tok_SGI_Dir_Concurrentize, Tok_SGI_Dir_End, Tok_SGI_Dir_Fill_Symbol, Tok_SGI_Dir_Fission, Tok_SGI_Dir_Fissionable, Tok_SGI_Dir_Flush, Tok_SGI_Dir_Fusable, Tok_SGI_Dir_Fuse, Tok_SGI_Dir_Inline, Tok_SGI_Dir_Interchange, Tok_SGI_Dir_Ipa, Tok_SGI_Dir_Limit, Tok_SGI_Dir_Minconcurrent, Tok_SGI_Dir_Noblocking, Tok_SGI_Dir_Noconcurrentize, Tok_SGI_Dir_Nofission, Tok_SGI_Dir_Nofusion, Tok_SGI_Dir_Noinline, Tok_SGI_Dir_Nointerchange, Tok_SGI_Dir_Noipa, Tok_SGI_Dir_Opaque, Tok_SGI_Dir_Optional, Tok_SGI_Dir_Prefetch, Tok_SGI_Dir_Prefetch_Manual, Tok_SGI_Dir_Prefetch_Ref, Tok_SGI_Dir_Prefetch_Ref_Disable, Tok_SGI_Dir_Purpleconditional, Tok_SGI_Dir_Purpleunconditional, Tok_SGI_Dir_Regionbegin, Tok_SGI_Dir_Regionend, Tok_SGI_Dir_Section_Gp, Tok_SGI_Dir_Section_Non_Gp, Tok_SGI_Dir_Size, Tok_SGI_Dir_Start, Tok_SGI_Dir_Unroll, token, TOKEN_COLUMN, TOKEN_LEN, TOKEN_LINE, TOKEN_STR, TRACE, TRUE, Unroll_Star_Opr, and Warning.

Referenced by parse_directive_stmt().

Here is the call graph for this function:


Variable Documentation

char USMID[] = "\n@(#)5.0_pl/sources/p_directiv.c 5.12 10/12/99 10:54:10\n" [static]

Definition at line 37 of file p_directiv.c.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines