This repository has been archived by the owner on Jun 1, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 212
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Delay dex-to-dex compilation until Optimizing is done.
This fixes a race between inlining in the Optimizing backend and dex-to-dex quickening where the Optimizing can read the non-quickened opcode and then the quickened field index or vtable index and look up the wrong field or method. Even if we such tearing of the dex instruction does not happen, the possible reordering of dex-to-dex and Optimizing compilation makes the final oat file non-deterministic. Also, remove VerificationResults::RemoveVerifiedMethod() as we have only the Optimizing backend now and as such it was dead code and would have interfered with this change. Bug: 29043547 Bug: 29089975 (cherry picked from commit 492a7fa6df3b197a24099a50f5abf624164f3842) Change-Id: I1337b772dc69318393845a790e5f6d38aa3de60f
- Loading branch information
Showing
5 changed files
with
146 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters