From 8d95f4d1c7c35cac23ff6781bdd966d35ff228eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Emmanuel=20Beno=C3=AEt?= <tseeker@nocternity.net>
Date: Thu, 14 Dec 2017 18:51:14 +0100
Subject: [PATCH] Optimizer - Updated logging

---
 c-opopt.cc | 50 +++++++++++++++++---------------------------------
 1 file changed, 17 insertions(+), 33 deletions(-)

diff --git a/c-opopt.cc b/c-opopt.cc
index d5a8344..62e76aa 100644
--- a/c-opopt.cc
+++ b/c-opopt.cc
@@ -141,10 +141,6 @@ uint32_t T_OptData::indexOf(
 /*= T_OptData - CONTROL FLOW GRAPH CONSTRUCTION ==============================*/
 namespace {
 
-#warning Remove this later
-#define LL1 2
-#define LL2 2
-
 // CFG type shortcuts
 using T_CFN_ = T_OptData::T_CtrlFlowNode;
 using P_CFN_ = T_OptData::P_CtrlFlowNode;
@@ -191,7 +187,7 @@ inline void BCFGFuncEnter_(
 		sb << "Starting function '" << fn << "' at "
 			<< ctrlFlowGraph.size( );
 		return sb;
-	} , LL1 );
+	} , 5 );
 	cfgFunctions.add( fn , T_OptData::T_BasicBlock{
 			ctrlFlowGraph.size( ) } );
 	cNode = M_ADDNEW_( );
@@ -215,7 +211,7 @@ inline void BCFGFuncExit_(
 				: 0 )
 			<< " instructions";
 		return sb;
-	} , LL1 );
+	} , 5 );
 	auto* frec{ cfgFunctions.get( fn ) };
 	assert( frec );
 	frec->count = ctrlFlowGraph.size( ) - frec->first;
@@ -251,7 +247,7 @@ inline void BCFGCondEnter_(
 				: 0 )
 			<< " instructions";
 		return sb;
-	} , LL2 );
+	} , 6 );
 }
 
 inline void BCFGCondExit_(
@@ -286,7 +282,7 @@ inline void BCFGCondExit_(
 		sb << "Exiting conditional instruction, stack size "
 			<< stack.size( );
 		return sb;
-	} , LL2 );
+	} , 6 );
 }
 
 /*----------------------------------------------------------------------------*/
@@ -354,7 +350,7 @@ inline bool BCFGVisitor_(
 					: 0 )
 				<< " instructions";
 			return sb;
-		} , LL2 );
+		} , 6 );
 
 		auto& cs{ data.callSites.addNew( ) };
 		cs.name = ci.id( );
@@ -375,7 +371,7 @@ inline bool BCFGVisitor_(
 						: 0 )
 					<< " instructions)";
 				return sb;
-			} , LL2 );
+			} , 6 );
 			cNode.clear( );
 		} else {
 			stack.last( ).hasDefault = stack.last( ).hasDefault
@@ -491,7 +487,7 @@ void T_OptData::buildControlFlowGraph(
 {
 	// Keep the old array, we'll reuse its contents
 	T_Array< P_CtrlFlowNode > old{ std::move( ctrlFlowGraph ) };
-	M_LOGSTR_( "Building control flow graph" , LL1 );
+	M_LOGSTR_( "Building control flow graph" , 4 );
 
 	// Create special nodes
 	M_ADDNEW_( );
@@ -514,7 +510,7 @@ void T_OptData::buildControlFlowGraph(
 	BCFGHandleCalls_( *this );
 	logger( [this](){
 		return BCFGDumpAll_( *this );
-	} , LL2 );
+	} , 6 );
 }
 
 #undef M_ADDNEW_
@@ -525,12 +521,6 @@ void T_OptData::buildControlFlowGraph(
 /*= T_OptData - USE/DEFINE CHAINS ============================================*/
 namespace {
 
-#warning Remove this later
-#undef LL1
-#undef LL2
-#define LL1 1
-#define LL2 1
-
 void BUDCAddRecord_(
 		A_Node& n ,
 		T_String const& id ,
@@ -599,7 +589,7 @@ void BUDCAddRecord_(
 		}
 		sb << "), instr #" << *instrId;
 		return sb;
-	} , LL2 );
+	} , 6 );
 }
 
 void BUDCVisitor_(
@@ -758,7 +748,7 @@ void BUDCLink_(
 		sb << " USE " << use;
 
 		return sb;
-	} , LL2 );
+	} , 6 );
 }
 
 /*----------------------------------------------------------------------------*/
@@ -837,7 +827,7 @@ void BUDCWalkGraph_(
 		}
 		sb << ')';
 		return sb;
-	} , LL1 );
+	} , 5 );
 
 	auto const* const fn{ fnIndex
 		? &data.cfgFunctions[ *fnIndex ]
@@ -845,13 +835,11 @@ void BUDCWalkGraph_(
 	auto const nFirst{ fn ? fn->first : 0u };
 	auto const nEnd{ fn ? ( fn->first + fn->count )
 		: data.ctrlFlowGraph.size( ) };
-#if 0
 	data.logger( [=](){
 		T_StringBuilder sb{ "Nodes " };
 		sb << nFirst << " ... " << ( nEnd - 1 );;
 		return sb;
-	} , LL2 );
-#endif
+	} , 8 );
 	changed.add( nFirst );
 	for ( auto i = nEnd ; i > nFirst + 1 ; i -- ) {
 		changed.add( i - 1 );
@@ -859,13 +847,11 @@ void BUDCWalkGraph_(
 
 	while ( changed.size( ) ) {
 		const auto node{ changed[ 0 ] };
-#if 0
 		data.logger( [=](){
 			T_StringBuilder sb{ "Checking node " };
 			sb << node;
 			return sb;
-		} , LL2 );
-#endif
+		} , 8 );
 		assert( node >= nFirst && node < nEnd );
 		auto const& cn{ *data.ctrlFlowGraph[ node ] };
 		changed.remove( node );
@@ -919,7 +905,6 @@ void BUDCWalkGraph_(
 		if ( sOut == sInput ) {
 			continue;
 		}
-#if 0
 		data.logger( [&](){
 			T_StringBuilder sb;
 			sb << "Node " << node << ", setting output to {";
@@ -931,8 +916,7 @@ void BUDCWalkGraph_(
 			}
 			sb << " }";
 			return sb;
-		} , LL2 );
-#endif
+		} , 7 );
 		sOut = sInput;
 
 		// Add the node's successors into the changed set
@@ -1028,7 +1012,7 @@ void BUDCWalkGraph_(
 void T_OptData::buildUseDefineChains(
 		T_OpsParserOutput& program ) noexcept
 {
-	M_LOGSTR_( "Building use/define chains" , LL1 );
+	M_LOGSTR_( "Building use/define chains" , 4 );
 	varUDChains.clear( );
 
 	// Find all definitions and uses, add them to the table
@@ -1468,11 +1452,11 @@ void CPReplaceWithConstant_(
 		p.replace( eid , replacement );
 		oData.logger( [&]() {
 			T_StringBuilder sb;
-			sb << "Propagated constant from " << var.name
+			sb << "...... Propagated constant from " << var.name
 				<< " at " << instruction.location( )
 				<< " (value " << value << ")";
 			return sb;
-		} , LL2 );
+		} , 3 );
 		return true;
 	} );
 }