#include "defs.h"#include "glob.h"#include "stab.h"#include "strtab.h"#include "errors.h"#include "targ_const.h"#include "config_targ.h"#include "const.h"#include "pu_info.h"#include "wn.h"#include "wn_util.h"#include "f90_utils.h"#include "targ_sim.h"#include "i_cvrt.h"#include "cwh_defines.h"#include "cwh_addr.h"#include "cwh_expr.h"#include "cwh_stk.h"#include "cwh_block.h"#include "cwh_types.h"#include "cwh_preg.h"#include "cwh_stab.h"#include "cwh_auxst.h"#include "cwh_stmt.h"#include "cwh_directive.h"#include "cwh_directive.i"
Go to the source code of this file.
Functions | |
| INTPTR | fei_task_var (INTPTR sym_idx, INT32 context) |
| static WN * | cwh_region (REGION_KIND kind) |
| WN * | cwh_mp_region (WN_PRAGMA_ID wn_pragma_id, int threadcount, int datacount, int ontocount, int reductioncount, int chunkcount, int is_omp) |
| int | fei_parallel_region (INT32 ifexpr, INT32 maxcpus, INT32 context_start, INT32 context_end, INT32 lineno, INT32 flags) |
| void | fei_endparallel_region (INT32 task_x, INT32 lineno) |
| int | fei_doparallel (INT32 induc_symx, INT32 work_dist, INT32 work_dist_opnd, INT32 lineno) |
| void | fei_task_endloop (INT32 taskloop_x, INT32 lineno, INT32 nowait) |
| void | fei_doall (INT32 ifexpr, INT32 maxcpus, INT32 context_start, INT32 context_end, INT32 induc_symx, INT32 work_dist, INT32 work_dist_opnd, INT32 flags, INT32 lineno) |
| static void | cwh_doacross (int task_if_idx, int schedtype, int threadcount, int datacount, int ontocount, int reductioncount, int chunkcount, WN_PRAGMA_ID pragma_id, int is_omp) |
| void | fei_doacross (int task_if_idx, int schedtype, int threadcount, int datacount, int ontocount, int reductioncount, int chunkcount) |
| void | fei_paralleldo (int task_if_idx, int schedtype, int threadcount, int datacount, int ontocount, int reductioncount, int chunkcount) |
| static void | cwh_parallel (int task_if_idx, int defaultt, int is_omp) |
| void | fei_parallel (int task_if_idx) |
| void | fei_endparallel (void) |
| void | fei_pdo (int sched_type, int ordered, int thread_count, int data_count, int onto_count, int reduction_count, int chunk_count) |
| void | fei_endpdo (int nowait) |
| void | fei_singleprocess (void) |
| void | fei_endsingleprocess (int nowait) |
| void | fei_criticalsection (int var_count) |
| void | fei_endcriticalsection (void) |
| void | fei_barrier (void) |
| void | fei_section (void) |
| void | fei_psection (void) |
| void | fei_endpsection (int nowait) |
| void | fei_copy_in (int list_count) |
| void | fei_dynamic (int list_count) |
| void | fei_redistribute (int array, int dim, int distribution, int cyclic_exists, int onto_exists) |
| static void | cwh_reorder (int expressions, WN_PRAGMA_ID wn_pragma_id) |
| void | fei_interchange (int expressions) |
| void | fei_blockable (int expressions) |
| void | fei_fission (void) |
| void | fei_flush (int list_count) |
| void | fei_fuse (int level) |
| void | fei_assert (int assertion, int list_count) |
| void | fei_fill_symbol (INT32 count, INT32 C_value) |
| void | fei_align_symbol (INT32 count, INT32 C_value) |
| static void | cwh_directive_fill_align (INT32 count, INT32 C_value, WN_PRAGMA_ID pragma) |
| void | fei_unroll (void) |
| void | fei_page_place (void) |
| void | fei_prefetch_ref_disable (int array, int size) |
| void | fei_prefetch_ref (int stride, int level, int kind, int size) |
| void | fei_prefetch (int n1, int n2) |
| void | fei_prefetch_manual (int n) |
| void | fei_regionbegin (void) |
| void | fei_regionend (void) |
| void | fei_section_gp (int list_count) |
| void | fei_section_nongp (int list_count) |
| void | fei_blocking_size (void) |
| void | fei_purple_conditional (void) |
| void | fei_purple_unconditional (void) |
| void | fei_opaque (void) |
| void | fei_concurrentize (int state) |
| int | fei_par_case (INT32 task_x, INT32 lineno) |
| void | fei_par_endcase (INT32 task_x, INT32 lineno) |
| int | fei_guard (INT32 guard_num, INT32 lineno) |
| void | fei_endguard (INT32 task_x, INT32 guard_num, INT32 lineno) |
| void | fei_parallelsections_open_mp (int task_if_idx, int defaultt) |
| void | fei_paralleldo_open_mp (int task_if_idx, int defaultt, int ordered, int scheduletype, int schedulechunk, int threadcount, int datacount, int ontocount) |
| void | fei_parallelworkshare_open_mp (int task_if_idx, int defaultt) |
| void | fei_workshare_open_mp (void) |
| void | fei_single_open_mp (void) |
| void | fei_sections_open_mp (void) |
| void | fei_do_open_mp (int ordered, int scheduletype, int schedulechunk, int threadcount, int datacount, int ontocount) |
| void | fei_parallel_open_mp (int task_if_idx, int defaultt) |
| static ST * | cwh_create_str_st (char *string) |
| void | fei_critical_open_mp (char *name) |
| void | fei_endcritical_open_mp (char *name) |
| void | fei_barrier_open_mp (void) |
| void | fei_section_open_mp (void) |
| void | fei_master_open_mp (void) |
| void | fei_endmaster_open_mp (void) |
| void | fei_ordered_open_mp (void) |
| void | fei_endsingle_open_mp (int nowait) |
| void | fei_enddo_open_mp (int nowait) |
| void | fei_endsections_open_mp (int nowait) |
| void | fei_endordered_open_mp (void) |
| void | fei_endparalleldo_open_mp (void) |
| void | fei_endparallel_open_mp (void) |
| void | fei_endparallelsections_open_mp (void) |
| void | fei_endparallelworkshare_open_mp (void) |
| void | fei_endworkshare_open_mp (int nowait) |
| void | fei_flush_open_mp (void) |
| void | fei_atomic_open_mp (void) |
| void | fei_xxx_openad (char *str) |
| void | fei_dependent_independent_openad (void) |
| void | cwh_directive_add_do_loop_directive (WN *directive) |
| void | cwh_directive_insert_do_loop_directives (void) |
| void | cwh_directive_barrier_insert (WN *ins, int args) |
| static void | cwh_directive_pragma_to_region (WN *prag, WN *region) |
| static void | cwh_directive_set_PU_flags (BOOL nested) |
| static void | cwh_directive_set_LNO_flags (void) |
| static void | cwh_directive_pop_and_nowait (BOOL nowait, BOOL is_omp) |
| static void | cwh_directive_pop_and_nowait_or_copyprivate (BOOL nowait) |
| static void | cwh_directive_add_pragma_to_loop (WN *wn, BOOL is_omp) |
| static void | cwh_directive_work_dist (INT32 work_dist, INT32 work_dist_opnd) |
| static void | cwh_directive_load_value_pragma (INT32 item, WN_PRAGMA_ID pragma, BOOL is_omp) |
| void | fei_copyin_bound (INTPTR sym_idx) |
Variables | |
| static char * | source_file = __FILE__ |
| static int | task_var_count |
| static int | task_nest_count |
| static int | task_lastthread_count |
| static int | task_affinity_count |
| static ST* cwh_create_str_st | ( | char * | string | ) | [static] |
Definition at line 2132 of file cwh_directive.cxx.
References Be_Type_Tbl, FALSE, Gen_String_Sym(), Host_To_Targ_String(), MTYPE_I1, and MTYPE_STRING.
Referenced by fei_critical_open_mp(), fei_endcritical_open_mp(), and fei_xxx_openad().

