Remove some dead code

Change-Id: I160adfc3ea491ac50b2549875bd4572ddc706540
diff --git a/src/main/java/com/android/tools/r8/BaseCommand.java b/src/main/java/com/android/tools/r8/BaseCommand.java
index a25d21c..57fc8f0 100644
--- a/src/main/java/com/android/tools/r8/BaseCommand.java
+++ b/src/main/java/com/android/tools/r8/BaseCommand.java
@@ -68,15 +68,6 @@
       this(AndroidApp.builder(), false);
     }
 
-    protected Builder(boolean ignoreDexInArchive) {
-      this(AndroidApp.builder(), ignoreDexInArchive);
-    }
-
-    // Internal constructor for testing.
-    Builder(AndroidApp app, CompilationMode mode) {
-      this(AndroidApp.builder(app), false);
-    }
-
     protected Builder(AndroidApp.Builder builder, boolean ignoreDexInArchive) {
       this.app = builder;
       app.setIgnoreDexInArchive(ignoreDexInArchive);
diff --git a/src/main/java/com/android/tools/r8/D8.java b/src/main/java/com/android/tools/r8/D8.java
index 4806485..a5213c5 100644
--- a/src/main/java/com/android/tools/r8/D8.java
+++ b/src/main/java/com/android/tools/r8/D8.java
@@ -180,7 +180,7 @@
         return null;
       }
       Marker marker = getMarker(options);
-      new ApplicationWriter(app, appInfo, options, marker, null, NamingLens.getIdentityLens(), null)
+      new ApplicationWriter(app, options, marker, null, NamingLens.getIdentityLens(), null)
           .write(outputSink, executor);
       CompilationResult output = new CompilationResult(outputSink, app, appInfo);
       options.printWarnings();
diff --git a/src/main/java/com/android/tools/r8/R8.java b/src/main/java/com/android/tools/r8/R8.java
index 941895a..ae6326e 100644
--- a/src/main/java/com/android/tools/r8/R8.java
+++ b/src/main/java/com/android/tools/r8/R8.java
@@ -11,7 +11,6 @@
 import com.android.tools.r8.dex.Marker.Tool;
 import com.android.tools.r8.errors.CompilationError;
 import com.android.tools.r8.errors.DexOverflowException;
-import com.android.tools.r8.graph.AppInfo;
 import com.android.tools.r8.graph.AppInfoWithSubtyping;
 import com.android.tools.r8.graph.ClassAndMemberPublicizer;
 import com.android.tools.r8.graph.DexApplication;
@@ -86,8 +85,8 @@
   public static void writeApplication(
       ExecutorService executorService,
       DexApplication application,
-      AppInfo appInfo,
-      OutputSink outputSink, byte[] deadCode,
+      OutputSink outputSink,
+      byte[] deadCode,
       NamingLens namingLens,
       byte[] proguardSeedsData,
       InternalOptions options)
