Changes in / [5584342:6ca0dab]


Ignore:
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • doc/papers/concurrency/Paper.tex

    r5584342 r6ca0dab  
    29992999all long-experiment results are statistically equivalent, \ie median/average/standard-deviation correlate with the short-experiment results, indicating the short experiments reached a steady state.
    30003000All omitted tests for other languages are functionally identical to the \CFA tests and available online~\cite{CforallConcurrentBenchmarks}.
     3001% tar --exclude-ignore=exclude -cvhf benchmark.tar benchmark
     3002% cp -p benchmark.tar /u/cforall/public_html/doc/concurrent_benchmark.tar
    30013003
    30023004\paragraph{Creation}
  • doc/papers/concurrency/mail2

    r5584342 r6ca0dab  
    10501050
    10511051
    1052 
    1053 Date: Tue, 6 Oct 2020 15:29:41 +0000
    1054 From: Mayank Roy Chowdhury <onbehalfof@manuscriptcentral.com>
    1055 Reply-To: speoffice@wiley.com
    1056 To: tdelisle@uwaterloo.ca, pabuhr@uwaterloo.ca
    1057 Subject: SPE-19-0219.R3 successfully submitted
    1058 
    1059 06-Oct-2020
    1060 
    1061 Dear Dr Buhr,
    1062 
    1063 Your manuscript entitled "Advanced Control-flow and Concurrency in Cforall" has been successfully submitted online and is presently being given full consideration for publication in Software: Practice and Experience.
    1064 
    1065 Your manuscript number is SPE-19-0219.R3.  Please mention this number in all future correspondence regarding this submission.
    1066 
    1067 You can view the status of your manuscript at any time by checking your Author Center after logging into https://mc.manuscriptcentral.com/spe.  If you have difficulty using this site, please click the 'Get Help Now' link at the top right corner of the site.
    1068 
    1069 
    1070 Thank you for submitting your manuscript to Software: Practice and Experience.
    1071 
    1072 Sincerely,
    1073 
    1074 Software: Practice and Experience Editorial Office
    1075 
  • libcfa/src/concurrency/CtxSwitch-i386.S

    r5584342 r6ca0dab  
    1010// Created On       : Tue Dec 6 12:27:26 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sun Sep  6 18:23:37 2020
    13 // Update Count     : 5
     12// Last Modified On : Sun Aug 16 08:46:22 2020
     13// Update Count     : 4
    1414//
    1515
     
    3535
    3636        // Copy the "from" context argument from the stack to register eax
    37         // Return address is at 0(%esp), with parameters following.
     37        // Return address is at 0(%esp), with parameters following
    3838
    3939        movl 4(%esp),%eax
     
    5050        movl %ebp,FP_OFFSET(%eax)
    5151
    52         // Copy the "to" context argument from the stack to register eax. Having
    53         // pushed 3 words (= 12 bytes) on the stack, the argument is now at
    54         // 8 + 12 = 20(%esp).
     52        // Copy the "to" context argument from the stack to register eax
     53        // Having pushed three words (= 12 bytes) on the stack, the
     54        // argument is now at 8 + 12 = 20(%esp)
    5555
    5656        movl 20(%esp),%eax
  • src/Parser/lex.ll

    r5584342 r6ca0dab  
    1010 * Created On       : Sat Sep 22 08:58:10 2001
    1111 * Last Modified By : Peter A. Buhr
    12  * Last Modified On : Tue Oct  6 18:15:41 2020
    13  * Update Count     : 743
     12 * Last Modified On : Sat Feb 15 11:05:50 2020
     13 * Update Count     : 737
    1414 */
    1515
     
    6262#define IDENTIFIER_RETURN()     RETURN_VAL( typedefTable.isKind( yytext ) )
    6363
    64 #ifdef HAVE_KEYWORDS_FLOATXX                                                    // GCC >= 7 => keyword, otherwise typedef
     64#ifdef HAVE_KEYWORDS_FLOATXX                                                            // GCC >= 7 => keyword, otherwise typedef
    6565#define FLOATXX(v) KEYWORD_RETURN(v);
    6666#else
     
    292292__restrict__    { KEYWORD_RETURN(RESTRICT); }                   // GCC
    293293return                  { KEYWORD_RETURN(RETURN); }
    294  /* resume                      { KEYWORD_RETURN(RESUME); }                             // CFA */
     294        /* resume                       { KEYWORD_RETURN(RESUME); }                             // CFA */
    295295short                   { KEYWORD_RETURN(SHORT); }
    296296signed                  { KEYWORD_RETURN(SIGNED); }
  • src/Parser/parser.yy

    r5584342 r6ca0dab  
    1010// Created On       : Sat Sep  1 20:22:55 2001
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Tue Oct  6 18:24:18 2020
    13 // Update Count     : 4610
     12// Last Modified On : Thu May 28 12:11:45 2020
     13// Update Count     : 4500
    1414//
    1515
     
    278278%token OTYPE FTYPE DTYPE TTYPE TRAIT                                    // CFA
    279279%token SIZEOF OFFSETOF
    280 // %token RESUME                                                                                        // CFA
    281 %token SUSPEND                                                                                  // CFA
     280// %token RESUME                                                                        // CFA
     281%token SUSPEND                                                                  // CFA
    282282%token ATTRIBUTE EXTENSION                                                              // GCC
    283283%token IF ELSE SWITCH CASE DEFAULT DO WHILE FOR BREAK CONTINUE GOTO RETURN
     
    329329%type<en> conditional_expression                constant_expression                     assignment_expression           assignment_expression_opt
    330330%type<en> comma_expression                              comma_expression_opt
    331 %type<en> argument_expression_list_opt  argument_expression                     default_initialize_opt
     331%type<en> argument_expression_list_opt          argument_expression                     default_initialize_opt
    332332%type<ifctl> if_control_expression
    333333%type<fctl> for_control_expression              for_control_expression_list
     
    370370%type<decl> assertion assertion_list assertion_list_opt
    371371
    372 %type<en> bit_subrange_size_opt bit_subrange_size
     372%type<en>   bit_subrange_size_opt bit_subrange_size
    373373
    374374%type<decl> basic_declaration_specifier basic_type_name basic_type_specifier direct_type indirect_type
     
    793793        | '(' aggregate_control '&' ')' cast_expression         // CFA
    794794                { $$ = new ExpressionNode( build_keyword_cast( $2, $5 ) ); }
     795                // VIRTUAL cannot be opt because of look ahead issues
    795796        | '(' VIRTUAL ')' cast_expression                                       // CFA
    796797                { $$ = new ExpressionNode( new VirtualCastExpr( maybeMoveBuild< Expression >( $4 ), maybeMoveBuildType( nullptr ) ) ); }
     
    919920        | unary_expression assignment_operator assignment_expression
    920921                {
    921 //                      if ( $2 == OperKinds::AtAssn ) {
    922 //                              SemanticError( yylloc, "C @= assignment is currently unimplemented." ); $$ = nullptr;
    923 //                      } else {
     922                        if ( $2 == OperKinds::AtAssn ) {
     923                                SemanticError( yylloc, "C @= assignment is currently unimplemented." ); $$ = nullptr;
     924                        } else {
    924925                                $$ = new ExpressionNode( build_binary_val( $2, $1, $3 ) );
    925 //                      } // if
     926                        } // if
    926927                }
    927928        | unary_expression '=' '{' initializer_list_opt comma_opt '}'
     
    16751676
    16761677typedef_expression:
    1677                 // deprecated GCC, naming expression type: typedef name = exp; gives a name to the type of an expression
     1678                // GCC, naming expression type: typedef name = exp; gives a name to the type of an expression
    16781679        TYPEDEF identifier '=' assignment_expression
    16791680                {
    1680                         SemanticError( yylloc, "Typedef expression is deprecated, use typeof(...) instead." ); $$ = nullptr;
     1681                        // $$ = DeclarationNode::newName( 0 );                  // unimplemented
     1682                        SemanticError( yylloc, "Typedef expression is currently unimplemented." ); $$ = nullptr;
    16811683                }
    16821684        | typedef_expression pop ',' push identifier '=' assignment_expression
    16831685                {
    1684                         SemanticError( yylloc, "Typedef expression is deprecated, use typeof(...) instead." ); $$ = nullptr;
    1685                 }
    1686         ;
     1686                        // $$ = DeclarationNode::newName( 0 );                  // unimplemented
     1687                        SemanticError( yylloc, "Typedef expression is currently unimplemented." ); $$ = nullptr;
     1688                }
     1689        ;
     1690
     1691//c_declaration:
     1692//      declaring_list pop ';'
     1693//      | typedef_declaration pop ';'
     1694//      | typedef_expression pop ';'                                            // GCC, naming expression type
     1695//      | sue_declaration_specifier pop ';'
     1696//      ;
     1697//
     1698//declaring_list:
     1699//              // A semantic check is required to ensure asm_name only appears on declarations with implicit or explicit static
     1700//              // storage-class
     1701//       declarator asm_name_opt initializer_opt
     1702//              {
     1703//                      typedefTable.addToEnclosingScope( IDENTIFIER );
     1704//                      $$ = ( $2->addType( $1 ))->addAsmName( $3 )->addInitializer( $4 );
     1705//              }
     1706//      | declaring_list ',' attribute_list_opt declarator asm_name_opt initializer_opt
     1707//              {
     1708//                      typedefTable.addToEnclosingScope( IDENTIFIER );
     1709//                      $$ = $1->appendList( $1->cloneBaseType( $4->addAsmName( $5 )->addInitializer( $6 ) ) );
     1710//              }
     1711//      ;
    16871712
    16881713c_declaration:
     
    16901715                { $$ = distAttr( $1, $2 ); }
    16911716        | typedef_declaration
    1692         | typedef_expression                                                            // deprecated GCC, naming expression type
     1717        | typedef_expression                                                            // GCC, naming expression type
    16931718        | sue_declaration_specifier
    16941719        ;
     
    20692094                { yyy = true; $$ = AggregateDecl::Union; }
    20702095        | EXCEPTION                                                                                     // CFA
    2071                 // { yyy = true; $$ = AggregateDecl::Exception; }
    2072                 { SemanticError( yylloc, "exception aggregate is currently unimplemented." ); $$ = AggregateDecl::NoAggregate; }
     2096                { yyy = true; $$ = AggregateDecl::Exception; }
    20732097        ;
    20742098
Note: See TracChangeset for help on using the changeset viewer.