Using histograms for timing statistics.

  Histogram class and test cases added.
  Modified make file to add test cases and class file.
  Added a guard to avoid race condition in Cumulative logger that
  was possible race between Addlogger and Dump() functions.

Change-Id: I060a0d65648c7120963856624e7008c0aa681eb7
diff --git a/src/thread_list.cc b/src/thread_list.cc
index ea8baac..45ddd23 100644
--- a/src/thread_list.cc
+++ b/src/thread_list.cc
@@ -21,9 +21,9 @@
 #include <unistd.h>
 
 #include "base/mutex.h"
+#include "base/timing_logger.h"
 #include "debugger.h"
 #include "thread.h"
-#include "timing_logger.h"
 #include "utils.h"
 
 namespace art {
@@ -210,8 +210,8 @@
       // Shouldn't need to wait for longer than 1 millisecond.
       const uint64_t threshold = 1;
       if (NsToMs(end - start) > threshold) {
-        LOG(INFO) << "Warning: waited longer than " << threshold << " ms for thread suspend"
-                  << std::endl;
+        LOG(INFO) << "Warning: waited longer than " << threshold
+                  << " ms for thread suspend\n";
       }
     }
     // We know for sure that the thread is suspended at this point.