added new directives
This commit is contained in:
@@ -350,6 +350,9 @@
|
||||
%token SPF_APPLY_FRAGMENT 350
|
||||
%token SPF_CODE_COVERAGE 351
|
||||
%token SPF_UNROLL 352
|
||||
%token SPF_MERGE 353
|
||||
%token SPF_COVER 354
|
||||
%token SPF_PROCESS_PRIVATE 355
|
||||
|
||||
%{
|
||||
#include <string.h>
|
||||
@@ -633,6 +636,7 @@ static int in_vec = NO; /* set if processing array constructor */
|
||||
%type <bf_node> spf_directive spf_analysis spf_parallel spf_transform spf_parallel_reg spf_end_parallel_reg
|
||||
%type <bf_node> spf_checkpoint
|
||||
%type <ll_node> analysis_spec_list analysis_spec analysis_reduction_spec analysis_private_spec analysis_parameter_spec
|
||||
%type <ll_node> analysis_cover_spec analysis_process_private_spec
|
||||
%type <ll_node> parallel_spec_list parallel_spec parallel_shadow_spec parallel_across_spec parallel_remote_access_spec
|
||||
%type <ll_node> transform_spec_list transform_spec array_element_list spf_parameter_list spf_parameter
|
||||
%type <ll_node> characteristic characteristic_list opt_clause_apply_region opt_clause_apply_fragment
|
||||
@@ -8014,17 +8018,27 @@ analysis_spec_list: analysis_spec
|
||||
|
||||
analysis_spec: analysis_reduction_spec
|
||||
| analysis_private_spec
|
||||
| analysis_parameter_spec
|
||||
| analysis_process_private_spec
|
||||
| analysis_parameter_spec
|
||||
| analysis_cover_spec
|
||||
;
|
||||
|
||||
analysis_reduction_spec: needkeyword REDUCTION LEFTPAR reduction_list RIGHTPAR
|
||||
{ $$ = make_llnd(fi,REDUCTION_OP,$4,LLNULL,SMNULL); }
|
||||
;
|
||||
;
|
||||
|
||||
analysis_private_spec: needkeyword PRIVATE LEFTPAR variable_list RIGHTPAR
|
||||
{ $$ = make_llnd(fi,ACC_PRIVATE_OP,$4,LLNULL,SMNULL);}
|
||||
;
|
||||
|
||||
analysis_process_private_spec: needkeyword SPF_PROCESS_PRIVATE LEFTPAR variable_list RIGHTPAR
|
||||
{ $$ = make_llnd(fi,SPF_PROCESS_PRIVATE_OP,$4,LLNULL,SMNULL);}
|
||||
;
|
||||
|
||||
analysis_cover_spec: needkeyword SPF_COVER LEFTPAR integer_constant RIGHTPAR
|
||||
{ $$ = make_llnd(fi,SPF_COVER_OP,$4,LLNULL,SMNULL);}
|
||||
;
|
||||
|
||||
analysis_parameter_spec: needkeyword PARAMETER LEFTPAR spf_parameter_list RIGHTPAR
|
||||
{ $$ = make_llnd(fi,SPF_PARAMETER_OP,$4,LLNULL,SMNULL);}
|
||||
;
|
||||
@@ -8082,6 +8096,8 @@ transform_spec: needkeyword SPF_NOINLINE
|
||||
{ $$ = make_llnd(fi,SPF_UNROLL_OP,LLNULL,LLNULL,SMNULL);}
|
||||
| needkeyword SPF_UNROLL LEFTPAR unroll_list RIGHTPAR
|
||||
{ $$ = make_llnd(fi,SPF_UNROLL_OP,$4,LLNULL,SMNULL);}
|
||||
| needkeyword SPF_MERGE
|
||||
{ $$ = make_llnd(fi,SPF_MERGE_OP,LLNULL,LLNULL,SMNULL);}
|
||||
;
|
||||
|
||||
unroll_list: expr COMMA expr COMMA expr
|
||||
|
||||
Reference in New Issue
Block a user