Disable state pruning when using legacy modifier

Change-Id: I6fadbf7afb9b00d93f54c09197001f33b1d42603
diff --git a/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java b/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java
index 5b459c3..8f6b03f 100644
--- a/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java
+++ b/src/main/java/com/android/tools/r8/shaking/AppInfoWithLiveness.java
@@ -497,18 +497,21 @@
   @Override
   public void notifyHorizontalClassMergerFinished(
       HorizontalClassMerger.Mode horizontalClassMergerMode) {
-    if (horizontalClassMergerMode.isInitial()) {
-      methodAccessInfoCollection.destroy();
+    if (horizontalClassMergerMode.isInitial()
+        && !options().getAccessModifierOptions().isLegacyAccessModifierEnabled()) {
+      getMethodAccessInfoCollection().destroy();
     }
   }
 
   public void notifyMemberRebindingFinished(AppView<AppInfoWithLiveness> appView) {
     getFieldAccessInfoCollection().restrictToProgram(appView);
-    getMethodAccessInfoCollection().destroyNonDirectNonSuperInvokes();
+    if (!options().getAccessModifierOptions().isLegacyAccessModifierEnabled()) {
+      getMethodAccessInfoCollection().destroyNonDirectNonSuperInvokes();
+    }
   }
 
   public void notifyRedundantBridgeRemoverFinished(boolean initial) {
-    if (initial) {
+    if (initial && !options().getAccessModifierOptions().isLegacyAccessModifierEnabled()) {
       getMethodAccessInfoCollection().destroySuperInvokes();
     }
   }
@@ -516,7 +519,9 @@
   @Override
   public void notifyMinifierFinished() {
     liveMethods = ThrowingSet.get();
-    methodAccessInfoCollection.destroy();
+    if (!options().getAccessModifierOptions().isLegacyAccessModifierEnabled()) {
+      getMethodAccessInfoCollection().destroy();
+    }
   }
 
   public void notifyTreePrunerFinished(Enqueuer.Mode mode) {