ART: Fix compile-time-init fail
It is possible that a class that isn't itself marked as an image class and would be skipped for compile-time-initialization by the compiler driver is initialized when initializing a second class that is an image class. If the second class only depended on the first class during initialization, e.g., to read field values, the compiler driver may discard the class object (not reachable from image classes), but record the oat class status as initialized (as it has been). In that case we miss the initialization when we load the class at runtime. Ensure that all initialized classes with a class initializer are considered image classes and retained. Bug: 19323020 Change-Id: I4e537f328d9a4ea23ed5ff7166d532b8855f7acd
Loading
Please sign in to comment