Change JIT timings to collect thread CPU time.

Test: m
Test: timing_logger_test.cc
Change-Id: I26fd86e66c4dd967dc62b629f6b6cde97b71ed13
diff --git a/runtime/base/timing_logger_test.cc b/runtime/base/timing_logger_test.cc
index 35a73d0..770d2c0 100644
--- a/runtime/base/timing_logger_test.cc
+++ b/runtime/base/timing_logger_test.cc
@@ -158,4 +158,21 @@
   EXPECT_LE(timings[idx_innerinnersplit1].GetTime(), timings[idx_innerinnersplit2].GetTime());
 }
 
+TEST_F(TimingLoggerTest, ThreadCpuAndMonotonic) {
+  TimingLogger mon_logger("Scoped", true, false, TimingLogger::TimingKind::kMonotonic);
+  TimingLogger cpu_logger("Scoped", true, false, TimingLogger::TimingKind::kThreadCpu);
+  mon_logger.StartTiming("MON");
+  cpu_logger.StartTiming("CPU");
+
+  sleep(2);
+
+  cpu_logger.EndTiming();
+  mon_logger.EndTiming();
+  uint64_t mon_timing = mon_logger.GetTimings()[1].GetTime() - mon_logger.GetTimings()[0].GetTime();
+  uint64_t cpu_timing = cpu_logger.GetTimings()[1].GetTime() - cpu_logger.GetTimings()[0].GetTime();
+  EXPECT_LT(cpu_timing, MsToNs(1000u));
+  EXPECT_GT(mon_timing, MsToNs(1000u));
+  EXPECT_LT(cpu_timing, mon_timing);
+}
+
 }  // namespace art