Changes in / [11f95ee5:32b8144]


Ignore:
Files:
3 deleted
17 edited

Legend:

Unmodified
Added
Removed
  • Jenkinsfile

    r11f95ee5 r32b8144  
    8787                status_prefix = 'Documentation'
    8888
    89                 // //We can't just write to a file outside our repo
    90                 // //Copy the file locally using ssh
    91                 // sh 'scp plg2.cs.uwaterloo.ca:/u/cforall/public_html/perf-history/concurrency.csv bench.csv'
    92 
    93                 // //Then append to the local file
    94                 // sh 'make -C src/benchmark csv-data >> bench.csv'
    95 
    96                 // //Then publish the file again
    97                 // sh 'scp bench.csv plg2.cs.uwaterloo.ca:/u/cforall/public_html/perf-history/concurrency.csv'         
     89                // sh 'make -C src/benchmark csv-data >> /u/cforall/public_html/perf-history/concurrency.csv'
    9890}
    9991
     
    180172                                        ]])
    181173
    182                                 bIsSandbox = env.BRANCH_NAME == "jenkins-sandbox"
    183174                                bIsFullBuild = isFullBuild == 'true'
    184175                                architectureFlag = ''
     
    233224
    234225                //Send email with final results if this is not a full build
    235                 if( !bIsFullBuild && !bIsSandbox ) {
     226                if( !bIsFullBuild ) {
    236227                        echo 'Notifying users of result'
    237228                        email(currentBuild.result, log_needed)
  • src/CodeGen/CodeGenerator.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:56:29 2017
    13 // Update Count     : 418
     12// Last Modified On : Thu Feb  9 15:05:18 2017
     13// Update Count     : 417
    1414//
    1515
     
    141141                } // if
    142142                output << genType( functionDecl->get_functionType(), mangleName( functionDecl ), pretty );
     143
     144                // how to get this to the Functype?
     145                std::list< Declaration * > olds = functionDecl->get_oldDecls();
     146                if ( ! olds.empty() ) {
     147                        output << " /* function has old declaration */";
     148                } // if
    143149
    144150                asmName( functionDecl );
  • src/GenPoly/Box.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:57:16 2017
    13 // Update Count     : 297
     12// Last Modified On : Wed Jun 29 21:43:03 2016
     13// Update Count     : 296
    1414//
    1515
     
    263263        DeclarationWithType *LayoutFunctionBuilder::mutate( FunctionDecl *functionDecl ) {
    264264                functionDecl->set_functionType( maybeMutate( functionDecl->get_functionType(), *this ) );
     265                mutateAll( functionDecl->get_oldDecls(), *this );
    265266                ++functionNesting;
    266267                functionDecl->set_statements( maybeMutate( functionDecl->get_statements(), *this ) );
  • src/InitTweak/FixInit.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Wed Jan 13 16:29:30 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:58:43 2017
    13 // Update Count     : 35
     12// Last Modified On : Tue Jul 12 17:41:15 2016
     13// Update Count     : 34
    1414//
    1515
     
    839839                void handleFuncDecl( FunctionDecl * funcDecl, Visitor & visitor ) {
    840840                        maybeAccept( funcDecl->get_functionType(), visitor );
     841                        acceptAll( funcDecl->get_oldDecls(), visitor );
    841842                        maybeAccept( funcDecl->get_statements(), visitor );
    842843                }
  • src/InitTweak/GenInit.cc

    r11f95ee5 r32b8144  
    99// Author           : Rob Schluntz
    1010// Created On       : Mon May 18 07:44:20 2015
    11 // Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:57:53 2017
    13 // Update Count     : 167
     11// Last Modified By : Rob Schluntz
     12// Last Modified On : Fri May 13 11:37:48 2016
     13// Update Count     : 166
    1414//
    1515
     
    320320                }
    321321                // parameters should not be constructed and destructed, so don't mutate FunctionType
     322                mutateAll( functionDecl->get_oldDecls(), *this );
    322323                functionDecl->set_statements( maybeMutate( functionDecl->get_statements(), *this ) );
    323324
  • src/Parser/DeclarationNode.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Sat May 16 12:34:05 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 13:06:50 2017
    13 // Update Count     : 753
     12// Last Modified On : Thu Feb  9 15:54:59 2017
     13// Update Count     : 742
    1414//
    1515
     
    913913        SemanticError errors;
    914914        std::back_insert_iterator< std::list< Declaration * > > out( outputList );
    915 
    916         for ( const DeclarationNode * cur = firstNode; cur; cur = dynamic_cast< DeclarationNode * >( cur->get_next() ) ) {
     915        const DeclarationNode * cur = firstNode;
     916
     917        while ( cur ) {
    917918                try {
    918919                        if ( DeclarationNode * extr = cur->extractAggregate() ) {
     
    935936                        errors.append( e );
    936937                } // try
     938                cur = dynamic_cast< DeclarationNode * >( cur->get_next() );
    937939        } // while
    938940
     
    945947        SemanticError errors;
    946948        std::back_insert_iterator< std::list< DeclarationWithType * > > out( outputList );
    947        
    948         for ( const DeclarationNode * cur = firstNode; cur; cur = dynamic_cast< DeclarationNode * >( cur->get_next() ) ) {
     949        const DeclarationNode * cur = firstNode;
     950        while ( cur ) {
    949951                try {
    950952                        Declaration * decl = cur->build();
     
    970972                        errors.append( e );
    971973                } // try
    972         } // for
    973 
     974                cur = dynamic_cast< DeclarationNode * >( cur->get_next() );
     975        } // while
    974976        if ( ! errors.isEmpty() ) {
    975977                throw errors;
  • src/Parser/ParseNode.h

    r11f95ee5 r32b8144  
    1010// Created On       : Sat May 16 13:28:16 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 13:15:55 2017
    13 // Update Count     : 661
     12// Last Modified On : Thu Feb  9 14:45:28 2017
     13// Update Count     : 658
    1414//
    1515
     
    437437template< typename SynTreeType, typename NodeType >
    438438void buildMoveList( const NodeType * firstNode, std::list< SynTreeType * > &outputList ) {
    439         buildList( firstNode, outputList );
     439        buildList(firstNode, outputList);
    440440        delete firstNode;
    441441}
  • src/Parser/TypeData.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Sat May 16 15:12:51 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 15:06:59 2017
    13 // Update Count     : 455
     12// Last Modified On : Fri Jan 27 15:28:56 2017
     13// Update Count     : 428
    1414//
    1515
     
    724724Declaration * buildDecl( const TypeData * td, const string &name, DeclarationNode::StorageClass sc, Expression * bitfieldWidth, bool isInline, bool isNoreturn, LinkageSpec::Spec linkage, ConstantExpr *asmName, Initializer * init, std::list< Attribute * > attributes ) {
    725725        if ( td->kind == TypeData::Function ) {
    726                 if ( td->function.idList ) {
    727                         buildKRFunction( td->function );
    728                 } // if
    729 
    730726                FunctionDecl * decl;
    731727                if ( td->function.hasBody ) {
     
    742738                        decl = new FunctionDecl( name, sc, linkage, buildFunction( td ), nullptr, isInline, isNoreturn, attributes );
    743739                } // if
     740                for ( DeclarationNode * cur = td->function.idList; cur != nullptr; cur = dynamic_cast< DeclarationNode* >( cur->get_next() ) ) {
     741                        if ( cur->name ) {
     742                                decl->get_oldIdents().insert( decl->get_oldIdents().end(), *cur->name );
     743                        } // if
     744                } // for
     745                buildList( td->function.oldDeclList, decl->get_oldDecls() );
    744746                return decl->set_asmName( asmName );
    745747        } else if ( td->kind == TypeData::Aggregate ) {
     
    776778} // buildFunction
    777779
    778 void buildKRFunction( const TypeData::Function_t & function ) {
    779         assert( ! function.params );
    780         for ( DeclarationNode * decl = function.oldDeclList; decl != nullptr; decl = dynamic_cast< DeclarationNode* >( decl->get_next() ) ) {
    781                 for ( DeclarationNode * param = function.idList; param != nullptr; param = dynamic_cast< DeclarationNode* >( param->get_next() ) ) {
    782                         if ( *decl->name == *param->name ) {
    783                                 if ( param->type ) throw SemanticError( string( "duplicate declaration name " ) + *param->name );
    784                                 if ( ! decl->type ) throw SemanticError( string( "duplicate parameter name " ) + *param->name );
    785                                 param->type = decl->type;
    786                                 decl->type = nullptr;
    787                                 param->attributes.splice( param->attributes.end(), decl->attributes );
    788                         } // if
    789                 } // for
    790                 if ( decl->type ) throw SemanticError( string( "missing name in parameter list " ) + *decl->name );
    791         } // for
    792         for ( DeclarationNode * param = function.idList; param != nullptr; param = dynamic_cast< DeclarationNode* >( param->get_next() ) ) {
    793                 if ( ! param->type ) {
    794                         param->type = new TypeData( TypeData::Basic );
    795                         param->type->basictype = DeclarationNode::Int;
    796                 } // if
    797         } // for
    798 
    799         function.params = function.idList;
    800         function.idList = nullptr;
    801         delete function.oldDeclList;
    802         function.oldDeclList = nullptr;
    803 } // buildKRFunction
    804 
    805780// Local Variables: //
    806781// tab-width: 4 //
  • src/Parser/TypeData.h

    r11f95ee5 r32b8144  
    1010// Created On       : Sat May 16 15:18:36 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:30:05 2017
    13 // Update Count     : 153
     12// Last Modified On : Thu Feb  2 17:02:09 2017
     13// Update Count     : 146
    1414//
    1515
     
    5252
    5353        struct Function_t {
    54                 mutable DeclarationNode * params;                               // mutables modified in buildKRFunction
    55                 mutable DeclarationNode * idList;                               // old-style
    56                 mutable DeclarationNode * oldDeclList;
     54                DeclarationNode * params;
     55                DeclarationNode * idList;                                               // old-style
     56                DeclarationNode * oldDeclList;
    5757                StatementNode * body;
    5858                bool hasBody;
     
    113113Declaration * buildDecl( const TypeData *, const std::string &, DeclarationNode::StorageClass, Expression *, bool isInline, bool isNoreturn, LinkageSpec::Spec, ConstantExpr *asmName, Initializer * init = nullptr, std::list< class Attribute * > attributes = std::list< class Attribute * >() );
    114114FunctionType * buildFunction( const TypeData * );
    115 void buildKRFunction( const TypeData::Function_t & function );
    116115
    117116#endif // TYPEDATA_H
  • src/SymTab/Autogen.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Thu Mar 03 15:45:56 2016
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 15:02:50 2017
    13 // Update Count     : 13
     12// Last Modified On : Thu Feb  2 18:04:40 2017
     13// Update Count     : 11
    1414//
    1515
     
    658658
    659659                maybeAccept( functionDecl->get_functionType(), *this );
     660                acceptAll( functionDecl->get_oldDecls(), *this );
    660661                functionNesting += 1;
    661662                maybeAccept( functionDecl->get_statements(), *this );
     
    751752        DeclarationWithType * AutogenTupleRoutines::mutate( FunctionDecl *functionDecl ) {
    752753                functionDecl->set_functionType( maybeMutate( functionDecl->get_functionType(), *this ) );
     754                mutateAll( functionDecl->get_oldDecls(), *this );
    753755                functionNesting += 1;
    754756                functionDecl->set_statements( maybeMutate( functionDecl->get_statements(), *this ) );
  • src/SymTab/Indexer.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Sun May 17 21:37:33 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:59:19 2017
    13 // Update Count     : 13
     12// Last Modified On : Tue Jul 12 17:47:47 2016
     13// Update Count     : 12
    1414//
    1515
     
    236236                enterScope();
    237237                maybeAccept( functionDecl->get_functionType(), *this );
     238                acceptAll( functionDecl->get_oldDecls(), *this );
    238239                maybeAccept( functionDecl->get_statements(), *this );
    239240                leaveScope();
  • src/SynTree/Declaration.h

    r11f95ee5 r32b8144  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 14:53:35 2017
    13 // Update Count     : 57
     12// Last Modified On : Thu Feb  9 14:27:08 2017
     13// Update Count     : 56
    1414//
    1515
     
    140140        CompoundStmt *get_statements() const { return statements; }
    141141        void set_statements( CompoundStmt *newValue ) { statements = newValue; }
     142        std::list< std::string >& get_oldIdents() { return oldIdents; }
     143        std::list< Declaration* >& get_oldDecls() { return oldDecls; }
    142144
    143145        virtual FunctionDecl *clone() const { return new FunctionDecl( *this ); }
     
    149151        FunctionType *type;
    150152        CompoundStmt *statements;
     153        std::list< std::string > oldIdents;
     154        std::list< Declaration* > oldDecls;
    151155};
    152156
  • src/SynTree/FunctionDecl.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 15:01:52 2017
    13 // Update Count     : 23
     12// Last Modified On : Sat Oct  1 23:06:32 2016
     13// Update Count     : 21
    1414//
    1515
     
    4444        delete type;
    4545        delete statements;
     46        deleteAll( oldDecls );
    4647}
    4748
     
    8384        } // if
    8485
     86        if ( ! oldIdents.empty() ) {
     87                os << string( indent + 2, ' ' ) << "with parameter names" << endl;
     88                for ( std::list< std::string >::const_iterator i = oldIdents.begin(); i != oldIdents.end(); ++i ) {
     89                        os << string( indent + 4, ' ' ) << *i << endl;
     90                } // for
     91        } // if
     92
     93        if ( ! oldDecls.empty() ) {
     94                os << string( indent + 2, ' ' ) << "with parameter declarations" << endl;
     95                printAll( oldDecls, os, indent + 4 );
     96        } // if
    8597        if ( statements ) {
    8698                os << string( indent + 2, ' ' ) << "with body " << endl;
  • src/SynTree/Mutator.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 15:02:23 2017
    13 // Update Count     : 21
     12// Last Modified On : Thu Feb  9 14:22:56 2017
     13// Update Count     : 20
    1414//
    1515
     
    3838DeclarationWithType *Mutator::mutate( FunctionDecl *functionDecl ) {
    3939        functionDecl->set_functionType( maybeMutate( functionDecl->get_functionType(), *this ) );
     40        mutateAll( functionDecl->get_oldDecls(), *this );
    4041        functionDecl->set_statements( maybeMutate( functionDecl->get_statements(), *this ) );
    4142        return functionDecl;
  • src/SynTree/Visitor.cc

    r11f95ee5 r32b8144  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb 16 15:01:25 2017
    13 // Update Count     : 23
     12// Last Modified On : Thu Feb  9 14:19:22 2017
     13// Update Count     : 22
    1414//
    1515
     
    3535void Visitor::visit( FunctionDecl *functionDecl ) {
    3636        maybeAccept( functionDecl->get_functionType(), *this );
     37        acceptAll( functionDecl->get_oldDecls(), *this );
    3738        maybeAccept( functionDecl->get_statements(), *this );
    3839}
  • src/tests/Makefile.am

    r11f95ee5 r32b8144  
    1111## Created On       : Sun May 31 09:08:15 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Thu Feb 16 15:27:50 2017
    14 ## Update Count     : 41
     13## Last Modified On : Mon Feb  6 16:10:43 2017
     14## Update Count     : 40
    1515###############################################################################
    1616
     
    6868        ${CC} ${CFLAGS} -CFA -XCFA -p ${<} -o ${@}
    6969
    70 KRfunctions : KRfunctions.c
    71         ${CC} ${CFLAGS} -CFA -XCFA -p ${<} -o ${@}
    72 
    7370memberCtors-ERR1: memberCtors.c
    7471        ${CC} ${CFLAGS} -DERR1 ${<} -o ${@}
  • src/tests/Makefile.in

    r11f95ee5 r32b8144  
    689689        ${CC} ${CFLAGS} -CFA -XCFA -p ${<} -o ${@}
    690690
    691 KRfunctions : KRfunctions.c
    692         ${CC} ${CFLAGS} -CFA -XCFA -p ${<} -o ${@}
    693 
    694691memberCtors-ERR1: memberCtors.c
    695692        ${CC} ${CFLAGS} -DERR1 ${<} -o ${@}
Note: See TracChangeset for help on using the changeset viewer.