From 7e3ac13c4791537531618c45376101f67124ec11 Mon Sep 17 00:00:00 2001
From: Nicolas Voirol <voirol.nicolas@gmail.com>
Date: Mon, 24 Oct 2016 10:00:04 +0200
Subject: [PATCH] Added timers debug to Main

---
 src/main/scala/inox/Main.scala        | 14 ++++++++++----
 src/main/scala/inox/utils/Timer.scala |  2 ++
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/main/scala/inox/Main.scala b/src/main/scala/inox/Main.scala
index 490b78d7a..0db45b8a0 100644
--- a/src/main/scala/inox/Main.scala
+++ b/src/main/scala/inox/Main.scala
@@ -147,20 +147,26 @@ object Main extends MainHelpers {
         import program.ctx._
 
         import SolverResponses._
-        SimpleSolverAPI(SolverFactory.default(program)).solveSAT(expr) match {
+        val error = SimpleSolverAPI(SolverFactory.default(program)).solveSAT(expr) match {
           case SatWithModel(model) =>
             reporter.info(" => SAT")
             for ((vd, res) <- model) {
               reporter.info(f"${vd.asString}%-15s -> ${res.asString}")
             }
-            exit(error = false)
+            false
           case Unsat =>
             reporter.info(" => UNSAT")
-            exit(error = false)
+            false
           case Unknown =>
             reporter.info(" => UNKNOWN")
-            exit(error = true)
+            true
         }
+
+        reporter.whenDebug(utils.DebugSectionTimers) { debug =>
+          timers.outputTable(debug)
+        }
+
+        exit(error = error)
       }
     }
   }
diff --git a/src/main/scala/inox/utils/Timer.scala b/src/main/scala/inox/utils/Timer.scala
index c334abe9c..40088466a 100644
--- a/src/main/scala/inox/utils/Timer.scala
+++ b/src/main/scala/inox/utils/Timer.scala
@@ -5,6 +5,8 @@ package utils
 
 import scala.language.dynamics
 
+object DebugSectionTimers extends DebugSection("timers")
+
 /** Implements a timer for profiling purposes */
 class Timer() {
   var beginning: Long = 0L
-- 
GitLab