summaryrefslogtreecommitdiff
path: root/compiler/optimizing
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2024-10-15 07:33:57 +0000
committer VladimĂ­r Marko <vmarko@google.com> 2024-10-15 10:03:24 +0000
commitf2d6bfd7d6b36366ece4a7dea15e66a6e5970615 (patch)
treeb2760a92a0c0a6ceac50d9f00fe7be4045d40a03 /compiler/optimizing
parentb544a1017753bfef7b91a2ea3024ffbde6cd5bb9 (diff)
verifier: Do not resolve types in other class loaders.
Remove performance optimizations introduced in fc0e94bed3f88ed7e50854fd8dfaf5dcb345250f StringPiece clean up. https://android-review.googlesource.com/103969 (the first is not available in AOSP code review but it can be seen with `git log` in a checked out ART repository). These optimizations allowed the return type to be resolved in the resolved method's class loader which may differ from the class loader of the class being verified. We do not do that for arguments, so we should not do that for return type either. Similarly, clean up resolved field's type retrieval. Note that `ClassLinker::ValidateSuperClassDescriptors()` checks for some mismatches during class initialization but it only checks virtual and interface methods within the class hierarchy and not for every invoke (and it does not check direct methods at all). Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Change-Id: I3b4313ac6cca5071f94709bb1bde50a6a253d18d
Diffstat (limited to 'compiler/optimizing')
0 files changed, 0 insertions, 0 deletions