Handle missing fields in static initializer rewriting

When the static initializer rewriting found a put on a static field
on its own class, it was assumed, that the field was also actually
defined. However, that is not necessarily the case, and that case is now
handled.

Bug: 62524153
Change-Id: I9346fb275fb703ee3b6134fa1257ee2e37be8452
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java b/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java
index 8ea7b32..7cb186f 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/CodeRewriter.java
@@ -995,6 +995,10 @@
       for (StaticPut put : dominatingPuts.values()) {
         DexField field = put.getField();
         DexEncodedField encodedField = appInfo.definitionFor(field);
+        if (encodedField == null) {
+          // See b/67468748.
+          continue;
+        }
         if (field.type == dexItemFactory.stringType) {
           if (put.inValue().isConstant()) {
             if (put.inValue().isConstNumber()) {