| void cwh_directive_add_do_loop_directive | ( | WN * | directive | ) |
Definition at line 2513 of file cwh_directive.cxx.
References do_loop_directive_block, WN_CreateBlock(), and WN_INSERT_BlockLast.

Definition at line 2719 of file cwh_directive.cxx.
References current_srcpos, cwh_block_append_given_id(), FALSE, Top_of_Loop_Block, USRCPOS_srcpos, WN_Set_Linenum(), and WN_set_pragma_omp.
Referenced by cwh_mp_region().

| void cwh_directive_barrier_insert | ( | WN * | ins, | |
| int | args | |||
| ) |
Definition at line 2554 of file cwh_directive.cxx.
References Barrier_Lvalues_On, cwh_addr_address_ST(), cwh_block_append(), cwh_stk_pop_ST(), FALSE, NULL, TRUE, WN_CreateBarrier(), WN_CreateIdname(), and WN_kid().
Referenced by fei_barrier(), fei_barrier_open_mp(), fei_flush(), fei_label_def_named(), and fei_task_endloop().

| static void cwh_directive_fill_align | ( | INT32 | count, | |
| INT32 | C_value, | |||
| WN_PRAGMA_ID | pragma | |||
| ) | [static] |
Definition at line 1556 of file cwh_directive.cxx.
References CURRENT_SYMTAB, cwh_stk_pop_ST(), cwh_stmt_add_pragma(), FALSE, GLOBAL_SYMTAB, Procedure_ST, Pu_Table, Set_PU_needs_fill_align_lowering(), Set_ST_is_fill_align(), ST_level(), and ST_pu().
Referenced by fei_align_symbol(), and fei_fill_symbol().

