Remove recordModeling flag
Was always true with no flags to turn it off.
Bug: b/293592205
Change-Id: Ib159bc29f79be361205d341c06d23af1d73c4bfb
diff --git a/src/main/java/com/android/tools/r8/R8.java b/src/main/java/com/android/tools/r8/R8.java
index b8489e1..3b492ed 100644
--- a/src/main/java/com/android/tools/r8/R8.java
+++ b/src/main/java/com/android/tools/r8/R8.java
@@ -765,7 +765,6 @@
appView.appInfo().notifyMinifierFinished();
if (!options.isMinifying()
- && appView.options().testing.enableRecordModeling
&& appView.appInfo().app().getFlags().hasReadRecordReferenceFromProgramClass()) {
new Minifier(appView.withLiveness())
.replaceDexItemBasedConstString(executorService, timing);
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordCfToCfRewriter.java b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordCfToCfRewriter.java
index d1803d3..14c854b 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordCfToCfRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordCfToCfRewriter.java
@@ -31,9 +31,7 @@
private final AppView<?> appView;
public static RecordCfToCfRewriter create(AppView<?> appView) {
- if (appView.enableWholeProgramOptimizations()
- && appView.options().isGeneratingClassFiles()
- && appView.options().testing.enableRecordModeling) {
+ if (appView.enableWholeProgramOptimizations() && appView.options().isGeneratingClassFiles()) {
return new RecordCfToCfRewriter(appView);
}
return null;
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordDesugaring.java b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordDesugaring.java
index 5cd5230..cd31a7b 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordDesugaring.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordDesugaring.java
@@ -395,8 +395,7 @@
ArrayList<CfInstruction> instructions = new ArrayList<>();
instructions.add(new CfInvoke(Opcodes.INVOKESPECIAL, getFieldsAsObjects, false));
instructions.add(new CfConstClass(recordInvokeDynamic.getRecordType(), true));
- if (appView.options().testing.enableRecordModeling
- && appView.enableWholeProgramOptimizations()) {
+ if (appView.enableWholeProgramOptimizations()) {
instructions.add(
new CfDexItemBasedConstString(
recordInvokeDynamic.getRecordType(),
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java
index 394241a..40b217e 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/records/RecordFieldValuesRewriter.java
@@ -36,9 +36,7 @@
private final IRConverter irConverter;
public static RecordFieldValuesRewriter create(AppView<AppInfoWithLiveness> appView) {
- if (appView.enableWholeProgramOptimizations()
- && appView.options().isGeneratingDex()
- && appView.options().testing.enableRecordModeling) {
+ if (appView.enableWholeProgramOptimizations() && appView.options().isGeneratingDex()) {
return new RecordFieldValuesRewriter(appView);
}
return null;
diff --git a/src/main/java/com/android/tools/r8/ir/synthetic/RecordCfCodeProvider.java b/src/main/java/com/android/tools/r8/ir/synthetic/RecordCfCodeProvider.java
index 5abcb38..533a69d 100644
--- a/src/main/java/com/android/tools/r8/ir/synthetic/RecordCfCodeProvider.java
+++ b/src/main/java/com/android/tools/r8/ir/synthetic/RecordCfCodeProvider.java
@@ -76,7 +76,6 @@
// 1 : the array to return
// 2+: spills
return appView.enableWholeProgramOptimizations()
- && appView.options().testing.enableRecordModeling
? generateCfCodeWithRecordModeling()
: generateCfCodeWithArray();
}
diff --git a/src/main/java/com/android/tools/r8/shaking/DefaultEnqueuerUseRegistry.java b/src/main/java/com/android/tools/r8/shaking/DefaultEnqueuerUseRegistry.java
index f7ffc42..744fdac 100644
--- a/src/main/java/com/android/tools/r8/shaking/DefaultEnqueuerUseRegistry.java
+++ b/src/main/java/com/android/tools/r8/shaking/DefaultEnqueuerUseRegistry.java
@@ -193,8 +193,7 @@
@Override
public void registerCallSite(DexCallSite callSite) {
super.registerCallSiteExceptBootstrapArgs(callSite);
- if (isInvokeDynamicOnRecord(callSite, appView, getContext())
- && appView.options().testing.enableRecordModeling) {
+ if (isInvokeDynamicOnRecord(callSite, appView, getContext())) {
registerRecordCallSiteBootstrapArgs(callSite);
} else {
super.registerCallSiteBootstrapArgs(callSite, 0, callSite.bootstrapArgs.size());
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 0360999..ca8079e 100644
--- a/src/main/java/com/android/tools/r8/utils/InternalOptions.java
+++ b/src/main/java/com/android/tools/r8/utils/InternalOptions.java
@@ -2377,10 +2377,6 @@
public boolean testEnableTestAssertions = false;
public boolean keepMetadataInR8IfNotRewritten = true;
- // If set, pruned record fields are not used in hashCode/equals/toString and toString prints
- // minified field names instead of original field names.
- public boolean enableRecordModeling = true;
-
// Flag to allow processing of resources in D8. A data resource consumer still needs to be
// specified.
public boolean enableD8ResourcesPassThrough = false;