@@ -95,7 +94,7 @@
     try {
       Marker marker = getMarker(options);
       new ApplicationWriter(
-          application, appInfo, options, marker, deadCode, namingLens, proguardSeedsData)
+          application, options, marker, deadCode, namingLens, proguardSeedsData)
           .write(outputSink, executorService);
     } catch (IOException e) {
       throw new RuntimeException("Cannot write dex application", e);
@@ -342,7 +341,6 @@
       writeApplication(
           executorService,
           application,
-          appInfo,
           outputSink,
           application.deadCode,
           namingLens,
diff --git a/src/main/java/com/android/tools/r8/bisect/Bisect.java b/src/main/java/com/android/tools/r8/bisect/Bisect.java
index bd3a069..f99dc92 100644
--- a/src/main/java/com/android/tools/r8/bisect/Bisect.java
+++ b/src/main/java/com/android/tools/r8/bisect/Bisect.java
@@ -8,7 +8,6 @@
 import com.android.tools.r8.dex.ApplicationWriter;
 import com.android.tools.r8.errors.CompilationError;
 import com.android.tools.r8.errors.DexOverflowException;
-import com.android.tools.r8.graph.AppInfo;
 import com.android.tools.r8.graph.DexApplication;
 import com.android.tools.r8.graph.DexProgramClass;
 import com.android.tools.r8.utils.AndroidApp;
@@ -178,9 +177,8 @@
   private static void writeApp(DexApplication app, Path output, ExecutorService executor)
       throws IOException, ExecutionException, DexOverflowException {
     InternalOptions options = new InternalOptions();
-    AppInfo appInfo = new AppInfo(app);
     AndroidAppOutputSink compatSink = new AndroidAppOutputSink();
-    ApplicationWriter writer = new ApplicationWriter(app, appInfo, options, null, null, null, null);
+    ApplicationWriter writer = new ApplicationWriter(app, options, null, null, null, null);
     writer.write(compatSink, executor);
     compatSink.build().writeToDirectory(output, OutputMode.Indexed);
   }
diff --git a/src/main/java/com/android/tools/r8/bisect/BisectState.java b/src/main/java/com/android/tools/r8/bisect/BisectState.java
index a9836aa..b9359a3 100644
--- a/src/main/java/com/android/tools/r8/bisect/BisectState.java
+++ b/src/main/java/com/android/tools/r8/bisect/BisectState.java
@@ -132,10 +132,6 @@
       range.write(writer);
     }
 
-    public boolean isGood() {
-      return good;
-    }
-
     public boolean isBad() {
       return !good;
     }
diff --git a/src/main/java/com/android/tools/r8/compatdexbuilder/CompatDexBuilder.java b/src/main/java/com/android/tools/r8/compatdexbuilder/CompatDexBuilder.java
index d95de6f..93b1b24 100644
--- a/src/main/java/com/android/tools/r8/compatdexbuilder/CompatDexBuilder.java
+++ b/src/main/java/com/android/tools/r8/compatdexbuilder/CompatDexBuilder.java
@@ -31,7 +31,6 @@
   private String output = null;
   private int numberOfThreads = 8;
   private boolean noLocals = false;
-  private boolean verbose = false;
 
   public static void main(String[] args)
       throws IOException, InterruptedException, ExecutionException {
@@ -73,9 +72,6 @@
         case "--help":
           // Ignore
           break;
-        case "--verbose":
-          verbose = true;
-          break;
         case "--nolocals":
           noLocals = true;
           break;
diff --git a/src/main/java/com/android/tools/r8/compatdx/CompatDx.java b/src/main/java/com/android/tools/r8/compatdx/CompatDx.java
index 7da21b9..2789252 100644
--- a/src/main/java/com/android/tools/r8/compatdx/CompatDx.java
+++ b/src/main/java/com/android/tools/r8/compatdx/CompatDx.java
@@ -120,20 +120,6 @@
       }
     }
 
