Move class merger behind a flag.
BUG=
R=ager@google.com
Change-Id: Ib9c7949c3ff6cb522e9a8a10f3810695a4dcafee
diff --git a/src/main/java/com/android/tools/r8/R8.java b/src/main/java/com/android/tools/r8/R8.java
index a4cd4db..cd92f2d 100644
--- a/src/main/java/com/android/tools/r8/R8.java
+++ b/src/main/java/com/android/tools/r8/R8.java
@@ -248,7 +248,7 @@
// No-op until class merger is added.
graphLense = new MemberRebindingAnalysis(appInfo.withLiveness(), graphLense).run();
// Class merging requires inlining.
- if (options.inlineAccessors) {
+ if (!options.skipClassMerging && options.inlineAccessors) {
timing.begin("ClassMerger");
graphLense = new SimpleClassMerger(application, appInfo.withLiveness(), graphLense,
timing).run();
diff --git a/src/main/java/com/android/tools/r8/utils/InternalOptions.java b/src/main/java/com/android/tools/r8/utils/InternalOptions.java
index d3b80e3..1fd72f8 100644
--- a/src/main/java/com/android/tools/r8/utils/InternalOptions.java
+++ b/src/main/java/com/android/tools/r8/utils/InternalOptions.java
@@ -33,6 +33,7 @@
// Skipping optimizations.
public boolean skipDebugInfoOpt = false;
public boolean skipDebugLineNumberOpt = false;
+ public boolean skipClassMerging = true;
public boolean lazyClasspathLoading = false;
public boolean lazyLibraryLoading = false;