osprey/kgccfe/omp_directive.cxx File Reference

#include "defs.h"
#include "glob.h"
#include "config.h"
#include "wn.h"
#include "wn_util.h"
#include "gnu_config.h"
#include "system.h"
#include "srcpos.h"
#include "tree.h"
#include "wfe_expr.h"
#include "wfe_misc.h"
#include "omp_types.h"
#include "omp_directive.h"
#include "wfe_omp_directives.h"
#include "wfe_omp_check_stack.h"
#include <stdio.h>
#include "errors.h"
#include "const.h"

Include dependency graph for omp_directive.cxx:

Go to the source code of this file.

Data Types

type  reduction_list

Functions/Subroutines

tree chainon (tree op1, tree op2)
void print_tree (FILE *file, tree node)
void print_node_brief (FILE *file, const char *prefix, tree node, int indent)
STGet_Pre_ST (tree name)
void prepare_com_clause (tree clause_tree, ST_list **clause_st)
void prepare_reduction_clause (struct reduction_list *reduction_clause_list, WN_list **reduction_clause_wn)
void check_parallel_directive (struct parallel_clause_list *clause_list)
void expand_start_parallel (struct parallel_clause_list *clause_list)
void expand_end_parallel ()
void check_for_directive (struct for_clause_list *clause_list)
void expand_start_for (struct for_clause_list *clause_list)
void expand_end_for ()
void check_sections_directive (struct sections_clause_list *clause_list)
void expand_start_sections (struct sections_clause_list *clause_list)
void expand_end_sections ()
void expand_start_section ()
void expand_end_section ()
void check_single_directive (struct single_clause_list *clause_list)
void expand_start_single (struct single_clause_list *clause_list)
void expand_end_single ()
void check_parallel_for_directive (struct parallel_for_clause_list *clause_list)
void expand_start_parallel_for (struct parallel_for_clause_list *clause_list)
void expand_end_parallel_for ()
void check_parallel_sections_directive (struct parallel_sections_clause_list *clause_list)
void expand_start_parallel_sections (struct parallel_sections_clause_list *clause_list)
void expand_end_parallel_sections ()
void expand_start_master ()
void expand_end_master ()
void expand_start_critical (tree region_phrase)
void expand_end_critical ()
void check_atomic_expression (tree atomic_expression)
void expand_start_atomic ()
void expand_end_atomic ()
void expand_start_ordered ()
void expand_end_ordered ()
void expand_barrier ()
void expand_flush (tree flush_variables)
void expand_threadprivate (tree threadprivate_variables)
int check_do_loop_for (tree init_expr, tree logical_expr, tree incr_expr)
void expand_start_do_loop (tree init_expr, tree logical_expr, tree incr_expr, struct nesting *nest)
void expand_end_do_loop (struct nesting *nest)
struct parallel_clause_listchain_parallel_list_on (struct parallel_clause_list *pclause_list, struct parallel_clause_list *pclause)
struct parallel_clause_listbuild_parallel_clause_list (tree t, parallel_clause_type p_type, default_type d_type, reduction_op_type red_op)
struct for_clause_listchain_for_list_on (struct for_clause_list *fclause_list, struct for_clause_list *fclause)
struct for_clause_listbuild_for_clause_list (tree t, for_clause_type f_type, schedule_kind_type s_kind, reduction_op_type red_op)
struct sections_clause_listchain_sections_list_on (struct sections_clause_list *sclause_list, struct sections_clause_list *sclause)
struct sections_clause_listbuild_sections_clause_list (tree t, sections_clause_type s_type, reduction_op_type red_op)
struct single_clause_listchain_single_list_on (struct single_clause_list *sclause_list, struct single_clause_list *sclause)
struct single_clause_listbuild_single_clause_list (tree t, single_clause_type s_type)
struct parallel_for_clause_listchain_parallel_for_list_on (struct parallel_for_clause_list *pfclause_list, struct parallel_for_clause_list *pfclause)
struct parallel_for_clause_listbuild_parallel_for_clause_list (tree t, parallel_for_clause_type p_type, default_type d_type, schedule_kind_type s_kind, reduction_op_type red_op)
struct
parallel_sections_clause_list
chain_parallel_sections_list_on (struct parallel_sections_clause_list *psclause_list, struct parallel_sections_clause_list *psclause)
struct
parallel_sections_clause_list
build_parallel_sections_clause_list (tree t, parallel_sections_clause_type p_type, default_type d_type, reduction_op_type red_op)

Variables

bool seen_omp_paren


Function Documentation

