DesugaredLibraryRetargeter renaming
Make sure the finalization methods are named ensureXXX
since they may be called multiple times and that is
supported and working.
Change-Id: I7cd5dfbc23a1cb662f9278b9c76e8bef48bd4717
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/ClassConverter.java b/src/main/java/com/android/tools/r8/ir/conversion/ClassConverter.java
index 83e0ff5..6d43482 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/ClassConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/ClassConverter.java
@@ -107,7 +107,7 @@
assert instructionDesugaringEventConsumer.verifyNothingToFinalize();
}
- converter.finalizeDesugaredLibraryRetargeting(instructionDesugaringEventConsumer);
+ converter.ensureDesugaredLibraryRetargetingFinalized(instructionDesugaringEventConsumer);
assert instructionDesugaringEventConsumer.verifyNothingToFinalize();
classes = deferred;
diff --git a/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java b/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
index a9e34e2..44bcdad 100644
--- a/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
+++ b/src/main/java/com/android/tools/r8/ir/conversion/IRConverter.java
@@ -372,10 +372,10 @@
D8NestBasedAccessDesugaring::clearNestAttributes);
}
- public void finalizeDesugaredLibraryRetargeting(
+ public void ensureDesugaredLibraryRetargetingFinalized(
D8CfInstructionDesugaringEventConsumer instructionDesugaringEventConsumer) {
instructionDesugaring.withDesugaredLibraryRetargeter(
- retargeter -> retargeter.finalizeDesugaring(instructionDesugaringEventConsumer));
+ retargeter -> retargeter.ensureDesugaringFinalized(instructionDesugaringEventConsumer));
}
private void staticizeClasses(
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java b/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java
index eb354b0..ff9e1f2 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/DesugaredLibraryRetargeter.java
@@ -519,8 +519,8 @@
}
}
- public void finalizeDesugaring(DesugaredLibraryRetargeterEventConsumer eventConsumer) {
- new EmulatedDispatchTreeFixer().fixApp(eventConsumer);
+ public void ensureDesugaringFinalized(DesugaredLibraryRetargeterEventConsumer eventConsumer) {
+ new EmulatedDispatchTreeFixer().ensureAppFixed(eventConsumer);
}
private void rewriteType(DexType type) {
@@ -669,7 +669,7 @@
public void synthesizeRetargetClasses(IRConverter converter, ExecutorService executorService)
throws ExecutionException {
assert appView.enableWholeProgramOptimizations();
- new EmulatedDispatchTreeFixer().fixApp(null);
+ new EmulatedDispatchTreeFixer().ensureAppFixed(null);
converter.processMethodsConcurrently(forwardingMethods, executorService);
}
@@ -678,15 +678,15 @@
// synthesize the interfaces and emulated dispatch classes in the desugared library.
class EmulatedDispatchTreeFixer {
- void fixApp(DesugaredLibraryRetargeterEventConsumer eventConsumer) {
+ void ensureAppFixed(DesugaredLibraryRetargeterEventConsumer eventConsumer) {
if (appView.options().isDesugaredLibraryCompilation()) {
- synthesizeEmulatedDispatchMethods(eventConsumer);
+ ensureEmulatedDispatchMethodsSynthesized(eventConsumer);
} else {
- addInterfacesAndForwardingMethods(eventConsumer);
+ ensureInterfacesAndForwardingMethodsSynthesized(eventConsumer);
}
}
- private void addInterfacesAndForwardingMethods(
+ private void ensureInterfacesAndForwardingMethodsSynthesized(
DesugaredLibraryRetargeterEventConsumer eventConsumer) {
assert !appView.options().isDesugaredLibraryCompilation();
Map<DexType, List<DexClassAndMethod>> map = Maps.newIdentityHashMap();
@@ -708,7 +708,7 @@
map.forEach(
(type, methods) -> {
if (inherit(superclass.asLibraryClass(), type, emulatedDispatchMethods)) {
- addInterfacesAndForwardingMethods(eventConsumer, clazz, methods);
+ ensureInterfacesAndForwardingMethodsSynthesized(eventConsumer, clazz, methods);
}
});
}
@@ -735,7 +735,7 @@
return false;
}
- private void addInterfacesAndForwardingMethods(
+ private void ensureInterfacesAndForwardingMethodsSynthesized(
DesugaredLibraryRetargeterEventConsumer eventConsumer,
DexProgramClass clazz,
List<DexClassAndMethod> methods) {
@@ -775,7 +775,7 @@
target, clazz, forwardMethod, appView.dexItemFactory());
}
- private void synthesizeEmulatedDispatchMethods(
+ private void ensureEmulatedDispatchMethodsSynthesized(
DesugaredLibraryRetargeterEventConsumer eventConsumer) {
assert appView.options().isDesugaredLibraryCompilation();
if (emulatedDispatchMethods.isEmpty()) {