diff options
| author | 2021-06-08 16:00:05 +0100 | |
|---|---|---|
| committer | 2021-06-10 13:47:14 +0000 | |
| commit | e300c4e4eabe3388b730efe35561e54f1c306710 (patch) | |
| tree | 1866d5772e2c3643f30aa32b7bf0c02cec2e4c18 /libnativeloader/library_namespaces.cpp | |
| parent | f761f5887918375b842e4cc62ed9cbe7521c8444 (diff) | |
Faster Class::FindField().
Change `Class::FindField()` to take dex cache and type index
arguments instead of strings and optimize it similarly to
`Class::FindClassMethod()`, namely search by indexes when
possible (except when searching interfaces where we only add
a TODO comment for now) and avoid `strlen()` calls for ASCII
names and type descriptors.
Update `ClassLinker::FindResolvedFieldJLS()` to pass the new
arguments and replace all other `Class::FindField()` calls
with more direct calls as we know the classes where those
fields are defined.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Bug: 181943478
Change-Id: Iba798819043eb1b53b0dbc41ef8d7fd1c5d2164d
Diffstat (limited to 'libnativeloader/library_namespaces.cpp')
0 files changed, 0 insertions, 0 deletions