| void cwh_directive_insert_do_loop_directives | ( | void | ) |
Definition at line 2532 of file cwh_directive.cxx.
References cwh_block_append(), do_loop_directive_block, and NULL.
Referenced by fei_doloop().

| static void cwh_directive_load_value_pragma | ( | INT32 | item, | |
| WN_PRAGMA_ID | pragma, | |||
| BOOL | is_omp | |||
| ) | [static] |
Definition at line 2787 of file cwh_directive.cxx.
References cast_to_STB, cwh_addr_load_ST(), cwh_stmt_add_xpragma(), DevAssert, al::form, is_ST, and al::item.
Referenced by cwh_directive_work_dist(), cwh_doacross(), cwh_parallel(), fei_do_open_mp(), fei_doall(), fei_parallel_region(), fei_paralleldo_open_mp(), fei_parallelsections_open_mp(), and fei_parallelworkshare_open_mp().

Definition at line 2657 of file cwh_directive.cxx.
References cwh_block_pop_region(), cwh_directive_pragma_to_region(), NULL, wn, WN_CreatePragma(), WN_PRAGMA_END_MARKER, WN_PRAGMA_NOWAIT, and WN_set_pragma_omp.
Referenced by fei_enddo_open_mp(), fei_endmaster_open_mp(), fei_endparallel(), fei_endparallel_open_mp(), fei_endparallel_region(), fei_endparallelsections_open_mp(), fei_endparallelworkshare_open_mp(), fei_endpdo(), fei_endpsection(), fei_endsections_open_mp(), fei_endsingleprocess(), and fei_endworkshare_open_mp().

| static void cwh_directive_pop_and_nowait_or_copyprivate | ( | BOOL | nowait | ) | [static] |
Definition at line 2689 of file cwh_directive.cxx.
References cwh_block_pop_region(), cwh_directive_pragma_to_region(), cwh_stk_pop_WN(), FALSE, NULL, task_var_count, TRUE, WN_CreatePragma(), WN_PRAGMA_END_MARKER, and WN_PRAGMA_NOWAIT.
Referenced by fei_endsingle_open_mp().

Definition at line 2598 of file cwh_directive.cxx.
References cwh_block_append(), cwh_block_exchange_current(), cwh_block_set_current(), and WN_region_pragmas.
Referenced by cwh_directive_pop_and_nowait(), and cwh_directive_pop_and_nowait_or_copyprivate().

| static void cwh_directive_set_LNO_flags | ( | void | ) | [static] |
Definition at line 2640 of file cwh_directive.cxx.
References File_info, Get_Current_PU(), Set_FILE_INFO_needs_lno(), and Set_PU_mp_needs_lno().
Referenced by cwh_directive_set_PU_flags(), cwh_mp_region(), fei_page_place(), and fei_redistribute().

| static void cwh_directive_set_PU_flags | ( | BOOL | nested | ) | [static] |
Definition at line 2621 of file cwh_directive.cxx.
References cwh_directive_set_LNO_flags(), File_info, Get_Current_PU(), Set_FILE_INFO_has_mp(), Set_PU_has_mp(), and Set_PU_uplevel().
Referenced by cwh_doacross(), cwh_parallel(), fei_atomic_open_mp(), fei_copy_in(), fei_critical_open_mp(), fei_do_open_mp(), fei_doall(), fei_doparallel(), fei_master_open_mp(), fei_par_case(), fei_parallel_region(), fei_paralleldo_open_mp(), fei_parallelsections_open_mp(), fei_parallelworkshare_open_mp(), fei_pdo(), fei_psection(), fei_sections_open_mp(), fei_single_open_mp(), fei_singleprocess(), and fei_workshare_open_mp().