struct for_clause_list* build_for_clause_list ( tree  t,
for_clause_type  f_type,
schedule_kind_type  s_kind,
reduction_op_type  red_op 
) [read]

struct parallel_clause_list* build_parallel_clause_list ( tree  t,
parallel_clause_type  p_type,
default_type  d_type,
reduction_op_type  red_op 
) [read]

struct parallel_for_clause_list* build_parallel_for_clause_list ( tree  t,
parallel_for_clause_type  p_type,
default_type  d_type,
schedule_kind_type  s_kind,
reduction_op_type  red_op 
) [read]

struct parallel_sections_clause_list* build_parallel_sections_clause_list ( tree  t,
parallel_sections_clause_type  p_type,
default_type  d_type,
reduction_op_type  red_op 
) [read]

struct sections_clause_list* build_sections_clause_list ( tree  t,
sections_clause_type  s_type,
reduction_op_type  red_op 
) [read]

struct single_clause_list* build_single_clause_list ( tree  t,
single_clause_type  s_type 
) [read]

struct for_clause_list* chain_for_list_on ( struct for_clause_list fclause_list,
struct for_clause_list fclause 
) [read]

Definition at line 1798 of file omp_directive.cxx.

References for_clause_list::next, and NULL.

struct parallel_for_clause_list* chain_parallel_for_list_on ( struct parallel_for_clause_list pfclause_list,
struct parallel_for_clause_list pfclause 
) [read]

Definition at line 1946 of file omp_directive.cxx.

References parallel_for_clause_list::next, and NULL.

struct parallel_clause_list* chain_parallel_list_on ( struct parallel_clause_list pclause_list,
struct parallel_clause_list pclause 
) [read]

Definition at line 1735 of file omp_directive.cxx.

References parallel_clause_list::next, and NULL.

struct parallel_sections_clause_list* chain_parallel_sections_list_on ( struct parallel_sections_clause_list psclause_list,
struct parallel_sections_clause_list psclause 
) [read]

Definition at line 2016 of file omp_directive.cxx.

References parallel_sections_clause_list::next, and NULL.

struct sections_clause_list* chain_sections_list_on ( struct sections_clause_list sclause_list,
struct sections_clause_list sclause 
) [read]

Definition at line 1852 of file omp_directive.cxx.

References sections_clause_list::next, and NULL.

struct single_clause_list* chain_single_list_on ( struct single_clause_list sclause_list,
struct single_clause_list sclause 
) [read]

Definition at line 1902 of file omp_directive.cxx.

References single_clause_list::next, and NULL.

tree chainon ( tree  op1,
tree  op2 
)

Definition at line 54 of file omp_directive.cxx.

References t1, and TREE_CHAIN.

void check_atomic_expression ( tree  atomic_expression  ) 

int check_do_loop_for ( tree  init_expr,
tree  logical_expr,
tree  incr_expr 
)

void check_for_directive ( struct for_clause_list clause_list  ) 

void check_parallel_directive ( struct parallel_clause_list clause_list  ) 

void check_parallel_for_directive ( struct parallel_for_clause_list clause_list  ) 

void check_parallel_sections_directive ( struct parallel_sections_clause_list clause_list  ) 

void check_sections_directive ( struct sections_clause_list clause_list  ) 

void check_single_directive ( struct single_clause_list clause_list  ) 

void expand_barrier (  ) 

Definition at line 1451 of file omp_directive.cxx.

References WFE_expand_barrier().

void expand_end_atomic ( void   ) 

Definition at line 1428 of file omp_directive.cxx.

References WFE_expand_end_atomic().

void expand_end_critical ( void   ) 

Definition at line 1375 of file omp_directive.cxx.

References WFE_expand_end_critical().

void expand_end_do_loop ( struct nesting *  nest  ) 

Definition at line 1726 of file omp_directive.cxx.

References WFE_expand_end_do_loop().

void expand_end_for ( void   ) 

Definition at line 598 of file omp_directive.cxx.

References WFE_expand_end_for().

void expand_end_master ( void   ) 

Definition at line 1348 of file omp_directive.cxx.

References WFE_expand_end_master().

void expand_end_ordered ( void   ) 

Definition at line 1442 of file omp_directive.cxx.

References WFE_expand_end_ordered().

void expand_end_parallel (  ) 

Definition at line 404 of file omp_directive.cxx.

References WFE_expand_end_parallel().

void expand_end_parallel_for ( void   ) 

Definition at line 1139 of file omp_directive.cxx.

References WFE_expand_end_parallel_for().

