Remove unused main-tread timing from IRConverter.

Change-Id: I9b346eeaef33617efc0a23dc3d8ced22e63e388f
diff --git a/src/main/java/com/android/tools/r8/R8.java b/src/main/java/com/android/tools/r8/R8.java
index 41ea658..376ea79 100644
--- a/src/main/java/com/android/tools/r8/R8.java
+++ b/src/main/java/com/android/tools/r8/R8.java
@@ -650,7 +650,7 @@
             appView.protoShrinker().enumLiteProtoShrinker.verifyDeadEnumLiteMapsAreDead();
           }
 
-          IRConverter converter = new IRConverter(appView, timing);
+          IRConverter converter = new IRConverter(appView);
 
           // If proto shrinking is enabled, we need to reprocess every dynamicMethod(). This ensures
           // that proto fields that have been removed by the second round of tree shaking are also
diff --git a/src/main/java/com/android/tools/r8/experimental/startup/instrumentation/StartupInstrumentation.java b/src/main/java/com/android/tools/r8/experimental/startup/instrumentation/StartupInstrumentation.java
index 72908ca..6e9c218 100644
--- a/src/main/java/com/android/tools/r8/experimental/startup/instrumentation/StartupInstrumentation.java
+++ b/src/main/java/com/android/tools/r8/experimental/startup/instrumentation/StartupInstrumentation.java
@@ -57,7 +57,7 @@
 
   private StartupInstrumentation(AppView<AppInfo> appView) {
     this.appView = appView;
-    this.converter = new IRConverter(appView, Timing.empty());
+    this.converter = new IRConverter(appView);
     this.dexItemFactory = appView.dexItemFactory();
     this.options = appView.options();
     this.references = new StartupInstrumentationReferences(dexItemFactory);
diff --git a/src/main/java/com/android/tools/r8/graph/AssemblyWriter.java b/src/main/java/com/android/tools/r8/graph/AssemblyWriter.java
index 03a4ce6..53ebcee 100644
--- a/src/main/java/com/android/tools/r8/graph/AssemblyWriter.java
+++ b/src/main/java/com/android/tools/r8/graph/AssemblyWriter.java
@@ -174,7 +174,7 @@
   }
 
   private void writeIR(ProgramMethod method) {
-    IRConverter converter = new IRConverter(appInfo, timing);
+    IRConverter converter = new IRConverter(appInfo);
     MethodProcessorEventConsumer eventConsumer = MethodProcessorEventConsumer.empty();
     OneTimeMethodProcessor methodProcessor =
         OneTimeMethodProcessor.create(
diff --git a/src/main/java/com/android/tools/r8/horizontalclassmerging/code/SyntheticInitializerConverter.java b/src/main/java/com/android/tools/r8/horizontalclassmerging/code/SyntheticInitializerConverter.java
index 1872754..93572c6 100644
--- a/src/main/java/com/android/tools/r8/horizontalclassmerging/code/SyntheticInitializerConverter.java
+++ b/src/main/java/com/android/tools/r8/horizontalclassmerging/code/SyntheticInitializerConverter.java
@@ -59,7 +59,7 @@
 
   public void convertClassInitializers(ExecutorService executorService) throws ExecutionException {
     if (!classInitializers.isEmpty()) {
-      IRConverter converter = new IRConverter(createAppViewForConversion(), Timing.empty());
+      IRConverter converter = new IRConverter(createAppViewForConversion());
       ThreadUtils.processItems(
           classInitializers, method -> processMethod(method, converter), executorService);
     }
@@ -68,7 +68,7 @@
   public void convertInstanceInitializers(ExecutorService executorService)
       throws ExecutionException {
     if (!instanceInitializers.isEmpty()) {
-      IRConverter converter = new IRConverter(createAppViewForConversion(), Timing.empty());
+      IRConverter converter = new IRConverter(createAppViewForConversion());
       ThreadUtils.processItems(
           instanceInitializers,
           clazz -> processInstanceInitializers(clazz, converter),
diff --git a/src/main/java/com/android/tools/r8/ir/analysis/proto/GeneratedMessageLiteBuilderShrinker.java b/src/main/java/com/android/tools/r8/ir/analysis/proto/GeneratedMessageLiteBuilderShrinker.java
index b5eec8c..2ff901b 100644
--- a/src/main/java/com/android/tools/r8/ir/analysis/proto/GeneratedMessageLiteBuilderShrinker.java
+++ b/src/main/java/com/android/tools/r8/ir/analysis/proto/GeneratedMessageLiteBuilderShrinker.java
@@ -195,7 +195,7 @@
     }
     timing.begin("Remove dead builder references");
     AppInfoWithLiveness appInfo = appView.appInfo();
-    IRConverter converter = new IRConverter(appView, Timing.empty());
+    IRConverter converter = new IRConverter(appView);
     ThreadUtils.processMap(
         builders,
         (builder, dynamicMethod) -> {
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java b/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
index c2917b8..7901b8e 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
@@ -96,7 +96,6 @@
 
   public final AppView<?> appView;
 
-  protected final Timing timing;
   public final Outliner outliner;
   private final ClassInitializerDefaultsOptimization classInitializerDefaultsOptimization;
   protected final CfInstructionDesugaringCollection instructionDesugaring;
@@ -148,11 +147,9 @@
    * The argument `appView` is used to determine if whole program optimizations are allowed or not
    * (i.e., whether we are running R8). See {@link AppView#enableWholeProgramOptimizations()}.
    */
-  public IRConverter(AppView<?> appView, Timing timing) {
+  public IRConverter(AppView<?> appView) {
     assert appView.options() != null;
     assert appView.options().programConsumer != null;
-    assert timing != null;
-    this.timing = timing;
     this.appView = appView;
     this.options = appView.options();
     this.codeRewriter = new CodeRewriter(appView);
@@ -290,8 +287,8 @@
             : null;
   }
 
-  public IRConverter(AppInfo appInfo, Timing timing) {
-    this(AppView.createForD8(appInfo), timing);
+  public IRConverter(AppInfo appInfo) {
+    this(AppView.createForD8(appInfo));
   }
 
   public Inliner getInliner() {
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/PrimaryD8L8IRConverter.java b/src/main/java/com/android/tools/r8/ir/conversion/PrimaryD8L8IRConverter.java
index b2959f2..cf8e52d 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/PrimaryD8L8IRConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/PrimaryD8L8IRConverter.java
@@ -45,8 +45,11 @@
 
 public class PrimaryD8L8IRConverter extends IRConverter {
 
+  private final Timing timing;
+
   public PrimaryD8L8IRConverter(AppView<AppInfo> appView, Timing timing) {
-    super(appView, timing);
+    super(appView);
+    this.timing = timing;
   }
 
   public void convert(AppView<AppInfo> appView, ExecutorService executorService)
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/PrimaryR8IRConverter.java b/src/main/java/com/android/tools/r8/ir/conversion/PrimaryR8IRConverter.java
index 1ad9a82..0ad28d4 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/PrimaryR8IRConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/PrimaryR8IRConverter.java
@@ -26,8 +26,11 @@
 
 public class PrimaryR8IRConverter extends IRConverter {
 
+  private final Timing timing;
+
   public PrimaryR8IRConverter(AppView<? extends AppInfoWithClassHierarchy> appView, Timing timing) {
-    super(appView, timing);
+    super(appView);
+    this.timing = timing;
   }
 
   public void optimize(AppView<AppInfoWithLiveness> appView, ExecutorService executorService)
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java
index d8a62a0..0c1c56f 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java
@@ -45,7 +45,7 @@
 
   private RecordFieldValuesRewriter(AppView<AppInfoWithLiveness> appView) {
     this.appView = appView;
-    irConverter = new IRConverter(appView, Timing.empty());
+    irConverter = new IRConverter(appView);
   }
 
   // Called after final tree shaking, prune and minify field names and field values.
diff --git a/src/test/java/com/android/tools/r8/ir/IrInjectionTestBase.java b/src/test/java/com/android/tools/r8/ir/IrInjectionTestBase.java
index d11c68e..0d23c77 100644
--- a/src/test/java/com/android/tools/r8/ir/IrInjectionTestBase.java
+++ b/src/test/java/com/android/tools/r8/ir/IrInjectionTestBase.java
@@ -101,7 +101,7 @@
 
     public String run() throws IOException {
       Timing timing = Timing.empty();
-      IRConverter converter = new IRConverter(appView, timing);
+      IRConverter converter = new IRConverter(appView);
       converter.replaceCodeForTesting(code);
       AndroidApp app = writeDex();
       return runOnArtRaw(app, DEFAULT_MAIN_CLASS_NAME).stdout;