Add unmasked { } statement.
This reestablishes an "all on" execution mask for the gang, which can be useful for nested parallelism..
This commit is contained in:
10
parse.yy
10
parse.yy
@@ -214,7 +214,7 @@ struct ForeachDimension {
|
||||
%type <stmt> statement labeled_statement compound_statement for_init_statement
|
||||
%type <stmt> expression_statement selection_statement iteration_statement
|
||||
%type <stmt> jump_statement statement_list declaration_statement print_statement
|
||||
%type <stmt> assert_statement sync_statement delete_statement
|
||||
%type <stmt> assert_statement sync_statement delete_statement unmasked_statement
|
||||
|
||||
%type <declaration> declaration parameter_declaration
|
||||
%type <declarators> init_declarator_list
|
||||
@@ -1570,6 +1570,7 @@ statement
|
||||
| assert_statement
|
||||
| sync_statement
|
||||
| delete_statement
|
||||
| unmasked_statement
|
||||
| error ';'
|
||||
{
|
||||
lSuggestBuiltinAlternates();
|
||||
@@ -1898,6 +1899,13 @@ delete_statement
|
||||
}
|
||||
;
|
||||
|
||||
unmasked_statement
|
||||
: TOKEN_UNMASKED '{' statement_list '}'
|
||||
{
|
||||
$$ = new UnmaskedStmt($3, @1);
|
||||
}
|
||||
;
|
||||
|
||||
print_statement
|
||||
: TOKEN_PRINT '(' string_constant ')' ';'
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user