void expand_end_parallel_sections ( void   ) 

Definition at line 1334 of file omp_directive.cxx.

References WFE_expand_end_parallel_sections().

void expand_end_section ( void   ) 

Definition at line 743 of file omp_directive.cxx.

References WFE_expand_end_section().

void expand_end_sections ( void   ) 

Definition at line 729 of file omp_directive.cxx.

References WFE_expand_end_sections().

void expand_end_single ( void   ) 

Definition at line 884 of file omp_directive.cxx.

References WFE_expand_end_single().

void expand_flush ( tree  flush_variables  ) 

void expand_start_atomic (  ) 

Definition at line 1423 of file omp_directive.cxx.

References WFE_expand_start_atomic().

void expand_start_critical ( tree  region_phrase  ) 

void expand_start_do_loop ( tree  init_expr,
tree  logical_expr,
tree  incr_expr,
struct nesting *  nest 
)

void expand_start_for ( struct for_clause_list clause_list  ) 

void expand_start_master (  ) 

Definition at line 1343 of file omp_directive.cxx.

References WFE_expand_start_master().

void expand_start_ordered (  ) 

Definition at line 1437 of file omp_directive.cxx.

References WFE_expand_start_ordered().

void expand_start_parallel ( struct parallel_clause_list clause_list  ) 

void expand_start_parallel_for ( struct parallel_for_clause_list clause_list  ) 

Definition at line 942 of file omp_directive.cxx.

References chainon(), check_parallel_for_directive(), schedule_2::chunk_size, schedule_2_wn::chunk_size_wn, cl(), Parallel_for_clause_wn_type::copyin_clause, Parallel_for_clause_wn_type::default_clause, parallel_for_clause_node::defaulttype, parallel_for_clause_node::expr_no_commas, Parallel_for_clause_wn_type::firstprivate_clause, free(), Parallel_for_clause_wn_type::if_clause, Parallel_for_clause_wn_type::lastprivate_clause, malloc, MTYPE_is_integral, reduction_list::next, parallel_for_clause_list::next, no_default, parallel_for_clause_list::node, reduction_list::node, NULL, Parallel_for_clause_wn_type::num_threads_clause, Parallel_for_clause_wn_type::ordered_clause, p_for_copyin, p_for_default, p_for_firstprivate, p_for_if, p_for_lastprivate, p_for_num_threads, p_for_ordered, p_for_private, p_for_reduction, p_for_schedule_1, p_for_schedule_2, p_for_shared, prepare_com_clause(), prepare_reduction_clause(), Parallel_for_clause_wn_type::private_clause, Parallel_for_clause_wn_type::reduction_clause, parallel_for_clause_node::reduction_node, Parallel_for_clause_wn_type::schedule_1_clause, Parallel_for_clause_wn_type::schedule_2_clause, schedule_2_wn::schedule_2_kind, schedule_2::schedule_kind, parallel_for_clause_node::schedule_kind, parallel_for_clause_node::schedule_node, Parallel_for_clause_wn_type::shared_clause, SK_NONE, parallel_for_clause_list::type, TYPE_ID, val, parallel_for_clause_node::var_list, WFE_Expand_Expr(), WFE_expand_start_parallel_for(), wn, WN_Floatconst(), WN_Intconst(), WN_NE, and WN_rtype().

void expand_start_parallel_sections ( struct parallel_sections_clause_list clause_list  ) 

void expand_start_section (  ) 

Definition at line 738 of file omp_directive.cxx.

References WFE_expand_start_section().

void expand_start_sections ( struct sections_clause_list clause_list  ) 

void expand_start_single ( struct single_clause_list clause_list  ) 

void expand_threadprivate ( tree  threadprivate_variables  ) 

ST* Get_Pre_ST ( tree  name  )  [inline]

void prepare_com_clause ( tree  clause_tree,
ST_list **  clause_st 
)

Definition at line 153 of file omp_directive.cxx.

References Get_Pre_ST(), malloc, ST_list::next, NULL, ST_list::st, TREE_CHAIN, and TREE_VALUE.

void prepare_reduction_clause ( struct reduction_list reduction_clause_list,
WN_list **  reduction_clause_wn 
)

void print_node_brief ( FILE file,
const char *  prefix,
tree  node,
int  indent 
)

void print_tree ( FILE file,
tree  node 
)

Definition at line 73 of file omp_directive.cxx.

References fprintf(), and print_node_brief().


Variable Documentation


Generated on Wed Apr 8 15:48:30 2009 for Open64 by  doxygen 1.5.6