Don't lookup method handle writes if we don't have access info The other usages of access info is already doing null checks Bug: 252930366 Change-Id: I373caa7c4bf3f7b514ece01e02aaa9c6d2727c36
diff --git a/src/main/java/com/android/tools/r8/ir/analysis/fieldaccess/FieldAssignmentTracker.java b/src/main/java/com/android/tools/r8/ir/analysis/fieldaccess/FieldAssignmentTracker.java index d05ea55..0db5825 100644 --- a/src/main/java/com/android/tools/r8/ir/analysis/fieldaccess/FieldAssignmentTracker.java +++ b/src/main/java/com/android/tools/r8/ir/analysis/fieldaccess/FieldAssignmentTracker.java
@@ -131,7 +131,8 @@ field -> { FieldAccessInfo accessInfo = fieldAccessInfos.get(field.getReference()); KeepFieldInfo keepInfo = appView.getKeepInfo(field); - if (keepInfo.isPinned(appView.options()) || accessInfo.isWrittenFromMethodHandle()) { + if (keepInfo.isPinned(appView.options()) + || (accessInfo != null && accessInfo.isWrittenFromMethodHandle())) { fieldStates.put(field.getDefinition(), FieldState.unknown()); } });