Soft pin classes with kept constructors

Change-Id: I7de3032e19ebfe2f089cc2c9f7bd11e5953ca362
diff --git a/src/main/java/com/android/tools/r8/shaking/Enqueuer.java b/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
index d4fd18a..1766f40 100644
--- a/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
+++ b/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
@@ -2462,6 +2462,7 @@
   private void enqueueHolderWithDependentInstanceConstructor(
       ProgramMethod instanceInitializer, Set<ProguardKeepRuleBase> reasons) {
     DexProgramClass holder = instanceInitializer.getHolder();
+    applyMinimumKeepInfoWhenLive(holder, KeepClassInfo.newEmptyJoiner().disallowOptimization());
     enqueueKeepRuleInstantiatedType(holder, reasons, instanceInitializer.getDefinition());
   }