Definition at line 2737 of file cwh_directive.cxx.
References cwh_directive_load_value_pragma(), cwh_stmt_add_pragma(), cwh_stmt_add_xpragma(), DevAssert, FALSE, NULL, OPC_I4INTCONST, WN_CreateIntconst(), WN_PRAGMA_CHUNKSIZE, WN_PRAGMA_MPSCHEDTYPE, WN_PRAGMA_SCHEDTYPE_DYNAMIC, and WN_PRAGMA_SCHEDTYPE_GSS.
Referenced by fei_doall(), and fei_doparallel().

| static void cwh_doacross | ( | int | task_if_idx, | |
| int | schedtype, | |||
| int | threadcount, | |||
| int | datacount, | |||
| int | ontocount, | |||
| int | reductioncount, | |||
| int | chunkcount, | |||
| WN_PRAGMA_ID | pragma_id, | |||
| int | is_omp | |||
| ) | [static] |
Definition at line 762 of file cwh_directive.cxx.
References nested_do::current, cwh_block_set_current(), cwh_directive_load_value_pragma(), cwh_directive_set_PU_flags(), cwh_mp_region(), cwh_stmt_add_pragma(), nested_do::depth, nested_do::explicit_end, FALSE, nested_do_descriptor, NULL, parallel_do_count, task_nest_count, nested_do::type, WN_PRAGMA_IF, WN_PRAGMA_MPSCHEDTYPE, and WN_PRAGMA_SCHEDTYPE_UNKNOWN.
Referenced by fei_doacross(), and fei_paralleldo().

| WN* cwh_mp_region | ( | WN_PRAGMA_ID | wn_pragma_id, | |
| int | threadcount, | |||
| int | datacount, | |||
| int | ontocount, | |||
| int | reductioncount, | |||
| int | chunkcount, | |||
| int | is_omp | |||
| ) |
Definition at line 382 of file cwh_directive.cxx.
References nested_do::current, current_srcpos, cwh_auxst_distr_preg(), cwh_block_add_to_enclosing_regions(), cwh_block_append(), cwh_block_append_given_id(), cwh_directive_add_pragma_to_loop(), cwh_directive_set_LNO_flags(), cwh_expr_address(), cwh_expr_operand(), cwh_region(), cwh_stk_pop_WN(), cwh_stmt_add_pragma(), cwh_stmt_add_xpragma(), nested_do::depth, DevAssert, f_NONE, nested_do_descriptor, NULL, OPC_I4I4LDID, OPR_ARRAY, OPR_ILOAD, OPR_LDA, OPR_LDID, OPR_PRAGMA, PREG_det::preg, PREG_det::preg_st, PREG_det::preg_ty, REGION_KIND_MP, task_affinity_count, task_lastthread_count, task_var_count, Top_of_Loop_Block, TRUE, USRCPOS_srcpos, wn, WN_CreateBlock(), WN_CreateLdid(), WN_CreateXpragma(), WN_INSERT_BlockFirst, WN_INSERT_BlockLast, WN_kid0(), WN_lda_offset(), WN_load_offset(), WN_operator(), WN_pragma(), WN_PRAGMA_CHUNKSIZE, WN_PRAGMA_DATA_AFFINITY, WN_PRAGMA_LOCAL, WN_pragma_omp, WN_PRAGMA_ONTO, WN_PRAGMA_REDUCTION, WN_PRAGMA_THREAD_AFFINITY, WN_Set_Linenum(), WN_set_pragma_omp, WN_st(), and WNOPR.
Referenced by cwh_doacross(), cwh_parallel(), fei_do_open_mp(), fei_doall(), fei_doloop(), fei_doparallel(), fei_master_open_mp(), fei_par_case(), fei_parallel_region(), fei_paralleldo_open_mp(), fei_parallelsections_open_mp(), fei_parallelworkshare_open_mp(), fei_pdo(), fei_psection(), fei_sections_open_mp(), fei_single_open_mp(), fei_singleprocess(), and fei_workshare_open_mp().

