Revert "Model System for not having static initializer side effect"

This reverts commit f035ff7e7fdda9179cdbec0b5e08b075d8989402.

Change-Id: I9cd9c258a07b0b0778c97f4fb4293924b77d5aed
diff --git a/src/main/java/com/android/tools/r8/graph/DexItemFactory.java b/src/main/java/com/android/tools/r8/graph/DexItemFactory.java
index 4879d46..d72df8c 100644
--- a/src/main/java/com/android/tools/r8/graph/DexItemFactory.java
+++ b/src/main/java/com/android/tools/r8/graph/DexItemFactory.java
@@ -883,7 +883,6 @@
           boxedShortType,
           boxedVoidType,
           enumType,
-          javaLangSystemType,
           npeType,
           objectType,
           stringBufferType,
diff --git a/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java b/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java
index b3af78a..aa156db 100644
--- a/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/R8KotlinAccessorTest.java
@@ -9,6 +9,7 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.junit.Assume.assumeTrue;
 
 import com.android.tools.r8.KotlinTestParameters;
 import com.android.tools.r8.R8TestBuilder;
@@ -80,6 +81,8 @@
       KotlinTestParameters kotlinParameters,
       boolean allowAccessModification) {
     super(parameters, kotlinParameters, allowAccessModification);
+    // TODO(b/207736382): Figure out why we cannot inline/merge.
+    assumeTrue(kotlinParameters.getCompiler().isNot(KOTLINC_1_6_0));
   }
 
   @Test
@@ -371,23 +374,19 @@
               }
 
               ClassSubject classSubject = checkClassIsKept(inspector, testedClass.getClassName());
-
-              // For kotlin 1.6 we completely remove the field and accessors. We are unable to
-              // remove the entire class because we are not reprocessing TestMain.main.
               String propertyName = "property";
               if (kotlinParameters.isNewerThanOrEqualTo(KOTLINC_1_6_0)) {
                 FieldSubject field = classSubject.field(JAVA_LANG_STRING, propertyName);
                 assertFalse(field.isPresent());
                 return;
               }
-
               FieldSubject fieldSubject =
                   checkFieldIsKept(classSubject, JAVA_LANG_STRING, propertyName);
               assertFalse(fieldSubject.getField().accessFlags.isStatic());
               assertTrue(fieldSubject.getField().accessFlags.isPrivate());
 
               AccessorKind accessorKind =
-                  kotlinc.getCompilerVersion().isGreaterThanOrEqualTo(KOTLINC_1_5_0)
+                  kotlinc.getCompilerVersion() == KOTLINC_1_5_0
                       ? AccessorKind.FROM_INNER
                       : AccessorKind.FROM_LAMBDA;
               MemberNaming.MethodSignature getterAccessor =
diff --git a/src/test/java/com/android/tools/r8/kotlin/R8KotlinPropertiesTest.java b/src/test/java/com/android/tools/r8/kotlin/R8KotlinPropertiesTest.java
index 5a60483..66da10d 100644
--- a/src/test/java/com/android/tools/r8/kotlin/R8KotlinPropertiesTest.java
+++ b/src/test/java/com/android/tools/r8/kotlin/R8KotlinPropertiesTest.java
@@ -4,7 +4,9 @@
 
 package com.android.tools.r8.kotlin;
 
+import static com.android.tools.r8.KotlinCompilerTool.KotlinCompilerVersion.KOTLINC_1_6_0;
 import static org.junit.Assert.assertTrue;
+import static org.junit.Assume.assumeTrue;
 
 import com.android.tools.r8.KotlinTestParameters;
 import com.android.tools.r8.TestParameters;
@@ -107,6 +109,8 @@
       KotlinTestParameters kotlinParameters,
       boolean allowAccessModification) {
     super(parameters, kotlinParameters, allowAccessModification);
+    // TODO(b/207736382): Figure out why we cannot inline/merge.
+    assumeTrue(kotlinParameters.getCompiler().isNot(KOTLINC_1_6_0));
   }
 
   @Test