Changes in / [fe8c31e:05c941a]
- Location:
- src
- Files:
-
- 2 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/porting.md
rfe8c31e r05c941a 98 98 * `Initializer` => `ast::Init` 99 99 * `Statement` => `ast::Stmt` 100 * `ReferenceToType` => `ast::BaseInstType`101 100 * any field names should follow a similar renaming 102 101 * because they don't really belong to `Type` (and for consistency with `Linkage::Spec`): -
src/CodeTools/DeclStats.cc
rfe8c31e r05c941a 156 156 /// number of counting bins for linkages 157 157 static const unsigned n_named_specs = 8; 158 /// Mapping function from linkage to bin. 159 static unsigned linkage_index( LinkageSpec::Spec spec ) { 160 switch ( spec ) { 161 case LinkageSpec::Intrinsic: return 0; 162 case LinkageSpec::C: return 1; 163 case LinkageSpec::Cforall: return 2; 164 case LinkageSpec::AutoGen: return 3; 165 case LinkageSpec::Compiler: return 4; 166 case LinkageSpec::BuiltinCFA: return 5; 167 case LinkageSpec::BuiltinC: return 6; 168 default: return 7; 169 } 170 } 158 /// map from total number of specs to bins 159 static const unsigned ind_for_linkage[16]; 171 160 172 161 Stats for_linkage[n_named_specs]; ///< Stores separate stats per linkage … … 377 366 const std::string& mangleName = decl->get_mangleName().empty() ? decl->name : decl->get_mangleName(); 378 367 if ( seen_names.insert( mangleName ).second ) { 379 Stats& stats = for_linkage[ linkage_index( decl->linkage )];368 Stats& stats = for_linkage[ ind_for_linkage[ decl->linkage ] ]; 380 369 381 370 ++stats.n_decls; … … 538 527 }; 539 528 529 const unsigned DeclStats::ind_for_linkage[] 530 = { 7, 7, 2, 1, 7, 7, 7, 3, 4, 7, 6, 5, 7, 7, 7, 0 }; 531 540 532 void printDeclStats( std::list< Declaration * > &translationUnit ) { 541 533 PassVisitor<DeclStats> stats; -
src/Common/module.mk
rfe8c31e r05c941a 22 22 Common/CompilerError.h \ 23 23 Common/Debug.h \ 24 Common/DeclStats.hpp \25 Common/DeclStats.cpp \26 24 Common/ErrorObjects.h \ 27 25 Common/Eval.cc \ -
src/main.cc
rfe8c31e r05c941a 9 9 // Author : Peter Buhr and Rob Schluntz 10 10 // Created On : Fri May 15 23:12:02 2015 11 // Last Modified By : Andrew Beach12 // Last Modified On : Wed Oct 8 11:22:00202113 // Update Count : 65 111 // Last Modified By : Henry Xue 12 // Last Modified On : Mon Aug 23 15:42:08 2021 13 // Update Count : 650 14 14 // 15 15 … … 43 43 #include "Common/CodeLocationTools.hpp" // for forceFillCodeLocations 44 44 #include "Common/CompilerError.h" // for CompilerError 45 #include "Common/DeclStats.hpp"46 45 #include "Common/Stats.h" 47 46 #include "Common/PassVisitor.h" … … 342 341 } // if 343 342 343 if ( declstatsp ) { 344 CodeTools::printDeclStats( translationUnit ); 345 deleteAll( translationUnit ); 346 return EXIT_SUCCESS; 347 } // if 348 349 if ( bresolvep ) { 350 dump( translationUnit ); 351 return EXIT_SUCCESS; 352 } // if 353 344 354 CodeTools::fillLocations( translationUnit ); 355 356 if ( resolvprotop ) { 357 CodeTools::dumpAsResolvProto( translationUnit ); 358 return EXIT_SUCCESS; 359 } // if 345 360 346 361 if( useNewAST ) { … … 351 366 auto transUnit = convert( move( translationUnit ) ); 352 367 353 forceFillCodeLocations( transUnit );354 355 368 PASS( "Expand Member Tuples" , Tuples::expandMemberTuples( transUnit ) ); 356 357 // LibCfa::makeLibCfa 358 359 if ( declstatsp ) { 360 printDeclStats( transUnit ); 361 return EXIT_SUCCESS; 362 } // if 363 364 if ( bresolvep ) { 365 dump( move( transUnit ) ); 366 return EXIT_SUCCESS; 367 } // if 368 369 if ( resolvprotop ) { 370 // TODO: Better error message. 371 assert(false); 372 return EXIT_SUCCESS; 373 } // if 374 369 375 370 PASS( "Resolve", ResolvExpr::resolve( transUnit ) ); 376 371 if ( exprp ) { … … 385 380 } else { 386 381 PASS( "Expand Member Tuples" , Tuples::expandMemberTuples( translationUnit ) ); 387 388 // LibCfa::makeLibCfa389 390 if ( declstatsp ) {391 CodeTools::printDeclStats( translationUnit );392 deleteAll( translationUnit );393 return EXIT_SUCCESS;394 } // if395 396 if ( bresolvep ) {397 dump( translationUnit );398 return EXIT_SUCCESS;399 } // if400 401 CodeTools::fillLocations( translationUnit );402 403 if ( resolvprotop ) {404 CodeTools::dumpAsResolvProto( translationUnit );405 return EXIT_SUCCESS;406 } // if407 382 408 383 PASS( "Resolve", ResolvExpr::resolve( translationUnit ) );
Note: See TracChangeset
for help on using the changeset viewer.