-    // Exception thrown on options parse error.
-    private static class DxParseError extends DxUsageMessage {
-      private final OptionParser parser;
-
-      private DxParseError(OptionParser parser) {
-        this.parser = parser;
-      }
-
-      @Override
-      public void printHelpOn(PrintStream sink) throws IOException {
-        parser.printHelpOn(sink);
-      }
-    }
-
     // Parsing specification.
     private static class Spec {
       final OptionParser parser;
diff --git a/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java b/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java
index 945632f..385d75d 100644
--- a/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java
+++ b/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java
@@ -6,7 +6,6 @@
 import com.android.tools.r8.ApiLevelException;
 import com.android.tools.r8.OutputSink;
 import com.android.tools.r8.errors.DexOverflowException;
-import com.android.tools.r8.graph.AppInfo;
 import com.android.tools.r8.graph.DexAnnotation;
 import com.android.tools.r8.graph.DexAnnotationDirectory;
 import com.android.tools.r8.graph.DexAnnotationSet;
@@ -44,7 +43,6 @@
 public class ApplicationWriter {
 
   public final DexApplication application;
-  public final AppInfo appInfo;
   public final byte[] deadCode;
   public final NamingLens namingLens;
   public final byte[] proguardSeedsData;
@@ -110,7 +108,6 @@
 
   public ApplicationWriter(
       DexApplication application,
-      AppInfo appInfo,
       InternalOptions options,
       Marker marker,
       byte[] deadCode,
@@ -118,7 +115,6 @@
       byte[] proguardSeedsData) {
     assert application != null;
     this.application = application;
-    this.appInfo = appInfo;
     assert options != null;
     this.options = options;
     this.markerString = (marker == null)
@@ -254,7 +250,7 @@
 
   private byte[] writeDexFile(ObjectToOffsetMapping mapping)
       throws ApiLevelException {
-    FileWriter fileWriter = new FileWriter(mapping, application, appInfo, options, namingLens);
+    FileWriter fileWriter = new FileWriter(mapping, application, options, namingLens);
     // Collect the non-fixed sections.
     fileWriter.collect();
     // Generate and write the bytes.
diff --git a/src/main/java/com/android/tools/r8/dex/FileWriter.java b/src/main/java/com/android/tools/r8/dex/FileWriter.java
index 020580f..3459aaf 100644
--- a/src/main/java/com/android/tools/r8/dex/FileWriter.java
+++ b/src/main/java/com/android/tools/r8/dex/FileWriter.java
@@ -8,7 +8,6 @@
 import com.android.tools.r8.ApiLevelException;
 import com.android.tools.r8.code.Instruction;
 import com.android.tools.r8.errors.CompilationError;
-import com.android.tools.r8.graph.AppInfo;
 import com.android.tools.r8.graph.Descriptor;
 import com.android.tools.r8.graph.DexAnnotation;
 import com.android.tools.r8.graph.DexAnnotationDirectory;
@@ -78,7 +77,6 @@
 
   private final ObjectToOffsetMapping mapping;
   private final DexApplication application;
-  private final AppInfo appInfo;
   private final InternalOptions options;
   private final NamingLens namingLens;
   private final DexOutputBuffer dest = new DexOutputBuffer();
@@ -87,12 +85,10 @@
   public FileWriter(
       ObjectToOffsetMapping mapping,
       DexApplication application,
-      AppInfo appinfo,
       InternalOptions options,
       NamingLens namingLens) {
     this.mapping = mapping;
     this.application = application;
-    this.appInfo = appinfo;
     this.options = options;
     this.namingLens = namingLens;
     this.mixedSectionOffsets = new MixedSectionOffsets();
diff --git a/src/main/java/com/android/tools/r8/dex/VirtualFile.java b/src/main/java/com/android/tools/r8/dex/VirtualFile.java
index 6890147..5408676 100644
--- a/src/main/java/com/android/tools/r8/dex/VirtualFile.java
+++ b/src/main/java/com/android/tools/r8/dex/VirtualFile.java
@@ -614,10 +614,6 @@
           && types.isEmpty() && strings.isEmpty();
     }
 
-    int getNumberOfStrings() {
-      return strings.size() + base.getNumberOfStrings();
-    }
-
     int getNumberOfClasses() {
       return classes.size() + base.classes.size();
     }
diff --git a/src/main/java/com/android/tools/r8/graph/DexEncodedMethod.java b/src/main/java/com/android/tools/r8/graph/DexEncodedMethod.java
index 3552cf7..99325f9 100644
--- a/src/main/java/com/android/tools/r8/graph/DexEncodedMethod.java
+++ b/src/main/java/com/android/tools/r8/graph/DexEncodedMethod.java
@@ -275,9 +275,8 @@
   public void setCode(
       IRCode ir,
       RegisterAllocator registerAllocator,
-      DexItemFactory dexItemFactory,
       InternalOptions options) {
-    final DexBuilder builder = new DexBuilder(ir, registerAllocator, dexItemFactory, options);
+    final DexBuilder builder = new DexBuilder(ir, registerAllocator, options);
     code = builder.build(method.getArity());
   }
 
@@ -690,18 +689,6 @@
       this.method = method;
     }
 
-    public void setAccessFlags(DexAccessFlags accessFlags) {
-      this.accessFlags = accessFlags;
-    }
-
-    public void setAnnotations(DexAnnotationSet annotations) {
-      this.annotations = annotations;
-    }
-
-    public void setParameterAnnotations(DexAnnotationSetRefList parameterAnnotations) {
-      this.parameterAnnotations = parameterAnnotations;
-    }
-
     public void setCode(Code code) {
       this.code = code;
     }
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/DexBuilder.java b/src/main/java/com/android/tools/r8/ir/conversion/DexBuilder.java
index f6a860d..9c8ed1c 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/DexBuilder.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/DexBuilder.java
@@ -83,8 +83,6 @@
   // The register allocator providing register assignments for the code to build.
   private final RegisterAllocator registerAllocator;
 
-  private final DexItemFactory dexItemFactory;
-
   private final InternalOptions options;
 
   // List of information about switch payloads that have to be created at the end of the
@@ -118,14 +116,11 @@
   public DexBuilder(
       IRCode ir,
       RegisterAllocator registerAllocator,
-      DexItemFactory dexItemFactory,
       InternalOptions options) {
     assert ir != null;
     assert registerAllocator != null;
-    assert dexItemFactory != null;
     this.ir = ir;
     this.registerAllocator = registerAllocator;
-    this.dexItemFactory = dexItemFactory;
     this.options = options;
   }
 
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 b8324d9..063bee1 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
@@ -410,7 +410,7 @@
     }
     assert code.isConsistentSSA();
     RegisterAllocator registerAllocator = performRegisterAllocation(code, method);
-    method.setCode(code, registerAllocator, appInfo.dexItemFactory, options);
+    method.setCode(code, registerAllocator, options);
     if (Log.ENABLED) {
       Log.debug(getClass(), "Resulting dex code for %s:\n%s",
           method.toSourceString(), logCode(options, method));
@@ -584,7 +584,7 @@
 
     // Perform register allocation.
     RegisterAllocator registerAllocator = performRegisterAllocation(code, method);
-    method.setCode(code, registerAllocator, appInfo.dexItemFactory, options);
+    method.setCode(code, registerAllocator, options);
     updateHighestSortingStrings(method);
     if (Log.ENABLED) {
       Log.debug(getClass(), "Resulting dex code for %s:\n%s",
diff --git a/src/main/java/com/android/tools/r8/utils/VersionProperties.java b/src/main/java/com/android/tools/r8/utils/VersionProperties.java
index c2253de..57aea8b 100644
--- a/src/main/java/com/android/tools/r8/utils/VersionProperties.java
+++ b/src/main/java/com/android/tools/r8/utils/VersionProperties.java
@@ -13,7 +13,6 @@
  * A class describing version properties.
  */
 public class VersionProperties {
-  private static final int VERSION_CODE = 1;
 
   private static final String VERSION_CODE_KEY = "version-file.version.code";
   private static final String SHA_KEY = "version.sha";
diff --git a/src/test/java/com/android/tools/r8/dex/SharedClassWritingTest.java b/src/test/java/com/android/tools/r8/dex/SharedClassWritingTest.java
index 38cca7e..d765174 100644
--- a/src/test/java/com/android/tools/r8/dex/SharedClassWritingTest.java
+++ b/src/test/java/com/android/tools/r8/dex/SharedClassWritingTest.java
@@ -8,7 +8,6 @@
 import com.android.tools.r8.code.ReturnVoid;
 import com.android.tools.r8.errors.DexOverflowException;
 import com.android.tools.r8.errors.Unreachable;
-import com.android.tools.r8.graph.AppInfo;
 import com.android.tools.r8.graph.DexAccessFlags;
 import com.android.tools.r8.graph.DexAnnotationSet;
 import com.android.tools.r8.graph.DexAnnotationSetRefList;
@@ -124,7 +123,7 @@
 
     InternalOptions options = new InternalOptions(dexItemFactory);
     options.outputMode = OutputMode.FilePerInputClass;
-    ApplicationWriter writer = new ApplicationWriter(application, new AppInfo(application),
+    ApplicationWriter writer = new ApplicationWriter(application,
         options, null, null, NamingLens.getIdentityLens(), null);
     ExecutorService executorService = ThreadUtils.getExecutorService(options);
     CollectInfoOutputSink sink = new CollectInfoOutputSink();
diff --git a/src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java b/src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java
index eb87524..6962f97 100644
--- a/src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java
+++ b/src/test/java/com/android/tools/r8/jasmin/JasminTestBase.java
@@ -12,7 +12,6 @@
 import com.android.tools.r8.ToolHelper.ProcessResult;
 import com.android.tools.r8.dex.ApplicationReader;
 import com.android.tools.r8.errors.DexOverflowException;
-import com.android.tools.r8.graph.AppInfo;
 import com.android.tools.r8.graph.DexApplication;
 import com.android.tools.r8.graph.DexEncodedMethod;
 import com.android.tools.r8.jasmin.JasminBuilder.ClassBuilder;
@@ -95,12 +94,10 @@
       throws Exception {
     DexApplication app = builder.read();
     app = process(app, options);
-    AppInfo info = new AppInfo(app);
     AndroidAppOutputSink compatSink = new AndroidAppOutputSink();
     R8.writeApplication(
         Executors.newSingleThreadExecutor(),
         app,
-        info,
         compatSink,
         null,
         NamingLens.getIdentityLens(),
@@ -187,13 +184,11 @@
 
   public AndroidApp writeDex(DexApplication application, InternalOptions options)
       throws DexOverflowException, IOException {
-    AppInfo appInfo = new AppInfo(application);
     try {
       AndroidAppOutputSink compatSink = new AndroidAppOutputSink();
       R8.writeApplication(
           Executors.newSingleThreadExecutor(),
           application,
-          appInfo,
           compatSink,
           null,
           NamingLens.getIdentityLens(),
diff --git a/src/test/java/com/android/tools/r8/maindexlist/MainDexListTests.java b/src/test/java/com/android/tools/r8/maindexlist/MainDexListTests.java
index 4e58b9f..a358e26 100644
--- a/src/test/java/com/android/tools/r8/maindexlist/MainDexListTests.java
+++ b/src/test/java/com/android/tools/r8/maindexlist/MainDexListTests.java
@@ -594,7 +594,7 @@
                 code);
         IRCode ir = code.buildIR(method, options);
         RegisterAllocator allocator = new LinearScanRegisterAllocator(ir, options);
-        method.setCode(ir, allocator, factory, options);
+        method.setCode(ir, allocator, options);
         directMethods[i] = method;
       }
       builder.addProgramClass(
@@ -613,9 +613,8 @@
               DexEncodedMethod.EMPTY_ARRAY));
     }
     DirectMappedDexApplication application = builder.build().toDirect();
-    AppInfoWithSubtyping appInfo = new AppInfoWithSubtyping(application);
     ApplicationWriter writer = new ApplicationWriter(
-        application, appInfo, options, null, null, NamingLens.getIdentityLens(), null);
+        application, options, null, null, NamingLens.getIdentityLens(), null);
     ExecutorService executor = ThreadUtils.getExecutorService(options);
     AndroidAppOutputSink compatSink = new AndroidAppOutputSink();
     try {
diff --git a/src/test/java/com/android/tools/r8/smali/SmaliTestBase.java b/src/test/java/com/android/tools/r8/smali/SmaliTestBase.java
index ddab789..2d2f887 100644
--- a/src/test/java/com/android/tools/r8/smali/SmaliTestBase.java
+++ b/src/test/java/com/android/tools/r8/smali/SmaliTestBase.java
@@ -669,13 +669,11 @@
 
   public AndroidApp writeDex(DexApplication application, InternalOptions options)
       throws DexOverflowException {
-    AppInfo appInfo = new AppInfo(application);
     try {
       AndroidAppOutputSink compatSink = new AndroidAppOutputSink();
       R8.writeApplication(
           Executors.newSingleThreadExecutor(),
           application,
-          appInfo,
           compatSink,
           null,
           NamingLens.getIdentityLens(),
diff --git a/src/test/java/com/android/tools/r8/utils/Smali.java b/src/test/java/com/android/tools/r8/utils/Smali.java
index f6e5c44..d432532 100644
--- a/src/test/java/com/android/tools/r8/utils/Smali.java
+++ b/src/test/java/com/android/tools/r8/utils/Smali.java
@@ -105,7 +105,7 @@
       DexApplication dexApp = new ApplicationReader(
           app, options, new Timing("smali")).read(executor);
       ApplicationWriter writer = new ApplicationWriter(
-          dexApp, null, options, null, null, NamingLens.getIdentityLens(), null);
+          dexApp, options, null, null, NamingLens.getIdentityLens(), null);
       SingleFileSink sink = new SingleFileSink();
       writer.write(sink, executor);
       return sink.contents;