summaryrefslogtreecommitdiff
path: root/openjdkjvmti/transform.cc
diff options
context:
space:
mode:
author Victor Hsieh <victorhsieh@google.com> 2021-09-10 11:17:55 -0700
committer Victor Hsieh <victorhsieh@google.com> 2021-09-30 15:26:00 -0700
commit6221e67f136c5d766273029b0175f42de80eaaf3 (patch)
treecff79c4e30d22acd0d6caeb60f2da2f94ca5e65a /openjdkjvmti/transform.cc
parent52f7f63d8deb64a4d24530c9ce8d53ddf67c637c (diff)
Create an abstraction for dexopt tasks
Instead of letting odrefresh building dex2oat cmdline arguments, hide the specifics of cmdline flags behind an API abstraction. The API defines the only necessary parameters for the actual dexopt task (e.g. compiling BCP extension, system server) to proceed. The introduced API is private within ART. libdexopt.so is created to contain the API and implementation. It is put under art/artd/ in the sense that the future ART services can reuse and evolve the code. This change should not have any effective change to the compilation results. Given the large size of the change, the dex2oat cmdline is purposely ordered in the same way as before. The compiled artifacts should not change at all. Also, art_odrefresh_test is no longer built for the "second" ABI. This is to make it consistent to odrefresh, so that we won't need to test unused variation and build "second" for the dependencies. Bug: 193668901 Test: 1. Revert this change, run `odrefresh --force-compile`, capture the checksum of all output files. 2. Apply this change, repeat the same step. 3. Saw all the file hashes remain the same (except for cache-info.xml where the timestamp changed). Test: atest ComposHostTestCases Test: atest odsign_e2e_tests Test: atest art_standalone_odrefresh_tests Test: art/build/apex/runtests.sh Test: lunch full-eng; m; art/build/apex/runtests.sh Test: TH Change-Id: Id418ebd142e0610a307956a846586e9c0659ae93
Diffstat (limited to 'openjdkjvmti/transform.cc')
0 files changed, 0 insertions, 0 deletions