Subzero: Improve the output with the --timing-focus=xxx option.

Makes sure the percentages represent only the function(s) focused on, and not with respect to the total translation time across all functions.

Reset the timings between functions so that --timing-focus=* gives reasonable numbers.

Also, adds a timer for the live range construction phase.

BUG= none
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/640713003
diff --git a/src/IceTimerTree.h b/src/IceTimerTree.h
index 289ea2d..1f14582 100644
--- a/src/IceTimerTree.h
+++ b/src/IceTimerTree.h
@@ -52,15 +52,17 @@
   };
   TimerStack(const IceString &Name);
   TimerIdT getTimerID(const IceString &Name);
+  void setName(const IceString &NewName) { Name = NewName; }
   void push(TimerIdT ID);
   void pop(TimerIdT ID);
+  void reset();
   void dump(Ostream &Str, bool DumpCumulative);
 
 private:
   void update();
   static double timestamp();
-  const IceString Name;
-  const double FirstTimestamp;
+  IceString Name;
+  double FirstTimestamp;
   double LastTimestamp;
   uint64_t StateChangeCount;
   // IDsIndex maps a symbolic timer name to its integer ID.