| static void cwh_parallel | ( | int | task_if_idx, | |
| int | defaultt, | |||
| int | is_omp | |||
| ) | [static] |
Definition at line 860 of file cwh_directive.cxx.
References cwh_block_set_current(), cwh_directive_load_value_pragma(), cwh_directive_set_PU_flags(), cwh_mp_region(), cwh_stmt_add_pragma(), DevAssert, FALSE, MAX_PRAGMA_DEFAULT, NULL, task_nest_count, WN_PRAGMA_DEFAULT, WN_PRAGMA_IF, and WN_PRAGMA_PARALLEL_BEGIN.
Referenced by fei_parallel(), and fei_parallel_open_mp().

| static WN* cwh_region | ( | REGION_KIND | kind | ) | [static] |
Definition at line 337 of file cwh_directive.cxx.
References cwh_block_append(), cwh_block_push_region(), cwh_block_set_current(), WN_CreateBlock(), and WN_CreateRegion().
Referenced by cwh_mp_region(), and fei_regionbegin().

| static void cwh_reorder | ( | int | expressions, | |
| WN_PRAGMA_ID | wn_pragma_id | |||
| ) | [static] |
Definition at line 1346 of file cwh_directive.cxx.
References cwh_expr_operand(), cwh_stk_pop_ST(), cwh_stmt_add_pragma(), DevAssert, FALSE, free(), NULL, OPR_INTCONST, wn, WN_const_val(), and WN_operator().
Referenced by fei_blockable(), and fei_interchange().

Definition at line 1541 of file cwh_directive.cxx.
References cwh_directive_fill_align(), and WN_PRAGMA_ALIGN.
Referenced by cvrt_exp_to_pdg().

| void fei_assert | ( | int | assertion, | |
| int | list_count | |||
| ) |
Definition at line 1441 of file cwh_directive.cxx.
References arg, Clear_PU_args_aliased(), cwh_expr_address(), cwh_expr_operand(), cwh_stk_pop_whatever(), cwh_stmt_add_pragma(), DevAssert, DevWarn(), f_NONE, FALSE, fe_enum, map_asserts, MIPS_ASSERT_ARGUMENTALIASING, MIPS_ASSERT_BENIGN, MIPS_ASSERT_BOUNDSVIOLATIONS, MIPS_ASSERT_CONCURRENTCALL, MIPS_ASSERT_DO, MIPS_ASSERT_DOPREFER, MIPS_ASSERT_EQUIVALENCEHAZARD, MIPS_ASSERT_NOARGUMENTALIASING, MIPS_ASSERT_NOBOUNDSVIOLATIONS, MIPS_ASSERT_NOCONCURRENTCALL, MIPS_ASSERT_NOEQUIVALENCEHAZARD, MIPS_ASSERT_NOINTERCHANGE, MIPS_ASSERT_NOTEMPORARIESFORCONSTANTARGUMENTS, MIPS_ASSERT_PERMUTATION, MIPS_ASSERT_TEMPORARIESFORCONSTANTARGUMENTS, MIPS_ASSERT_USECOMPRESS, MIPS_ASSERT_USECONTROLLEDSTORE, MIPS_ASSERT_USEEXPAND, MIPS_ASSERT_USEGATHER, MIPS_ASSERT_USESCATTER, NULL, Procedure_ST, Pu_Table, Set_PU_args_aliased(), ST_pu(), WN_const_val(), WN_load_offset(), wn_pragma_id, and WN_st().

| void fei_atomic_open_mp | ( | void | ) |
Definition at line 2455 of file cwh_directive.cxx.
References cwh_directive_set_PU_flags(), cwh_stmt_add_pragma(), FALSE, TRUE, and WN_PRAGMA_ATOMIC.
Referenced by cvrt_exp_to_pdg().

| void fei_barrier | ( | void | ) |
Definition at line 1086 of file cwh_directive.cxx.
References cwh_directive_barrier_insert(), NULL, wn, WN_CreatePragma(), and WN_PRAGMA_BARRIER.
Referenced by cvrt_exp_to_pdg().

| void fei_barrier_open_mp | ( | void | ) |
Definition at line 2202 of file cwh_directive.cxx.
References cwh_directive_barrier_insert(), NULL, wn, WN_CreatePragma(), WN_PRAGMA_BARRIER, and WN_set_pragma_omp.
Referenced by cvrt_exp_to_pdg().

| void fei_blockable | ( | int | expressions | ) |
Definition at line 1384 of file cwh_directive.cxx.
References cwh_reorder(), and WN_PRAGMA_BLOCKABLE.

