Move app finalization in D8 to finalizeApplication method
Change-Id: Ie3ecce92a53229d0aef7a00fb32d8614551abb2b
diff --git a/src/main/java/com/android/tools/r8/D8.java b/src/main/java/com/android/tools/r8/D8.java
index 34f4de6..3887ee7 100644
--- a/src/main/java/com/android/tools/r8/D8.java
+++ b/src/main/java/com/android/tools/r8/D8.java
@@ -337,31 +337,13 @@
timing.end();
}
- timing.time("Finalize synthetics", () -> finalizeApplication(appView, executor, timing));
-
- timing.time(
- "Horizontal merger",
- () ->
- HorizontalClassMerger.createForD8ClassMerging(appView)
- .runIfNecessary(executor, timing));
-
- timing.time(
- "Signature rewriter",
- () ->
- new GenericSignatureRewriter(appView)
- .runForD8(appView.appInfo().classes(), executor));
-
- timing.time(
- "Kotlin metadata rewriter", () -> new KotlinMetadataRewriter(appView).runForD8(executor));
+ finalizeApplication(appView, executor, timing);
timing.end(); // post-converter
if (options.isGeneratingClassFiles()) {
new CfApplicationWriter(appView, marker).write(options.getClassFileConsumer(), inputApp);
} else {
- if (options.apiModelingOptions().enableStubbingOfClasses) {
- new ApiReferenceStubber(appView).run(executor);
- }
new ApplicationWriter(appView, marker == null ? null : ImmutableList.copyOf(markers))
.write(executor, inputApp);
}
@@ -397,7 +379,28 @@
private static void finalizeApplication(
AppView<AppInfo> appView, ExecutorService executorService, Timing timing)
throws ExecutionException {
- SyntheticFinalization.finalize(appView, timing, executorService);
+ timing.time(
+ "Finalize synthetics",
+ () -> SyntheticFinalization.finalize(appView, timing, executorService));
+
+ timing.time(
+ "Horizontal merger",
+ () ->
+ HorizontalClassMerger.createForD8ClassMerging(appView)
+ .runIfNecessary(executorService, timing));
+
+ timing.time(
+ "Signature rewriter",
+ () ->
+ new GenericSignatureRewriter(appView)
+ .runForD8(appView.appInfo().classes(), executorService));
+
+ timing.time(
+ "Kotlin metadata rewriter",
+ () -> new KotlinMetadataRewriter(appView).runForD8(executorService));
+
+ timing.time(
+ "Api reference stubber", () -> new ApiReferenceStubber(appView).run(executorService));
}
private static DexApplication rewriteNonDexInputs(
diff --git a/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java b/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java
index 3e59e50..492e61a 100644
--- a/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java
+++ b/src/main/java/com/android/tools/r8/dex/ApplicationWriter.java
@@ -163,10 +163,7 @@
}
public ApplicationWriter(AppView<?> appView, List<Marker> markers) {
- this(
- appView,
- markers,
- null);
+ this(appView, markers, null);
}
public ApplicationWriter(