Age | Commit message (Collapse) | Author |
|
Make it easier to calculate the IMT index without an actual
`ArtMethod` in preparation for a significant refactoring of
`ClassLinker::LoadClass()`.
Update documentation of `ArtMethod::imt_index_` which is
actually unused for abstract non-interface methods.
Also reorder code in `ClassLinker` without any modification
to make it easier to compare the differences in the upcoming
refactoring.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Bug: 329196666
Change-Id: Ic71ff323ea92325958d59536e83ab70d057b94df
|
|
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Change-Id: I7e974edeb643dd96dfed6908424730f11dabbff0
|
|
Bug: 260881207
Test: presubmit
Test: abtd app_compat_drm
Test: abtd app_compat_top_100
Test: abtd app_compat_banking
Change-Id: I017173510501982607b7688b55ee27a0389abb3d
|
|
This reverts commit f1d06474baa2f7c00761db39099b89ddab71bbe4.
Bug: 177554973
Bug: 112676029
Test: test.py
Test: 815-invokeinterface-default
Test: enable text-to-speech on device, no crash
Reason for revert: Fixed issue with recursive default methods
Change-Id: I2fb9336adb6c4fc920f39aa19bfe7f0a92ce059a
|
|
This reverts commit c0d392be9172c4c60b3e81b0123489ec3036c401.
Bug: 177554973
Reason for revert: Fix crash when enabling 'Select to Speak'
Change-Id: If2865cc1dfc11e6bd27ed533da10f53521e3e613
|
|
- Remove bitwise negation of imt_index: the class linker already always
initializes the imt_index.
- Special case the imt index of default methods: to simplify invocation
in nterp, mask the method_index to create the imt index.
- Add arm64, arm, x64 support in nterp.
Test: test.py
Bug: 112676029
Change-Id: I815a4a4ec5c219921ab4ed1a20b02586aab19a46
|
|
Separating out the structs from DexFile allows them to be forward-
declared, which reduces the need to include the dex_file header.
Bug: 119869270
Test: m
Change-Id: I32dde5a632884bca7435cd584b4a81883de2e7b4
|
|
This reverts commit 787784f9effb126b5d0d3dc97d544c4a477b5daf.
Reason for revert: Bot configuration issue.
Change-Id: I6a10bb4a9571f89c7e4dd095f9157e830a44e2de
Bug: 22322814
Test: make -j 50 checkbuild
|
|
This reverts commit b40b7e73469339a6b667b4a2e2b8690112a74dc9.
Reason for revert: on device libdexfile.so missing
Change-Id: I9bd61a98bef870400580e8c991cb061d3f57fa72
|
|
Remove libdexfile's dependency on utils.cc and move utf.cc into
/dex. Remove libdexfile's constituent sources from libart and
use libdexfile wherever libart is. Also remove some ART-specific
interfaces. Libdexfile's tests remain to be converted, plus
moving the files to a new directory peer to runtime/.
Bug: 22322814
Test: make -j 50 test-art-host
Change-Id: Ifaf695216e4a0e43d3aa377984d933f7a2a243c2
|
|
Move all the DexFile related source to a common subdirectory dex/ of
runtime.
Bug: 71361973
Test: make -j 50 test-art-host
Change-Id: I59e984ed660b93e0776556308be3d653722f5223
|
|
Use a hash scheme based on the name. This keeps IMT slots stable
when dex tables change.
This incurs a severe performance penalty for computing the slot.
Measurements on host degraded from 30ns to an average of 85mus.
However, calls in compiled code will not incur this overhead.
Added a test comparing similar interfaces in similar dex files.
Bug: 31594153
Test: test-art-host
Change-Id: Ibb86679ee94bec561984ea25826e56b1a7964cd0
|
|
Move IMT Conflict Table to its own file. Move IMT index computation to
ImTable.
In preparation for code using this independent of specific ArtMethods.
Bug: 31594153
Test: m test-art-host
Change-Id: Ifd6e304bb86724c5284984c4655c43d3af357f84
|