| void fei_blocking_size | ( | void | ) |
Definition at line 1761 of file cwh_directive.cxx.
References cwh_expr_operand(), cwh_stmt_add_pragma(), DevAssert, FALSE, NULL, OPR_INTCONST, WN_const_val(), WN_operator(), and WN_PRAGMA_BLOCKING_SIZE.
Referenced by cvrt_exp_to_pdg().

| void fei_concurrentize | ( | int | state | ) |
Definition at line 1807 of file cwh_directive.cxx.
References cwh_stmt_add_pragma(), WN_PRAGMA_KAP_CONCURRENTIZE, and WN_PRAGMA_KAP_NOCONCURRENTIZE.

| void fei_copy_in | ( | int | list_count | ) |
Definition at line 1161 of file cwh_directive.cxx.
References cwh_auxst_next_element(), cwh_directive_set_PU_flags(), cwh_expr_address(), cwh_stk_get_class(), cwh_stk_pop_ST(), cwh_stk_push(), cwh_stmt_add_pragma(), cwh_stmt_add_xpragma(), f_NONE, FALSE, I_element, l_SPLITLIST, NULL, SCLASS_COMMON, ST_base_idx(), ST_item, ST_item_whole_array, ST_sclass(), ST_st_idx(), TRUE, wn, and WN_PRAGMA_COPYIN.

| void fei_copyin_bound | ( | INTPTR | sym_idx | ) |
Definition at line 2815 of file cwh_directive.cxx.
References cast_to_ST, cast_to_STB, CLASS_VAR, cwh_addr_load_ST(), cwh_block_append(), DevAssert, al::form, is_ST, al::item, NULL, Set_ST_auxst_xpragma_copyin, ST_auxst_xpragma_copyin, ST_sym_class(), TRUE, wn, WN_CreateXpragma(), WN_kid0(), and WN_PRAGMA_COPYIN_BOUND.
Referenced by cvrt_exp_to_pdg().

| void fei_critical_open_mp | ( | char * | name | ) |
Definition at line 2154 of file cwh_directive.cxx.
References cwh_block_append(), cwh_create_str_st(), cwh_directive_set_PU_flags(), cwh_stmt_add_pragma(), FALSE, NULL, TRUE, wn, WN_CreateBarrier(), WN_PRAGMA_CRITICAL_SECTION_BEGIN, and WN_set_pragma_omp.
Referenced by cvrt_exp_to_pdg().

| void fei_criticalsection | ( | int | var_count | ) |
Definition at line 1038 of file cwh_directive.cxx.
References cwh_block_append(), cwh_expr_address(), cwh_stmt_add_pragma(), cwh_stmt_add_xpragma(), DevAssert, f_NONE, FALSE, wn, WN_CreateBarrier(), and WN_PRAGMA_CRITICAL_SECTION_BEGIN.

| void fei_dependent_independent_openad | ( | void | ) |
Definition at line 2491 of file cwh_directive.cxx.
References block_pu, cwh_stk_pop_WN(), cwh_stmt_add_to_preamble(), pu_pragma_placement_last, and task_var_count.
Referenced by cvrt_exp_to_pdg().

| void fei_do_open_mp | ( | int | ordered, | |
| int | scheduletype, | |||
| int | schedulechunk, | |||
| int | threadcount, | |||
| int | datacount, | |||
| int | ontocount | |||
| ) |
Definition at line 2071 of file cwh_directive.cxx.
References nested_do::current, cwh_block_set_current(), cwh_directive_load_value_pragma(), cwh_directive_set_PU_flags(), cwh_mp_region(), cwh_stmt_add_pragma(), nested_do::depth, nested_do::explicit_end, nested_do_descriptor, NULL, parallel_do_count, task_nest_count, TRUE, nested_do::type, WN_PRAGMA_CHUNKSIZE, WN_PRAGMA_MPSCHEDTYPE, WN_PRAGMA_ORDERED, WN_PRAGMA_PDO_BEGIN, and WN_PRAGMA_SCHEDTYPE_UNKNOWN.

| void fei_doacross | ( | int | task_if_idx, | |
| int | schedtype, | |||
| int | threadcount, | |||
| int | datacount, | |||
| int | ontocount, | |||
| int | reductioncount, | |||
| int | chunkcount | |||
| ) |
Definition at line 813 of file cwh_directive.cxx.
References cwh_doacross(), and WN_PRAGMA_DOACROSS.

