added new directives
This commit is contained in:
@@ -619,3 +619,7 @@
|
||||
#define SPF_PARAMETER_OP 969 /* SAPFOR */
|
||||
#define SPF_CODE_COVERAGE_OP 970 /* SAPFOR */
|
||||
#define SPF_UNROLL_OP 971 /* SAPFOR */
|
||||
#define SPF_COVER_OP 972 /* SAPFOR */
|
||||
#define SPF_MERGE_OP 973 /* SAPFOR */
|
||||
#define SPF_PROCESS_PRIVATE_OP 974 /* SAPFOR */
|
||||
|
||||
|
||||
@@ -621,3 +621,7 @@ script using "tag". Run make tag.h to regenerate this file */
|
||||
tag [ SPF_PARAMETER_OP ] = "SPF_PARAMETER_OP";
|
||||
tag [ SPF_CODE_COVERAGE_OP ] = "SPF_CODE_COVERAGE_OP";
|
||||
tag [ SPF_UNROLL_OP ] = "SPF_UNROLL_OP";
|
||||
tag [ SPF_COVER_OP ] = "SPF_COVER_OP";
|
||||
tag [ SPF_MERGE_OP ] = "SPF_MERGE_OP";
|
||||
tag [ SPF_PROCESS_PRIVATE_OP ] = "SPF_PROCESS_PRIVATE_OP";
|
||||
|
||||
|
||||
@@ -460,6 +460,9 @@ DEFNODECODE(SPF_FLEXIBLE_OP, "nodetext",'e',0,LLNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_PARAMETER_OP, "nodetext",'e',1,LLNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_CODE_COVERAGE_OP, "nodetext",'e',0,LLNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_UNROLL_OP, "nodetext",'e',1,LLNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_COVER_OP, "nodetext",'e',1,LLNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_MERGE_OP, "nodetext",'e',0,LLNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_PROCESS_PRIVATE_OP, "nodetext",'e',1,LLNODE, '_','_','_','_','_')
|
||||
|
||||
DEFNODECODE(SPF_ANALYSIS_DIR,"nodetext",'s',0,BIFNODE, '_','_','_','_','_')
|
||||
DEFNODECODE(SPF_PARALLEL_DIR,"nodetext",'s',0,BIFNODE, '_','_','_','_','_')
|
||||
|
||||
@@ -432,5 +432,11 @@ DEFNODECODE(SPF_PARAMETER_OP, "PARAMETER (%LL1)",
|
||||
'e',1,LLNODE)
|
||||
DEFNODECODE(SPF_UNROLL_OP, "UNROLL %IF(%LL1 != %NULL)(%LL1)%ENDIF",
|
||||
'e',1,LLNODE)
|
||||
DEFNODECODE(SPF_MERGE_OP, "MERGE",
|
||||
'e',0,LLNODE)
|
||||
DEFNODECODE(SPF_COVER_OP, "COVER (%LL1)",
|
||||
'e',1,LLNODE)
|
||||
DEFNODECODE(SPF_PROCESS_PRIVATE_OP, "PROCESS_PRIVATE_OP (%LL1)",
|
||||
'e',1,LLNODE)
|
||||
|
||||
|
||||
|
||||
@@ -60,17 +60,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);}
|
||||
;
|
||||
@@ -128,6 +138,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
|
||||
|
||||
@@ -281,6 +281,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
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -391,8 +391,11 @@
|
||||
SPF_APPLY_FRAGMENT = 350,
|
||||
SPF_CODE_COVERAGE = 351,
|
||||
SPF_UNROLL = 352,
|
||||
BINARY_OP = 355,
|
||||
UNARY_OP = 356
|
||||
SPF_MERGE = 353,
|
||||
SPF_COVER = 354,
|
||||
SPF_PROCESS_PRIVATE = 355,
|
||||
BINARY_OP = 358,
|
||||
UNARY_OP = 359
|
||||
};
|
||||
#endif
|
||||
/* Tokens. */
|
||||
@@ -748,15 +751,18 @@
|
||||
#define SPF_APPLY_FRAGMENT 350
|
||||
#define SPF_CODE_COVERAGE 351
|
||||
#define SPF_UNROLL 352
|
||||
#define BINARY_OP 355
|
||||
#define UNARY_OP 356
|
||||
#define SPF_MERGE 353
|
||||
#define SPF_COVER 354
|
||||
#define SPF_PROCESS_PRIVATE 355
|
||||
#define BINARY_OP 358
|
||||
#define UNARY_OP 359
|
||||
|
||||
|
||||
|
||||
|
||||
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
||||
typedef union YYSTYPE
|
||||
#line 435 "gram1.y"
|
||||
#line 438 "gram1.y"
|
||||
{
|
||||
int token;
|
||||
char charv;
|
||||
@@ -769,7 +775,7 @@ typedef union YYSTYPE
|
||||
PTR_LABEL label;
|
||||
}
|
||||
/* Line 1489 of yacc.c. */
|
||||
#line 773 "gram1.tab.h"
|
||||
#line 779 "gram1.tab.h"
|
||||
YYSTYPE;
|
||||
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
|
||||
# define YYSTYPE_IS_DECLARED 1
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -370,6 +370,7 @@ struct Keylist keys[] = {
|
||||
{"copyin", OMPDVM_COPYIN},/*OMP*/
|
||||
{"copyprivate", OMPDVM_COPYPRIVATE},/*OMP*/
|
||||
{"corner", CORNER},
|
||||
{"cover", SPF_COVER}, /*SPF*/
|
||||
/* {"criticalsection", CRITICALSECTION},*/
|
||||
{"cuda_block", ACC_CUDA_BLOCK}, /*ACC*/
|
||||
{"cuda", ACC_CUDA}, /*ACC*/
|
||||
@@ -494,7 +495,7 @@ struct Keylist keys[] = {
|
||||
{"maxloc", MAXLOC},
|
||||
/* {"maxparallel", MAXPARALLEL},*/
|
||||
{"max", MAX},
|
||||
/* {"merger", MERGER},*/
|
||||
{"merge", SPF_MERGE}, /*SPF*/
|
||||
{"minloc", MINLOC},
|
||||
{"min", MIN},
|
||||
{"moduleprocedure", MODULE_PROCEDURE},
|
||||
@@ -536,6 +537,7 @@ struct Keylist keys[] = {
|
||||
{"private", PRIVATE},
|
||||
/*!!! {"probe", PROBE}, */
|
||||
/*!!! {"procedure", PROCEDURE},*/
|
||||
{"process_private", SPF_PROCESS_PRIVATE}, /*SPF*/
|
||||
{"product", PRODUCT},
|
||||
{"program", PROGRAM},
|
||||
/*!!! {"processcluster", PROCESS_CLUSTER},*/
|
||||
|
||||
@@ -619,3 +619,7 @@
|
||||
#define SPF_PARAMETER_OP 969 /* SAPFOR */
|
||||
#define SPF_CODE_COVERAGE_OP 970 /* SAPFOR */
|
||||
#define SPF_UNROLL_OP 971 /* SAPFOR */
|
||||
#define SPF_COVER_OP 972 /* SAPFOR */
|
||||
#define SPF_MERGE_OP 973 /* SAPFOR */
|
||||
#define SPF_PROCESS_PRIVATE_OP 974 /* SAPFOR */
|
||||
|
||||
|
||||
@@ -621,3 +621,7 @@ script using "tag". Run make tag.h to regenerate this file */
|
||||
tag [ SPF_PARAMETER_OP ] = "SPF_PARAMETER_OP";
|
||||
tag [ SPF_CODE_COVERAGE_OP ] = "SPF_CODE_COVERAGE_OP";
|
||||
tag [ SPF_UNROLL_OP ] = "SPF_UNROLL_OP";
|
||||
tag [ SPF_COVER_OP ] = "SPF_COVER_OP";
|
||||
tag [ SPF_MERGE_OP ] = "SPF_MERGE_OP";
|
||||
tag [ SPF_PROCESS_PRIVATE_OP ] = "SPF_PROCESS_PRIVATE_OP";
|
||||
|
||||
|
||||
@@ -350,3 +350,6 @@
|
||||
#define SPF_APPLY_FRAGMENT 350
|
||||
#define SPF_CODE_COVERAGE 351
|
||||
#define SPF_UNROLL 352
|
||||
#define SPF_MERGE 353
|
||||
#define SPF_COVER 354
|
||||
#define SPF_PROCESS_PRIVATE 355
|
||||
|
||||
@@ -350,3 +350,6 @@ SPF_APPLY_REGION
|
||||
SPF_APPLY_FRAGMENT
|
||||
SPF_CODE_COVERAGE
|
||||
SPF_UNROLL
|
||||
SPF_MERGE
|
||||
SPF_COVER
|
||||
SPF_PROCESS_PRIVATE
|
||||
|
||||
Reference in New Issue
Block a user