Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SymTab/Validate.cc

    r7abee38 r7e08acf  
    4949#include "CodeGen/OperatorTable.h"     // for isCtorDtor, isCtorDtorAssign
    5050#include "ControlStruct/Mutate.h"      // for ForExprMutator
    51 #include "Common/Stats.h"              // for Stats::Heap
    5251#include "Common/PassVisitor.h"        // for PassVisitor, WithDeclsToAdd
    5352#include "Common/ScopedMap.h"          // for ScopedMap
     
    304303                PassVisitor<FixQualifiedTypes> fixQual;
    305304
    306                 Stats::Heap::newPass("validate-A");
    307305                acceptAll( translationUnit, hoistDecls );
    308306                ReplaceTypedef::replaceTypedef( translationUnit );
    309307                ReturnTypeFixer::fix( translationUnit ); // must happen before autogen
    310308                acceptAll( translationUnit, epc ); // must happen before VerifyCtorDtorAssign, because void return objects should not exist; before LinkReferenceToTypes because it is an indexer and needs correct types for mangling
    311                 Stats::Heap::newPass("validate-B");
    312309                acceptAll( translationUnit, lrt ); // must happen before autogen, because sized flag needs to propagate to generated functions
    313310                mutateAll( translationUnit, fixQual ); // must happen after LinkReferenceToTypes, because aggregate members are accessed
    314311                HoistStruct::hoistStruct( translationUnit ); // must happen after EliminateTypedef, so that aggregate typedefs occur in the correct order
    315312                EliminateTypedef::eliminateTypedef( translationUnit ); //
    316                 Stats::Heap::newPass("validate-C");
    317313                acceptAll( translationUnit, genericParams );  // check as early as possible - can't happen before LinkReferenceToTypes
    318314                VerifyCtorDtorAssign::verify( translationUnit );  // must happen before autogen, because autogen examines existing ctor/dtors
    319315                ReturnChecker::checkFunctionReturns( translationUnit );
    320316                InitTweak::fixReturnStatements( translationUnit ); // must happen before autogen
    321                 Stats::Heap::newPass("validate-D");
    322317                Concurrency::applyKeywords( translationUnit );
    323318                acceptAll( translationUnit, fpd ); // must happen before autogenerateRoutines, after Concurrency::applyKeywords because uniqueIds must be set on declaration before resolution
    324319                ControlStruct::hoistControlDecls( translationUnit );  // hoist initialization out of for statements; must happen before autogenerateRoutines
    325320                autogenerateRoutines( translationUnit ); // moved up, used to be below compoundLiteral - currently needs EnumAndPointerDecay
    326                 Stats::Heap::newPass("validate-E");
    327321                Concurrency::implementMutexFuncs( translationUnit );
    328322                Concurrency::implementThreadStarter( translationUnit );
    329323                mutateAll( translationUnit, compoundliteral );
    330324                ResolvExpr::resolveWithExprs( translationUnit ); // must happen before FixObjectType because user-code is resolved and may contain with variables
    331                 Stats::Heap::newPass("validate-F");
    332325                FixObjectType::fix( translationUnit );
    333326                ArrayLength::computeLength( translationUnit );
Note: See TracChangeset for help on using the changeset viewer.