| void fei_doall | ( | INT32 | ifexpr, | |
| INT32 | maxcpus, | |||
| INT32 | context_start, | |||
| INT32 | context_end, | |||
| INT32 | induc_symx, | |||
| INT32 | work_dist, | |||
| INT32 | work_dist_opnd, | |||
| INT32 | flags, | |||
| INT32 | lineno | |||
| ) |
Definition at line 717 of file cwh_directive.cxx.
References nested_do::current, cwh_block_set_current(), cwh_directive_load_value_pragma(), cwh_directive_set_PU_flags(), cwh_directive_work_dist(), cwh_mp_region(), nested_do::depth, nested_do::explicit_end, FALSE, nested_do_descriptor, parallel_do_count, task_nest_count, nested_do::type, WN_PRAGMA_DOACROSS, WN_PRAGMA_IF, and WN_PRAGMA_NUMTHREADS.
Referenced by cvrt_exp_to_pdg().

Definition at line 636 of file cwh_directive.cxx.
References nested_do::current, cwh_block_set_current(), cwh_directive_set_PU_flags(), cwh_directive_work_dist(), cwh_mp_region(), cwh_stmt_add_pragma(), nested_do::depth, nested_do::explicit_end, FALSE, nested_do_descriptor, parallel_do_count, task_nest_count, TRUE, nested_do::type, WN_PRAGMA_NOWAIT, and WN_PRAGMA_PDO_BEGIN.
Referenced by cvrt_exp_to_pdg().

| void fei_dynamic | ( | int | list_count | ) |
Definition at line 1210 of file cwh_directive.cxx.
References cwh_stk_pop_ST(), cwh_stmt_add_pragma(), FALSE, and WN_PRAGMA_DYNAMIC.

| void fei_endcritical_open_mp | ( | char * | name | ) |
Definition at line 2178 of file cwh_directive.cxx.
References cwh_block_append(), cwh_create_str_st(), cwh_stmt_add_pragma(), NULL, TRUE, wn, WN_CreateBarrier(), WN_PRAGMA_CRITICAL_SECTION_END, and WN_set_pragma_omp.
Referenced by cvrt_exp_to_pdg().

| void fei_endcriticalsection | ( | void | ) |
Definition at line 1067 of file cwh_directive.cxx.
References cwh_block_append(), cwh_stmt_add_pragma(), TRUE, wn, WN_CreateBarrier(), and WN_PRAGMA_CRITICAL_SECTION_END.
Referenced by cvrt_exp_to_pdg().

| void fei_enddo_open_mp | ( | int | nowait | ) |
Definition at line 2305 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and TRUE.

Definition at line 1862 of file cwh_directive.cxx.
References cwh_block_append(), cwh_stmt_add_pragma(), TRUE, wn, WN_CreateBarrier(), and WN_PRAGMA_CRITICAL_SECTION_END.
Referenced by cvrt_exp_to_pdg().

| void fei_endmaster_open_mp | ( | void | ) |
Definition at line 2257 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), FALSE, and TRUE.
Referenced by cvrt_exp_to_pdg().

| void fei_endordered_open_mp | ( | void | ) |
Definition at line 2333 of file cwh_directive.cxx.
References cwh_block_append(), cwh_stmt_add_pragma(), TRUE, wn, WN_CreateBarrier(), WN_PRAGMA_ORDERED_END, and WN_set_pragma_omp.
Referenced by cvrt_exp_to_pdg().

| void fei_endparallel | ( | void | ) |
Definition at line 913 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and FALSE.
Referenced by cvrt_exp_to_pdg().

| void fei_endparallel_open_mp | ( | void | ) |
Definition at line 2368 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), FALSE, and TRUE.
Referenced by cvrt_exp_to_pdg().

Definition at line 615 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and FALSE.
Referenced by cvrt_exp_to_pdg().

| void fei_endparalleldo_open_mp | ( | void | ) |
Definition at line 2352 of file cwh_directive.cxx.
References cwh_block_pop_region().
Referenced by cvrt_exp_to_pdg().

| void fei_endparallelsections_open_mp | ( | void | ) |
Definition at line 2381 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), FALSE, and TRUE.
Referenced by cvrt_exp_to_pdg().

| void fei_endparallelworkshare_open_mp | ( | void | ) |
Definition at line 2394 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), FALSE, and TRUE.
Referenced by cvrt_exp_to_pdg().

| void fei_endpdo | ( | int | nowait | ) |
Definition at line 983 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and FALSE.

