Enable ListIterationRewriter in tests by default
Bug: b/145280859
Change-Id: I37c8578a34392d44ec6b475ffc49b05c6bce84d1
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/B369670481.java b/src/test/java/com/android/tools/r8/ir/optimize/B369670481.java
deleted file mode 100644
index 9eb062c..0000000
--- a/src/test/java/com/android/tools/r8/ir/optimize/B369670481.java
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright (c) 2024, the R8 project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-package com.android.tools.r8.ir.optimize;
-
-import com.android.tools.r8.TestBase;
-import com.android.tools.r8.TestParameters;
-import com.android.tools.r8.TestParametersCollection;
-import java.util.ArrayList;
-import java.util.ConcurrentModificationException;
-import java.util.Iterator;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.junit.runners.Parameterized;
-import org.junit.runners.Parameterized.Parameter;
-import org.junit.runners.Parameterized.Parameters;
-
-@RunWith(Parameterized.class)
-public class B369670481 extends TestBase {
-
- @Parameter(0)
- public TestParameters parameters;
-
- @Parameters(name = "{0}")
- public static TestParametersCollection data() {
- return getTestParameters().withAllRuntimesAndApiLevels().build();
- }
-
- @Test
- public void testJvm() throws Exception {
- parameters.assumeJvmTestParameters();
- testForJvm(parameters)
- .addInnerClasses(getClass())
- .run(parameters.getRuntime(), Main.class)
- .assertFailureWithErrorThatThrows(ConcurrentModificationException.class);
- }
-
- @Test
- public void testD8() throws Exception {
- parameters.assumeDexRuntime();
- testForD8(parameters.getBackend())
- .addInnerClasses(getClass())
- .setMinApi(parameters)
- .compile()
- .run(parameters.getRuntime(), Main.class)
- .applyIf(
- parameters.isCfRuntime(),
- rr -> rr.assertFailureWithErrorThatThrows(ConcurrentModificationException.class),
- rr -> rr.assertSuccessWithOutputLines("2"));
- }
-
- @Test
- public void testR8() throws Exception {
- testForR8(parameters.getBackend())
- .addInnerClasses(getClass())
- .addKeepMainRule(Main.class)
- .setMinApi(parameters)
- .compile()
- .run(parameters.getRuntime(), Main.class)
- .applyIf(
- parameters.isCfRuntime(),
- rr -> rr.assertFailureWithErrorThatThrows(ConcurrentModificationException.class),
- rr -> rr.assertSuccessWithOutputLines("2"));
- }
-
- static class Main {
-
- public static void main(String[] strArr) {
- ArrayList<Integer> numbers = new ArrayList<>();
- numbers.add(10);
- numbers.add(20);
- numbers.add(40);
- Iterator<Integer> iterator = numbers.iterator();
- while (iterator.hasNext()) {
- if (iterator.next() == 40) {
- numbers.remove(2);
- }
- }
- System.out.println(numbers.size());
- }
- }
-}
diff --git a/src/test/java/com/android/tools/r8/optimize/listiteration/ListIterationRewriterTest.java b/src/test/java/com/android/tools/r8/optimize/listiteration/ListIterationRewriterTest.java
index 811ff2b..96e2020 100644
--- a/src/test/java/com/android/tools/r8/optimize/listiteration/ListIterationRewriterTest.java
+++ b/src/test/java/com/android/tools/r8/optimize/listiteration/ListIterationRewriterTest.java
@@ -557,7 +557,6 @@
testForR8(parameters.getBackend())
.setMinApi(parameters)
- .addOptionsModification(o -> o.testing.listIterationRewritingEnabled = true)
.addProgramClassesAndInnerClasses(classes)
.addProgramClasses(RewritesMain.class, TestCase.class)
.addKeepMainRule(RewritesMain.class)
@@ -632,7 +631,6 @@
.setMinApi(parameters)
.addOptionsModification(
o -> {
- o.testing.listIterationRewritingEnabled = true;
// Ensure tests do not pass due to the optimization being disabled.
o.testing.listIterationRewritingRewriteCustomIterators = true;
})
@@ -654,7 +652,6 @@
public void testCustomIteratorThatDisablesOptimization() throws Exception {
testForR8(parameters.getBackend())
.setMinApi(parameters)
- .addOptionsModification(o -> o.testing.listIterationRewritingEnabled = true)
.addProgramClassesAndInnerClasses(CustomArrayListWithIterator.class)
.addKeepMainRule(CustomArrayListWithIterator.class)
.compile()
diff --git a/src/test/testbase/java/com/android/tools/r8/TestCompilerBuilder.java b/src/test/testbase/java/com/android/tools/r8/TestCompilerBuilder.java
index c9cc10d..2a9697a 100644
--- a/src/test/testbase/java/com/android/tools/r8/TestCompilerBuilder.java
+++ b/src/test/testbase/java/com/android/tools/r8/TestCompilerBuilder.java
@@ -64,6 +64,7 @@
options.testing.enableTestAssertions = true;
options.testing.allowUnusedDontWarnRules = false;
options.testing.allowUnnecessaryDontWarnWildcards = false;
+ options.testing.listIterationRewritingEnabled = true;
options.horizontalClassMergerOptions().enable();
options.horizontalClassMergerOptions().setEnableInterfaceMerging();
options