| void fei_endpsection | ( | int | nowait | ) |
Definition at line 1143 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and FALSE.

| void fei_endsections_open_mp | ( | int | nowait | ) |
Definition at line 2320 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and TRUE.

| void fei_endsingle_open_mp | ( | int | nowait | ) |
Definition at line 2290 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait_or_copyprivate().

| void fei_endsingleprocess | ( | int | nowait | ) |
Definition at line 1021 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and FALSE.

| void fei_endworkshare_open_mp | ( | int | nowait | ) |
Definition at line 2408 of file cwh_directive.cxx.
References cwh_directive_pop_and_nowait(), and TRUE.

Definition at line 1525 of file cwh_directive.cxx.
References cwh_directive_fill_align(), and WN_PRAGMA_FILL.
Referenced by cvrt_exp_to_pdg().

| void fei_fission | ( | void | ) |
Definition at line 1395 of file cwh_directive.cxx.
References cwh_expr_operand(), cwh_stmt_add_pragma(), DevAssert, FALSE, NULL, OPR_INTCONST, wn, WN_const_val(), WN_operator(), and WN_PRAGMA_FISSION.
Referenced by cvrt_exp_to_pdg().

| void fei_flush | ( | int | list_count | ) |
Definition at line 1411 of file cwh_directive.cxx.
References cwh_directive_barrier_insert(), INTRN_SYNCHRONIZE, NULL, OPC_VINTRINSIC_CALL, and WN_Create_Intrinsic().

| void fei_flush_open_mp | ( | void | ) |
Definition at line 2421 of file cwh_directive.cxx.
References block, cwh_block_append(), cwh_block_append_given_block(), cwh_stk_pop_WN(), NULL, task_var_count, WN_CreateBlock(), WN_CreatePragma(), WN_PRAGMA_FLUSH, and WN_set_pragma_omp.
Referenced by cvrt_exp_to_pdg().

| void fei_fuse | ( | int | level | ) |
Definition at line 1426 of file cwh_directive.cxx.
References cwh_expr_operand(), cwh_stmt_add_pragma(), DevAssert, FALSE, NULL, OPR_INTCONST, wn, WN_const_val(), WN_operator(), and WN_PRAGMA_FUSE.

Definition at line 1850 of file cwh_directive.cxx.
References cwh_block_append(), cwh_stmt_add_pragma(), FALSE, wn, WN_CreateBarrier(), and WN_PRAGMA_CRITICAL_SECTION_BEGIN.
Referenced by cvrt_exp_to_pdg().

| void fei_interchange | ( | int | expressions | ) |
Definition at line 1378 of file cwh_directive.cxx.
References cwh_reorder(), and WN_PRAGMA_INTERCHANGE.

| void fei_master_open_mp | ( | void | ) |
Definition at line 2235 of file cwh_directive.cxx.
References cwh_block_set_current(), cwh_directive_set_PU_flags(), cwh_mp_region(), FALSE, and WN_PRAGMA_MASTER_BEGIN.
Referenced by cvrt_exp_to_pdg().

| void fei_opaque | ( | void | ) |
Definition at line 1798 of file cwh_directive.cxx.
References cwh_block_set_current(), cwh_block_set_region_pragmas(), cwh_stmt_add_pragma(), and WN_PRAGMA_OPAQUE.
Referenced by cvrt_exp_to_pdg().

| void fei_ordered_open_mp | ( | void | ) |
Definition at line 2270 of file cwh_directive.cxx.
References cwh_block_append(), cwh_stmt_add_pragma(), FALSE, TRUE, wn, WN_CreateBarrier(), WN_PRAGMA_ORDERED_BEGIN, and WN_set_pragma_omp.
Referenced by cvrt_exp_to_pdg().

| void fei_page_place | ( | void | ) |
Definition at line 1593 of file cwh_directive.cxx.
References cwh_directive_set_LNO_flags(), cwh_expr_address(), cwh_expr_operand(), cwh_stmt_add_xpragma(), f_NONE, FALSE, NULL, and WN_PRAGMA_PAGE_PLACE.
Referenced by cvrt_exp_to_pdg().

Definition at line 1821 of file cwh_directive.cxx.
References cwh_block_set_current(), cwh_directive_set_PU_flags(), cwh_mp_region(), cwh_stmt_add_pragma(), FALSE, WN_PRAGMA_PSECTION_BEGIN, and WN_PRAGMA_SECTION.
Referenced by cvrt_exp_to_pdg().
